def test_render(self): key = Key(name=fake.word(), soft_type='INTEGER', size=1024) key.save(self.user) slot = Slot(key=key, value=fake.pyint()) slot.save(self.user) resp = slot.render() self.assertEqual(resp, str(slot.value))
def test_get_attrs(self): key = Key(name=fake.word(), soft_type='INTEGER', size=1024) key.save(self.user) slot = Slot(key=key, value=fake.pyint()) slot.save(self.user) attrs = slot.get_attrs() self.assertEqual(attrs.get('type'), 'text/plain')
def submit(self, node, user, update_row=None): """ Insert a record for the node. :param node: Node to which we're adding a slot. :param user: User doing the adding. :return: List of saved slots. """ _saved = [] row = node.row_count for (data_key, data_value) in self.data.items(): if data_key not in self.ext_keys: continue doc_key = self.ext_keys[data_key] # t = doc_key.soft_type.fetch() if update_row is not None: slot = Slot.objects(key=doc_key, row=update_row).first() slot.value = data_value slot.save() continue slot = Slot(key=doc_key, row=row, value=data_value) logger.debug("INSERT: saving {}".format(slot.to_json())) slot.save(user) _saved.append(slot) return _saved
def test_prepare(self): """ Integer requires no preparation. """ key = Key(name=fake.word(), soft_type='INTEGER', size=1024) key.save(self.user) slot = Slot(key=key, value=fake.pyint()) slot.save(self.user) prepared = slot.prepare() self.assertEqual(int(prepared), slot.value)
def setUp(self): super(TestIntType, self).setUp() self.user = self.admin key = Key(name=fake.word(), soft_type='INTEGER', size=1024) key.save(self.user) self.valid_slots = ( Slot(key=key, value=fake.pyint()), Slot(key=key, value=str(0 - fake.pyint())), Slot(key=key, value='+' + str(fake.pyint())), ) for s in self.valid_slots: s.save(self.user) self.invalid_slots = ( Slot(key=key, value='123.456'), Slot(key=key, value={'dictionary': 1}), ) for s in self.invalid_slots: s.save(self.user)
def test_api_respond(self): """ API responds correctly. """ client = app.test_client() key = Key(name=fake.word(), soft_type='INTEGER', size=1024) key.save(self.user) slot = Slot(key=key, value=fake.pyint()) slot.save(self.user) resp = client.get('/slot/render/{}'.format(slot.id)) logger.debug('test_api_response body={}'.format(resp.data)) self.assertEqual(resp.data, str(slot.value)) self.assertEqual(resp.status_code, 200)