def test_update_site(self): group1 = Group("group1") group2 = Group("group2") group3 = Group("group3") group1.create() group2.create() group3.create() site = Site(self.target_url) res1 = site.create() site_id = res1.json()["site"]["id"] # Verify that the new site has no plans and no groups self.assertEqual(res1.json()["site"]['plans'], site.plans) self.assertEqual(res1.json()["site"]['groups'], site.groups) # Update the site, add a plan and group res2 = site.update(site_id, groups=[group1.group_name], plans=[self.TEST_PLAN["name"]]) # Verify that the site has these new settings res3 = site.get(site_id) self.assertEqual(res3.json()["site"]['plans'], [self.TEST_PLAN["name"]]) self.assertEqual(res3.json()["site"]["groups"], [group1.group_name]) self.assertEqual(res3.json()["site"]['url'], site.url) # Update the site, replace plans and groups res4 = site.update(site_id, groups=[group2.group_name, group3.group_name]) # bug #144 res5 = site.get(site_id) self.assertEqual(res5.json()["site"]['plans'], [self.TEST_PLAN["name"]]) self.assertEqual(set(res5.json()["site"]['groups']), set([group2.group_name, group3.group_name])) self.assertEqual(res5.json()["site"]['url'], site.url)
def test_send_invite_with_groups_and_sites(self): sender = User(self.email, name="Bob") sender.create() recipient = User(self.random_email(), name="Alice") recipient.invite() # create the invitation invite = Invite(sender.email, recipient.email) res = invite.create() invite_id = res.json()['invite']['id'] # create a site in minion site = Site(self.target_url) res2 = site.create() site_id = res2.json()["site"]["id"] # Uncomment the following checks when #297 is resolved. # create a group in minion group = Group(self.group_name, sites=[site.url], users=[recipient.email]) res3 = group.create() # site should exists in group and recipient should also be in the same group res4 = group.get() self.assertEqual(res4.json()['group']['users'], [recipient.email,]) res5 = site.get(site_id) self.assertEqual(res5.json()["site"]["groups"], [group.group_name]) # finally, if we query recipient's user object, user should be in # the group and have access to a site. res6 = recipient.get() self.assertEqual(res6.json()["user"]["sites"], [site.url]) self.assertEqual(res6.json()["user"]["groups"], [group.group_name])
def test_get_site(self): group = Group(self.group_name) group.create() site = Site(self.target_url, groups=[group.group_name]) res1 = site.create() site_id = res1.json()["site"]["id"] res2 = site.get(site_id) self.assertEqual(res2.json()["success"], True) self.assertEqual(res2.json()['site'], res1.json()['site'])
def test_send_invite_with_groups_and_sites(self): sender = User(self.email, name="Bob") sender.create() recipient = User(self.random_email(), name="Alice") recipient.invite() # create the invitation invite = Invite(sender.email, recipient.email) res = invite.create() invite_id = res.json()['invite']['id'] # create a site in minion site = Site(self.target_url) res2 = site.create() site_id = res2.json()["site"]["id"] # Uncomment the following checks when #297 is resolved. # create a group in minion group = Group(self.group_name, sites=[site.url], users=[recipient.email]) res3 = group.create() # site should exists in group and recipient should also be in the same group res4 = group.get() self.assertEqual(res4.json()['group']['users'], [ recipient.email, ]) res5 = site.get(site_id) self.assertEqual(res5.json()["site"]["groups"], [group.group_name]) # finally, if we query recipient's user object, user should be in # the group and have access to a site. res6 = recipient.get() self.assertEqual(res6.json()["user"]["sites"], [site.url]) self.assertEqual(res6.json()["user"]["groups"], [group.group_name])