class TeammatesResourceTest(ResourceTestCase): def setUp(self): super(TeammatesResourceTest, self).setUp() self.username = '******' self.password = '******' self.user = User.objects.create_user(self.username, '*****@*****.**', self.password) extra_data = '{"access_token": "CAAFlJJBNXLoBAM41Q2UP5W' \ 'uJXrPl1CeD9ZC2ZBgk7g412CwE584vY87k0SkbklWz0' \ 'fJayhsEvgP43EWe7B5TpOLQm2M0zKYuVYYYfuS' \ 'LMNLtCFRJPpn9nn4DXrKHxRwS8zWrBt1BZBDBbDkYl3' \ 'UiH7CTZApd5kDc8EUQMZBZBuw8OlZB' \ 'ayqCbfLMCMfZCZCLY9tMZD", "expires": null, ' \ '"id": "1087311591297294"}' self.auth = UserSocialAuth.objects.create(user=self.user, extra_data=extra_data, uid="1087311591297294", provider="facebook") self.team = Team() self.team.owner = self.user self.team.text = 'My super team' self.team.created_at = datetime.datetime.now() self.team.save() self.teammates = Teammate() self.teammates.team = self.team self.teammates.user = self.user self.teammates.save() def get_credentials(self): return self.create_basic(username=self.username, password=self.password) def test_custom_facebook_auth(self): """ Api must return team instance with teammates """ response_json = self.api_client.get( '/api/v1/teammates/1/', format='json', authentication=self.get_credentials() ) response = json.loads(response_json.content) self.assertEqual(response["id"], 1)
def test_create_new_team_in_db(self): """ Creates new team item in db """ team = Team() team.owner = self.user3 team.text = 'My super team' team.created_at = datetime.datetime.now() team.save() teammates = Teammate() teammates.team = team teammates.user = self.user3 teammates.save() all_teammates = Teammate.objects.all() self.assertEqual(len(all_teammates), 1) self.assertEqual(all_teammates[0], teammates) teammates.delete() all_teammates = Teammate.objects.all() self.assertEqual(len(all_teammates), 0)
class TeamInvitableViewTests(TestCase): def setUp(self): self.factory = RequestFactory() self.user = User.objects.create_user( username='******', email='*****@*****.**', password='******') self.user2 = User.objects.create_user(username='******', password='******') self.user2.is_superuser = True self.user2.save() self.user3 = User.objects.create_user(username='******', password='******') self.user3.is_superuser = True self.user3.save() self.team = Team() self.team.owner = self.user self.team.text = 'My super team' self.team.created_at = datetime.datetime.now() self.team.save() self.teammates = Teammate() self.teammates.team = self.team self.teammates.user = self.user3 self.teammates.save() def test_team_invitable(self): """ Returns team invitable view """ request = self.factory.get(reverse('taskmng:team_invitable')) request.user = self.user response_json = team_invitable(request) response = json.loads(response_json.content) self.assertEqual(len(response), 1) def test_teammate_add(self): """ Adds new teammate """ request = self.factory.post(reverse('taskmng:team_invitable'), {"cmd": "add", "item": json.dumps({"id": 2})}) request.user = self.user response_json = team_invitable(request) response = json.loads(response_json.content) self.assertEqual(response['result'], 'ok') def test_teammate_remove(self): """ Adds new teammate """ request = self.factory.post(reverse('taskmng:team_invitable'), {"cmd": "add", "item": json.dumps({"id": 2})}) request.user = self.user team_invitable(request) request = self.factory.post(reverse('taskmng:team_invitable'), {"cmd": "del", "tmId": 1}) request.user = self.user response_json = team_invitable(request) response = json.loads(response_json.content) self.assertEqual(response['result'], 'ok') def test_team_view_no_auth(self): """ Response status must be 302. """ request = self.factory.get(reverse('taskmng:team_invitable')) request.user = AnonymousUser() response = team_invitable(request) self.assertEqual(response.status_code, 302)