def tearDownClass(cls): fluid.login(USERNAME, PASSWORD) # create necessary tags for cls in [Person, Education, Work]: for tag in cls.TAGS: fluid.delete('/tags/test/%s' % tag) fluid.logout()
def testRoleInPerson(self): fluid.put('/values', body={'queries': [ ['fluiddb/users/username = "******"', {'test/role': {'value' : 'badass'}}]]}) rv = self.app.get('/test') self.assertEqual(200, rv.status_code) self.assertIn('badass', rv.data) fluid.delete('/values', query='fluiddb/users/username = "******"', tags=['test/role'])
def testLocalityInPerson(self): fluid.put('/values', body={'queries': [ ['fluiddb/users/username = "******"', {'test/locality': {'value' : 'New York'}}]]}) rv = self.app.get('/test') self.assertEqual(200, rv.status_code) self.assertIn('New York', rv.data) fluid.delete('/values', query='fluiddb/users/username = "******"', tags=['test/locality'])
def testStreetAddressInPerson(self): fluid.put('/values', body={'queries': [ ['fluiddb/users/username = "******"', {'test/street-address': {'value' : '123 Main St.'}}]]}) rv = self.app.get('/test') self.assertEqual(200, rv.status_code) self.assertIn('123 Main St.', rv.data) fluid.delete('/values', query='fluiddb/users/username = "******"', tags=['test/street-address'])
def testCellPhoneInPerson(self): fluid.put('/values', body={'queries': [ ['fluiddb/users/username = "******"', {'test/cell-phone': {'value' : '(123) 456-7890'}}]]}) rv = self.app.get('/test') self.assertEqual(200, rv.status_code) self.assertIn('(123) 456-7890', rv.data) fluid.delete('/values', query='fluiddb/users/username = "******"', tags=['test/cell-phone'])
def testEmailInPerson(self): fluid.put('/values', body={'queries': [ ['fluiddb/users/username = "******"', {'test/email': {'value' : '*****@*****.**'}}]]}) rv = self.app.get('/test') self.assertEqual(200, rv.status_code) self.assertIn('*****@*****.**', rv.data) fluid.delete('/values', query='fluiddb/users/username = "******"', tags=['test/email'])
def update_from_form(cls, form, user, password): uids = form.skills.data.split(',') fluid.login(user, password) fluid.post('/tags/%s' % user, {'name': 'skill', 'description': 'My skills', 'indexed': False}) fluid.delete('/values', query="has %s/skill" % user, tags=["%s/skill" % user]) for uid in uids: resp = fluid.put('/objects/%s/%s/skill' % (uid, user), None) if not resp or (resp and resp.status_code != 204): logging.warning("PUT /objects/%s/%s/skill failed!" % (uid,user)) fluid.logout()
def testEmployerRequiredForWork(self): fluid.put('/values', body={'queries': [ ['fluiddb/about = "fluidinfo"', {'test/company': {'value': 'Fluidinfo'}, 'test/title': {'value': 'Dictator'}}]]}) rv = self.app.get('/test') self.assertEqual(200, rv.status_code) self.assertNotIn('Fluidinfo', rv.data) self.assertNotIn('Dictator', rv.data) fluid.put('/about/fluidinfo/test/employer', body=None) # FIXME: this is really hacky # wait for Fluidinfo's index to update... time.sleep(5) rv = self.app.get('/test') self.assertEqual(200, rv.status_code) self.assertIn('Fluidinfo', rv.data) self.assertIn('Dictator', rv.data) fluid.delete('/values', query='fluiddb/about = "fluidinfo"', tags=['test/company', 'test/title', 'test/employer'])