def setUp(self): super(TestApplicationList, self).setUp() self.user1 = AuthUserFactory() self.user2 = AuthUserFactory() self.user1_apps = [ ApiOAuth2ApplicationFactory(owner=self.user1) for i in xrange(3) ] self.user2_apps = [ ApiOAuth2ApplicationFactory(owner=self.user2) for i in xrange(2) ] self.user1_list_url = _get_application_list_url() self.user2_list_url = _get_application_list_url() self.sample_data = { 'data': { 'type': 'applications', 'attributes': { 'name': 'A shiny new application', 'description': "It's really quite shiny", 'home_url': 'http://osf.io', 'callback_url': 'https://cos.io', 'owner': 'Value discarded', 'client_id': 'Value discarded', 'client_secret': 'Value discarded', } } }
def test_other_user_should_see_only_their_applications(self, app, url): other_user = AuthUserFactory() other_user_apps = [ ApiOAuth2ApplicationFactory(owner=other_user) for i in xrange(2) ] res = app.get(url, auth=other_user.auth) assert len(res.json['data']) == len(other_user_apps)
def setUp(self): super(TestApplicationReset, self).setUp() self.user1 = AuthUserFactory() self.user1_app = ApiOAuth2ApplicationFactory(owner=self.user1) self.user1_reset_url = _get_application_reset_route(self.user1_app) self.correct = { 'data': { 'id': self.user1_app.client_id, 'type': 'applications', 'attributes': { 'name': 'A shiny new application', 'home_url': 'http://osf.io', 'callback_url': 'https://cos.io' } } }
def test_long_description_raises_exception(self): long_desc = ('JohnJacobJingelheimerSchmidtHisNameIsMyN' * 25) + 'a' with pytest.raises(DataError): api_app = ApiOAuth2ApplicationFactory(description=long_desc) api_app.save()
def test_name_cannot_be_blank(self): with pytest.raises(ValidationError): api_app = ApiOAuth2ApplicationFactory(name='') api_app.save()
def test_invalid_callback_url_raises_exception(self): with pytest.raises(ValidationError): api_app = ApiOAuth2ApplicationFactory(callback_url='itms://itunes.apple.com/us/app/apple-store/id375380948?mt=8') api_app.save()
def test_invalid_home_url_raises_exception(self): with pytest.raises(ValidationError): api_app = ApiOAuth2ApplicationFactory(home_url='Totally not a URL') api_app.save()
def test_must_have_owner(self): with pytest.raises(ValidationError): api_app = ApiOAuth2ApplicationFactory(owner=None) api_app.save()
def setUp(self): super(TestApiOAuth2Application, self).setUp() self.api_app = ApiOAuth2ApplicationFactory()
def user_app(self, user): return ApiOAuth2ApplicationFactory(owner=user)
def setUp(self): super(TestApplicationDetail, self).setUp() self.user1 = AuthUserFactory() self.user2 = AuthUserFactory() self.user1_app = ApiOAuth2ApplicationFactory(owner=self.user1) self.user1_app_url = _get_application_detail_route(self.user1_app) self.missing_id = { 'data': { 'type': 'applications', 'attributes': { 'name': 'A shiny new application', 'home_url': 'http://osf.io', 'callback_url': 'https://cos.io' } } } self.missing_type = { 'data': { 'id': self.user1_app.client_id, 'attributes': { 'name': 'A shiny new application', 'home_url': 'http://osf.io', 'callback_url': 'https://cos.io' } } } self.incorrect_id = { 'data': { 'id': '12345', 'type': 'applications', 'attributes': { 'name': 'A shiny new application', 'home_url': 'http://osf.io', 'callback_url': 'https://cos.io' } } } self.incorrect_type = { 'data': { 'id': self.user1_app.client_id, 'type': 'Wrong type.', 'attributes': { 'name': 'A shiny new application', 'home_url': 'http://osf.io', 'callback_url': 'https://cos.io' } } } self.correct = { 'data': { 'id': self.user1_app.client_id, 'type': 'applications', 'attributes': { 'name': 'A shiny new application', 'home_url': 'http://osf.io', 'callback_url': 'https://cos.io' } } }