Exemplo n.º 1
0
    def test_load_kaylee(self):
        kl = loader.load(TestSettingsWithApps)
        self.assertIsInstance(kl.registry, MemoryNodesRegistry)

        app = kl.applications['test.1']
        self.assertEqual(app.__class__.__name__, 'TestController1')
        self.assertEqual(app.project.__class__.__name__, 'AutoTestProject')
Exemplo n.º 2
0
    def test_register_unregister(self):
        kl = loader.load(self.settings)
        node_json_config = kl.register('127.0.0.1')
        node_config = json.loads(node_json_config)
        self.assertEqual(len(node_config), 3)
        self.assertIn('node_id', node_config)
        self.assertIn('config', node_config)
        self.assertIn('applications', node_config)

        nid = NodeID(node_id = node_config['node_id'])
        self.assertIn(nid, kl.registry)
        self.assertIn(node_config['node_id'], kl.registry)

        kl.unregister(nid)
        self.assertNotIn(nid, kl.registry)
Exemplo n.º 3
0
    def test_subscribe_unsubscribe(self):
        kl = loader.load(self.settings)
        app = kl.applications['test.1']
        node_json_config = kl.register('127.0.0.1')
        node_config = json.loads(node_json_config)
        node_id = node_config['node_id']

        # test node.subscribe
        app_json_config = kl.subscribe(node_id, 'test.1')
        app_config = json.loads(app_json_config)
        self.assertEqual(app_config['test_key'], 'test_value')
        node = kl.registry[node_id]
        self.assertEqual(node.controller, app)
        self.assertTrue(0 <= (datetime.now() -
                              node.subscription_timestamp).seconds < 1)

        # test node.unsubscribe
        kl.unsubscribe(node_id)
        self.assertIsNone(node.controller)
        self.assertIsNone(node.subscription_timestamp)
        self.assertIn(node, kl.registry)
Exemplo n.º 4
0
 def test_load_settings_path(self):
     path = os.path.abspath(os.path.join(os.path.dirname(__file__),
                                         'test_settings.py'))
     kl = loader.load(path)
     self.assertIsInstance(kl, Kaylee)
Exemplo n.º 5
0
 def test_load_settings_module(self):
     test_settings = __import__('test_settings')
     kl = loader.load(test_settings)
     self.assertIsInstance(kl, Kaylee)
Exemplo n.º 6
0
 def test_load_settings_dict(self):
     # dict(Class.__dict__) wrapping: __dict__ is a dictproxy,
     kl = loader.load(dict(TestSettings.__dict__))
     self.assertIsInstance(kl, Kaylee)
Exemplo n.º 7
0
 def test_load_settings_class(self):
     kl = loader.load(TestSettings)
     self.assertIsInstance(kl, Kaylee)