def setUp(self): super(AwardProgramCertificatesTestCase, self).setUp() self.create_programs_config() self.create_credentials_config() self.student = UserFactory.create(username='******') ClientFactory.create(name='programs') ClientFactory.create(name='credentials') UserFactory.create(username=settings.CREDENTIALS_SERVICE_USERNAME) # pylint: disable=no-member
def test_get_api_client(self, mock_get_id_token): """ Ensure the function is making the right API calls based on inputs """ student = UserFactory() ClientFactory.create(name='programs') api_config = self.create_programs_config( internal_service_url='http://foo', api_version_number=99, ) mock_get_id_token.return_value = 'test-token' api_client = tasks.get_api_client(api_config, student) self.assertEqual(mock_get_id_token.call_args[0], (student, 'programs')) self.assertEqual(api_client._store['base_url'], 'http://foo/api/v99/') # pylint: disable=protected-access self.assertEqual(api_client._store['session'].auth.token, 'test-token') # pylint: disable=protected-access
def setUp(self): super(AuthenticationTest, self).setUp() user = self.user_factory.create(username=USERNAME, password=PASSWORD, email=EMAIL) self.set_user(user) self.auth_client = ClientFactory.create(client_id=CLIENT_ID, client_secret=CLIENT_SECRET) self.url = reverse('oauth2:access_token')
def setUp(self): super(AuthenticationTest, self).setUp() user = self.user_factory.create( username=USERNAME, password=PASSWORD, email=EMAIL ) self.set_user(user) self.auth_client = ClientFactory.create( client_id=CLIENT_ID, client_secret=CLIENT_SECRET ) self.url = reverse('oauth2:access_token')
def test_oauth(self): """ Verify the endpoint supports OAuth, and only allows authorization for staff users. """ user = UserFactory(is_staff=False) oauth_client = ClientFactory.create() access_token = AccessTokenFactory.create(user=user, client=oauth_client).token headers = {"HTTP_AUTHORIZATION": "Bearer " + access_token} # Non-staff users should not have access to the API response = self.client.get(self.path, **headers) self.assertEqual(response.status_code, 403) # Staff users should have access to the API user.is_staff = True user.save() # pylint: disable=no-member response = self.client.get(self.path, **headers) self.assertEqual(response.status_code, 200)
def test_oauth(self): """ Verify the endpoint supports OAuth, and only allows authorization for staff users. """ user = UserFactory(is_staff=False) oauth_client = ClientFactory.create() access_token = AccessTokenFactory.create(user=user, client=oauth_client).token headers = {'HTTP_AUTHORIZATION': 'Bearer ' + access_token} # Non-staff users should not have access to the API response = self.client.get(self.path, **headers) self.assertEqual(response.status_code, 403) # Staff users should have access to the API user.is_staff = True user.save() # pylint: disable=no-member response = self.client.get(self.path, **headers) self.assertEqual(response.status_code, 200)
def create_user_and_access_token(self): self.user = GlobalStaffFactory.create() self.oauth_client = ClientFactory.create() self.access_token = AccessTokenFactory.create( user=self.user, client=self.oauth_client).token
def create_user_and_access_token(self): self.create_user() self.oauth_client = ClientFactory.create() self.access_token = AccessTokenFactory.create(user=self.user, client=self.oauth_client).token