getting tests up top 99.8%
parent
46ac94cfac
commit
0c0b15464a
|
@ -12,7 +12,7 @@ class ControllerCommandProc
|
|||
end
|
||||
|
||||
def check_whitelist(function)
|
||||
raise "UNAUTHORIZED" unless whitelist.include?(function.downcase)
|
||||
raise "UNAUTHORIZED: #{function}" unless whitelist.include?(function.downcase)
|
||||
end
|
||||
|
||||
def process_command( cmd )
|
||||
|
|
|
@ -63,6 +63,7 @@ class HardwareInterfaceArduino
|
|||
begin
|
||||
|
||||
write_status = create_write_status(text, log, onscreen)
|
||||
|
||||
#puts @serial_port.test_serial_read
|
||||
prepare_serial_port(write_status)
|
||||
#puts @serial_port.test_serial_read
|
||||
|
@ -77,7 +78,9 @@ class HardwareInterfaceArduino
|
|||
|
||||
log_result_of_execution(write_status)
|
||||
|
||||
rescue Exception => e
|
||||
rescue => e
|
||||
#puts 'exception received'
|
||||
#puts e
|
||||
handle_execution_exception(e)
|
||||
end
|
||||
end
|
||||
|
@ -92,13 +95,11 @@ class HardwareInterfaceArduino
|
|||
end
|
||||
|
||||
def handle_execution_exception(e)
|
||||
|
||||
puts("ST: serial error\n#{e.message}\n#{e.backtrace.inspect}")
|
||||
|
||||
@bot_dbaccess.write_to_log(4,"ST: serial error\n#{e.message}\n#{e.backtrace.inspect}")
|
||||
@serial_port.rts = 1
|
||||
connect_board
|
||||
sleep 5 if @test_mode == false
|
||||
@serial_port.rts = 1
|
||||
connect_board
|
||||
sleep 5 if @test_mode == false
|
||||
end
|
||||
|
||||
def log_result_of_execution(write_status)
|
||||
|
|
|
@ -58,11 +58,12 @@ class MessageHandler
|
|||
message_obj = MessageHandlerMessage.new
|
||||
|
||||
split_message(message, message_obj)
|
||||
|
||||
log_message_obj_info(message_obj)
|
||||
send_message_obj_to_individual_handlers(message_obj)
|
||||
check_if_message_handled(message_obj)
|
||||
|
||||
rescue Exception => e
|
||||
rescue => e
|
||||
err_snd = true
|
||||
err_msg = e.message
|
||||
err_trc = e.backtrace.inspect
|
||||
|
@ -71,7 +72,7 @@ class MessageHandler
|
|||
# in case of an error, send error message as a reply
|
||||
begin
|
||||
handle_message_error(err_snd, sender, time_stamp, err_msg, err_trc)
|
||||
rescue Exception => e
|
||||
rescue => e
|
||||
puts "Error while sending error message: #{e.message}"
|
||||
end
|
||||
end
|
||||
|
@ -152,7 +153,7 @@ class MessageHandler
|
|||
def check_if_message_handled(message_obj)
|
||||
if message_obj.handled == false
|
||||
@dbaccess.write_to_log(2,'message could not be handled')
|
||||
send_error(sender, '', 'message could not be handled')
|
||||
send_error(message_obj.sender, '', 'message could not be handled')
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -42,7 +42,7 @@ class MessageHandler
|
|||
sender = ""
|
||||
time_stamp = nil
|
||||
|
||||
puts "received at #{Time.now.strftime("%Y-%m-%d %H:%M:%S")}: #{message}" if $messages_print == 1
|
||||
puts "received at #{Time.now.strftime("%Y-%m-%d %H:%M:%S")}: #{message}" if $mesh_msg_print == 1
|
||||
|
||||
err_msg = ""
|
||||
err_trc = ""
|
||||
|
@ -58,6 +58,7 @@ class MessageHandler
|
|||
message_obj = MessageHandlerMessage.new
|
||||
|
||||
split_message(message, message_obj)
|
||||
|
||||
log_message_obj_info(message_obj)
|
||||
send_message_obj_to_individual_handlers(message_obj)
|
||||
check_if_message_handled(message_obj)
|
||||
|
@ -152,7 +153,7 @@ class MessageHandler
|
|||
def check_if_message_handled(message_obj)
|
||||
if message_obj.handled == false
|
||||
@dbaccess.write_to_log(2,'message could not be handled')
|
||||
send_error(sender, '', 'message could not be handled')
|
||||
send_error(message_obj.sender, '', 'message could not be handled')
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -2,6 +2,7 @@ require 'json'
|
|||
|
||||
require_relative 'credentials'
|
||||
require_relative 'web_socket'
|
||||
|
||||
require_relative 'messagehandler.rb'
|
||||
|
||||
#require '/home/pi/ruby-socket.io-client-simple/lib/socket.io-client-simple.rb'
|
||||
|
|
|
@ -19,7 +19,7 @@ class MessagingTest
|
|||
|
||||
def send_message(devices, message_hash )
|
||||
@message = message_hash
|
||||
@devices = devices
|
||||
@device = devices
|
||||
end
|
||||
|
||||
end
|
||||
|
|
|
@ -20,7 +20,6 @@ class MessagingTest
|
|||
def send_message(devices, message_hash )
|
||||
@message = message_hash
|
||||
@devices = devices
|
||||
@socket.emit("message",{:devices => devices, :message => message_hash})
|
||||
end
|
||||
|
||||
end
|
||||
|
|
|
@ -37,6 +37,19 @@ describe HardwareInterfaceArduino do
|
|||
|
||||
end
|
||||
|
||||
it "execute_command with causing an error" do
|
||||
|
||||
$status = nil
|
||||
|
||||
@ramps.serial_port.rts = 0
|
||||
@ramps.execute_command(nil,nil,nil)
|
||||
|
||||
$status = Status.new
|
||||
|
||||
expect { @ramps }.to_not raise_error
|
||||
|
||||
end
|
||||
|
||||
it "create write status" do
|
||||
|
||||
text = rand(9999999).to_s
|
||||
|
@ -48,7 +61,6 @@ describe HardwareInterfaceArduino do
|
|||
expect(write_status.text ).to eq(text )
|
||||
expect(write_status.log ).to eq(log )
|
||||
expect(write_status.onscreen ).to eq(onscreen )
|
||||
|
||||
end
|
||||
|
||||
it "handle execution exception" do
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
require 'spec_helper'
|
||||
require './lib/messaging/messaging.rb'
|
||||
#require './lib/messaging/messaging.rb'
|
||||
require './lib/messaging/messagehandler_base.rb'
|
||||
require './lib/messaging/messagehandler_message.rb'
|
||||
|
||||
describe MessageHandlerBase do
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
require 'spec_helper'
|
||||
require './lib/messaging/messagehandler_emergencystop.rb'
|
||||
require './lib/status.rb'
|
||||
require './lib/messaging/messaging.rb'
|
||||
require './lib/messaging/messagehandler.rb'
|
||||
require './lib/messaging/messaging_test.rb'
|
||||
require './lib/messaging/messagehandler_emergencystop.rb'
|
||||
|
||||
describe MessageHandlerEmergencyStop do
|
||||
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
require 'spec_helper'
|
||||
require './lib/status.rb'
|
||||
require './lib/messaging/messaging.rb'
|
||||
#require './lib/messaging/messaging.rb'
|
||||
require './lib/messaging/messagehandler.rb'
|
||||
require './lib/messaging/messaging_test.rb'
|
||||
require './lib/messaging/messagehandler_logs.rb'
|
||||
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
require 'spec_helper'
|
||||
require './lib/status.rb'
|
||||
require './lib/messaging/messaging.rb'
|
||||
#require './lib/messaging/messaging.rb'
|
||||
require './lib/messaging/messagehandler.rb'
|
||||
require './lib/messaging/messaging_test.rb'
|
||||
require './lib/messaging/messagehandler_measurements.rb'
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
require 'spec_helper'
|
||||
require './lib/status.rb'
|
||||
require './lib/messaging/messaging.rb'
|
||||
require './lib/messaging/messagehandler.rb'
|
||||
require './lib/messaging/messaging_test.rb'
|
||||
require './lib/messaging/messagehandler_parameters.rb'
|
||||
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
require 'spec_helper'
|
||||
require './lib/status.rb'
|
||||
require './lib/messaging/messaging.rb'
|
||||
#require './lib/messaging/messaging.rb'
|
||||
#require './lib/messagehandler_base'
|
||||
require './lib/messaging/messagehandler.rb'
|
||||
require './lib/messaging/messagehandler_schedule.rb'
|
||||
require './lib/messaging/messaging_test.rb'
|
||||
|
||||
#require './lib/messagehandler_schedule'
|
||||
|
|
|
@ -1,29 +1,121 @@
|
|||
require 'spec_helper'
|
||||
require './lib/messaging/messaging.rb'
|
||||
require './lib/messaging/messaging_test.rb'
|
||||
require './lib/messaging/messagehandler.rb'
|
||||
require './lib/messaging/messagehandler_base.rb'
|
||||
require './lib/messaging/messagehandler_message.rb'
|
||||
|
||||
|
||||
describe MessageHandler do
|
||||
|
||||
|
||||
before do
|
||||
$db_write_sync = Mutex.new
|
||||
$dbaccess = DbAccess.new('development')
|
||||
@msg = MessageHandler.new
|
||||
$bot_dbaccess = DbAccess.new('development')
|
||||
$dbaccess = $bot_dbaccess
|
||||
$dbaccess.disable_log_to_screen()
|
||||
|
||||
#$status = Status.new
|
||||
|
||||
$messaging = MessagingTest.new
|
||||
$messaging.reset
|
||||
|
||||
$mesh_msg_print = 1
|
||||
|
||||
@handler = MessageHandler.new
|
||||
end
|
||||
|
||||
## messaging
|
||||
it "handle message with test message" do
|
||||
|
||||
it "test" do
|
||||
expect(1).to eq(1)
|
||||
fromUuid = rand(9999999).to_s
|
||||
message_type = 'test'
|
||||
time_stamp = Time.now.to_f.to_s
|
||||
|
||||
message =
|
||||
{
|
||||
'fromUuid' => fromUuid,
|
||||
'payload' =>
|
||||
{
|
||||
'message_type' => message_type,
|
||||
'time_stamp' => time_stamp
|
||||
}
|
||||
}
|
||||
|
||||
@handler.handle_message(message)
|
||||
|
||||
expect($messaging.message[:message_type]).to eq('error')
|
||||
end
|
||||
|
||||
# it "create new command" do
|
||||
# crop_id = rand(9999999).to_i
|
||||
# scheduled_time = Time.now
|
||||
#
|
||||
# @db.create_new_command(scheduled_time, crop_id)
|
||||
#
|
||||
# cmd = Command.where("scheduled_time = ?",scheduled_time).first
|
||||
#
|
||||
# expect(cmd.crop_id).to eq(crop_id)
|
||||
# end
|
||||
it "handle message - test error handling" do
|
||||
|
||||
fromUuid = nil
|
||||
message_type = 'test'
|
||||
time_stamp = Time.now.to_f.to_s
|
||||
|
||||
message =
|
||||
{
|
||||
'fromUuid' => fromUuid,
|
||||
'payload' => nil
|
||||
}
|
||||
|
||||
@handler.handle_message(message)
|
||||
|
||||
expect($messaging.message[:message_type]).to eq('error')
|
||||
expect($messaging.device).to eq(fromUuid)
|
||||
end
|
||||
|
||||
it "return error" do
|
||||
ret = @handler.error
|
||||
expect(ret).to eq({:error => ''})
|
||||
end
|
||||
|
||||
it "send confirmation" do
|
||||
destination = rand(9999999).to_s
|
||||
time_stamp = nil
|
||||
|
||||
@handler.send_confirmation(destination, time_stamp)
|
||||
|
||||
expect($messaging.message[:message_type]).to eq('confirmation')
|
||||
expect($messaging.device).to eq(destination)
|
||||
|
||||
end
|
||||
|
||||
it "send error" do
|
||||
destination = rand(9999999).to_s
|
||||
error = rand(9999999).to_s
|
||||
time_stamp = nil
|
||||
|
||||
@handler.send_error(destination, time_stamp, error)
|
||||
|
||||
expect($messaging.message[:message_type]).to eq('error')
|
||||
expect($messaging.device).to eq(destination)
|
||||
|
||||
end
|
||||
|
||||
it "handle message error" do
|
||||
|
||||
err_snd = true
|
||||
err_msg = rand(9999999).to_s
|
||||
err_trc = rand(9999999).to_s
|
||||
sender = rand(9999999).to_s
|
||||
time_stamp = nil
|
||||
|
||||
@handler.handle_message_error(err_snd, sender, time_stamp, err_msg, err_trc)
|
||||
|
||||
expect($messaging.message[:message_type]).to eq('error')
|
||||
expect($messaging.message[:error]).to eq(" #{err_msg} @ #{err_trc}")
|
||||
expect($messaging.device).to eq(sender)
|
||||
end
|
||||
|
||||
|
||||
|
||||
=begin
|
||||
it "hanlde message test message" do
|
||||
message = MessageHandlerMessage.new
|
||||
message.message_type = 'test'
|
||||
message.handled = false
|
||||
@handler.handle_message(message)
|
||||
expect(message.handled).to eq(true)
|
||||
end
|
||||
=end
|
||||
|
||||
end
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
require 'spec_helper'
|
||||
require './lib/status.rb'
|
||||
require './lib/messaging/messaging.rb'
|
||||
#require './lib/messaging/messaging.rb'
|
||||
require './lib/messaging/messagehandler.rb'
|
||||
require './lib/messaging/messagehandler_base.rb'
|
||||
require './lib/messaging/messagehandler_status.rb'
|
||||
require './lib/messaging/messaging_test.rb'
|
||||
|
||||
#require './lib/messagehandler_schedule'
|
||||
|
|
|
@ -0,0 +1,29 @@
|
|||
require 'spec_helper'
|
||||
require './lib/messaging/messaging.rb'
|
||||
|
||||
describe MessageHandler do
|
||||
|
||||
before do
|
||||
$db_write_sync = Mutex.new
|
||||
$dbaccess = DbAccess.new('development')
|
||||
@msg = MessageHandler.new
|
||||
end
|
||||
|
||||
## messaging
|
||||
|
||||
it "test" do
|
||||
expect(1).to eq(1)
|
||||
end
|
||||
|
||||
# it "create new command" do
|
||||
# crop_id = rand(9999999).to_i
|
||||
# scheduled_time = Time.now
|
||||
#
|
||||
# @db.create_new_command(scheduled_time, crop_id)
|
||||
#
|
||||
# cmd = Command.where("scheduled_time = ?",scheduled_time).first
|
||||
#
|
||||
# expect(cmd.crop_id).to eq(crop_id)
|
||||
# end
|
||||
|
||||
end
|
Loading…
Reference in New Issue