Add Workspaces.get_many
This commit is contained in:
parent
7d165e45d3
commit
92553f3b39
@ -47,6 +47,11 @@ class Workspaces(object):
|
||||
|
||||
return workspace
|
||||
|
||||
@classmethod
|
||||
def get_many(cls, user):
|
||||
workspaces = db.session.query(Workspace).join(WorkspaceRole).filter(WorkspaceRole.user == user).all()
|
||||
return workspaces
|
||||
|
||||
|
||||
class Projects(object):
|
||||
|
||||
|
@ -15,13 +15,14 @@ def workspace():
|
||||
|
||||
@bp.route("/workspaces")
|
||||
def workspaces():
|
||||
return render_template("workspaces.html", page=5, workspaces=Workspaces.get_many())
|
||||
workspaces = Workspaces.get_many(g.current_user)
|
||||
return render_template("workspaces.html", page=5, workspaces=workspaces)
|
||||
|
||||
|
||||
@bp.route("/workspaces/<workspace_id>/projects")
|
||||
def workspace_projects(workspace_id):
|
||||
projects = Projects.get_many(workspace_id)
|
||||
return render_template("workspace_projects.html", projects=projects)
|
||||
workspace = Workspaces.get(g.current_user, workspace_id)
|
||||
return render_template("workspace_projects.html", workspace=workspace)
|
||||
|
||||
|
||||
@bp.route("/workspaces/<workspace_id>/members")
|
||||
|
@ -54,3 +54,18 @@ def test_workspaces_get_ensures_user_is_in_workspace():
|
||||
|
||||
with pytest.raises(UnauthorizedError):
|
||||
Workspaces.get(outside_user, workspace.id)
|
||||
|
||||
|
||||
def test_workspaces_get_many_with_no_workspaces():
|
||||
workspaces = Workspaces.get_many(UserFactory.build())
|
||||
assert workspaces == []
|
||||
|
||||
|
||||
def test_workspaces_get_many_returns_a_users_workspaces():
|
||||
user = UserFactory.create()
|
||||
users_workspace = Workspaces.create(RequestFactory.create(creator=user))
|
||||
|
||||
# random workspace
|
||||
Workspaces.create(RequestFactory.create())
|
||||
|
||||
assert Workspaces.get_many(user) == [users_workspace]
|
||||
|
Loading…
x
Reference in New Issue
Block a user