def test_create_application_cache_invalidation(db, test_team): assert Application.get_by_name('bar') is None assert len(Application.get_multi_by_team(test_team.id)) == 0 assert len(Application.get_all()) == 0 Application.create('bar', test_team.id) assert Application.get_by_name('bar') is not None assert len(Application.get_multi_by_team(test_team.id)) == 1 assert len(Application.get_all()) == 1
def test_delete_application(db, test_user, test_team, test_application, test_application_auth): assert Application.get_by_name( test_application.application_name) is test_application assert Application.get_multi_by_team(test_team.id) == [test_application] assert Application.get_all() == [test_application] Application.delete(test_application.id) assert Application.get_by_name(test_application.application_name) is None assert Application.get_multi_by_team(test_team.id) == [] assert Application.get_all() == [] assert ApplicationAuth.get(test_application_auth.id) is None
def test_archive_application(db, test_user, test_team, test_application, test_application_auth): instance = Application.get_by_name(test_application.application_name) assert instance is test_application assert Application.get_multi_by_team(test_team.id) == [test_application] assert Application.get_all() == [test_application] test_application.archive() assert Application.get_by_name(test_application.application_name) is None assert Application.get_multi_by_team(test_team.id) == [] assert Application.get_all() == [] assert ApplicationAuth.find(Authority.READ, test_user.id, test_application.id) is not None
def get(self, team_name=None): """Gets the team list or application list. While ``team_name`` is specified, the application list in specified team will be responded. Otherwise, the team list will be responded. The response of team list looks like:: { "status": "SUCCESS", "message": "", "data": { "teams": [{"name": "team-1", "desc": "team-1"}, {"name": "team-2"}, "desc": "team-1"] } } And the response of application list looks like:: { "status": "SUCCESS", "message": "", "data": { "applications": ["base.foo", "base.bar"] } } :param team_name: The name of specified team. :<header Authorization: Huskar Token (See :ref:`token`) :status 404: The team with specified name is not found. :status 200: The team list or application list is responded. """ if team_name: if g.auth.is_minimal_mode: if team_name != Team.DEFAULT_NAME: abort(404, 'team "%s" does not exist' % team_name) applications = application_manifest.as_list() else: team = self._get_team_or_404(team_name) applications = Application.get_multi_by_team(team.id) applications = [x.application_name for x in applications] data = {'applications': applications} else: if g.auth.is_minimal_mode: data = {'teams': [{'name': Team.DEFAULT_NAME, 'desc': Team.DEFAULT_NAME}]} else: teams = Team.get_all() data = {'teams': [{'name': x.team_name, 'desc': x.team_desc} for x in teams]} return api_response(data)
def test_get_application_list_by_team(db, test_application, test_team): application_list = Application.get_multi_by_team(test_team.id) assert application_list == [test_application]