def test_02_manager_queue(self): # Get temporary file TMPFILE = Gio.file_new_tmp('fc_logger_spiceport_XXXXXX') path = TMPFILE[0].get_path() mgr = FleetCommander.SpicePortManager(path) PAYLOADS = ['1', '2', '3', '4', '5'] expected_data = '' for pl in PAYLOADS: mgr.submit_change("org.gnome.gsettings", pl) expected_data += json.dumps({ "ns": "org.gnome.gsettings", "data": pl }) self.assertEqual(len(PAYLOADS), len(mgr.queue)) index = 0 for elem in mgr.queue: self.assertEqual(elem["ns"], "org.gnome.gsettings") self.assertEqual(elem["data"], PAYLOADS[index]) index += 1 # Clean queue and quit mgr.give_up() self.assertEqual(len(mgr.queue), 0) self.assertEqual(mgr.timeout, 0) # Check data has been written to spiceport file data = read_file(path) self.assertEqual(expected_data, data)
def test_01_submit_change(self): # Get temporary file TMPFILE = Gio.file_new_tmp('fc_logger_spiceport_XXXXXX') path = TMPFILE[0].get_path() mgr = FleetCommander.SpicePortManager(path) PAYLOAD = '["PAYLOAD"]' expected_data = '{"ns": "org.gnome.gsettings", "data": "[\\"PAYLOAD\\"]"}' mgr.submit_change("org.gnome.gsettings", PAYLOAD) # Check change is in queue self.assertEqual(len(mgr.queue), 1) self.assertEqual(mgr.queue[0]["ns"], "org.gnome.gsettings") self.assertEqual(mgr.queue[0]["data"], PAYLOAD) # Clean queue and quit mgr.give_up() self.assertEqual(len(mgr.queue), 0) self.assertEqual(mgr.timeout, 0) # Check data has been written to spiceport file data = read_file(path) self.assertEqual(json.dumps(json.loads(expected_data)), json.dumps(json.loads(data)))