コード例 #1
0
    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)
コード例 #2
0
    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)))