def setUp(self): super(TestNodeInfoOptions, self).setUp() node_cache.add_node(self.uuid, bmc_address='1.2.3.4', mac=self.macs) self.node_info = node_cache.NodeInfo(uuid=self.uuid, started_at=3.14) session = db.get_session() with session.begin(): db.Option(uuid=self.uuid, name='foo', value='"bar"').save(session)
def set_option(self, name, value): """Set an option for a node.""" encoded = json.dumps(value) self.options[name] = value with db.ensure_transaction() as session: db.model_query(db.Option, session=session).filter_by(uuid=self.uuid, name=name).delete() db.Option(uuid=self.uuid, name=name, value=encoded).save(session)
def setUp(self): super(TestNodeCacheCleanUp, self).setUp() self.started_at = 100.0 session = db.get_session() with session.begin(): db.Node(uuid=self.uuid, started_at=self.started_at).save(session) for v in self.macs: db.Attribute(name='mac', value=v, uuid=self.uuid).save(session) db.Option(uuid=self.uuid, name='foo', value='bar').save(session)
def setUp(self): super(TestNodeInfoFinished, self).setUp() node_cache.add_node(self.uuid, istate.States.processing, bmc_address='1.2.3.4', mac=self.macs) self.node_info = node_cache.NodeInfo(uuid=self.uuid, started_at=datetime.datetime( 3, 1, 4)) session = db.get_session() with session.begin(): db.Option(uuid=self.uuid, name='foo', value='bar').save(session)
def setUp(self): super(TestNodeCacheCleanUp, self).setUp() self.started_at = datetime.datetime.utcnow() session = db.get_session() with session.begin(): db.Node(uuid=self.uuid, state=istate.States.waiting, started_at=self.started_at).save(session) for v in self.macs: db.Attribute(uuid=uuidutils.generate_uuid(), name='mac', value=v, node_uuid=self.uuid).save(session) db.Option(uuid=self.uuid, name='foo', value='bar').save(session)
def test__delete_node(self): session = db.get_session() with session.begin(): db.Node(uuid=self.node.uuid).save(session) db.Attribute(name='mac', value='11:22:11:22:11:22', uuid=self.uuid).save(session) data = {'s': 'value', 'b': True, 'i': 42} encoded = json.dumps(data) db.Option(uuid=self.uuid, name='name', value=encoded).save(session) node_cache._delete_node(self.uuid) session = db.get_session() row_node = db.model_query(db.Node).filter_by(uuid=self.uuid).first() self.assertIsNone(row_node) row_attribute = db.model_query( db.Attribute).filter_by(uuid=self.uuid).first() self.assertIsNone(row_attribute) row_option = db.model_query( db.Option).filter_by(uuid=self.uuid).first() self.assertIsNone(row_option)