Skip to content

Commit

Permalink
Add tests and fix result of collaborative filter in specific condition
Browse files Browse the repository at this point in the history
  • Loading branch information
Morlinest committed Sep 21, 2017
1 parent 62076a3 commit 19c15bb
Show file tree
Hide file tree
Showing 8 changed files with 261 additions and 51 deletions.
26 changes: 13 additions & 13 deletions integrations/api_repo_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -73,9 +73,9 @@ func TestAPISearchRepo(t *testing.T) {
expectedResults
}{
{name: "RepositoriesMax50", requestURL: "/api/v1/repos/search?limit=50", expectedResults: expectedResults{
nil: {count: 12, privacy: privacyTypePublic},
user: {count: 12, privacy: privacyTypePublic},
user2: {count: 12, privacy: privacyTypePublic}},
nil: {count: 15, privacy: privacyTypePublic},
user: {count: 15, privacy: privacyTypePublic},
user2: {count: 15, privacy: privacyTypePublic}},
},
{name: "RepositoriesMax10", requestURL: "/api/v1/repos/search?limit=10", expectedResults: expectedResults{
nil: {count: 10, privacy: privacyTypePublic},
Expand All @@ -88,24 +88,24 @@ func TestAPISearchRepo(t *testing.T) {
user2: {count: 10, privacy: privacyTypePublic}},
},
{name: "RepositoriesByName", requestURL: fmt.Sprintf("/api/v1/repos/search?q=%s", "big_test_"), expectedResults: expectedResults{
nil: {count: 4, repoName: "big_test_", privacy: privacyTypePublic},
user: {count: 4, repoName: "big_test_", privacy: privacyTypePublic},
user2: {count: 4, repoName: "big_test_", privacy: privacyTypePublic}},
nil: {count: 7, repoName: "big_test_", privacy: privacyTypePublic},
user: {count: 7, repoName: "big_test_", privacy: privacyTypePublic},
user2: {count: 7, repoName: "big_test_", privacy: privacyTypePublic}},
},
{name: "RepositoriesAccessibleAndRelatedToUser", requestURL: fmt.Sprintf("/api/v1/repos/search?uid=%d", user.ID), expectedResults: expectedResults{
nil: {count: 4, privacy: privacyTypePublic},
user: {count: 8},
user2: {count: 4, privacy: privacyTypePublic}},
{name: "RepositoriesAccessibleAndRelatedToUser", requestURL: fmt.Sprintf("/api/v1/repos/search?uid=%d&limit=50", user.ID), expectedResults: expectedResults{
nil: {count: 7, privacy: privacyTypePublic},
user: {count: 14},
user2: {count: 7, privacy: privacyTypePublic}},
},
{name: "RepositoriesAccessibleAndRelatedToUser2", requestURL: fmt.Sprintf("/api/v1/repos/search?uid=%d", user2.ID), expectedResults: expectedResults{
nil: {count: 1, privacy: privacyTypePublic},
user: {count: 1, privacy: privacyTypePublic},
user2: {count: 2}},
},
{name: "RepositoriesOwnedByOrganization", requestURL: fmt.Sprintf("/api/v1/repos/search?uid=%d", orgUser.ID), expectedResults: expectedResults{
nil: {count: 1, repoOwnerID: orgUser.ID, privacy: privacyTypePublic},
user: {count: 2, repoOwnerID: orgUser.ID},
user2: {count: 1, repoOwnerID: orgUser.ID, privacy: privacyTypePublic}},
nil: {count: 2, repoOwnerID: orgUser.ID, privacy: privacyTypePublic},
user: {count: 4, repoOwnerID: orgUser.ID},
user2: {count: 2, repoOwnerID: orgUser.ID, privacy: privacyTypePublic}},
},
}

Expand Down
11 changes: 11 additions & 0 deletions models/fixtures/access.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,15 @@
id: 7
user_id: 15
repo_id: 24
mode: 4 # owner
-
id: 8
user_id: 15
repo_id: 27
mode: 4 # owner

-
id: 9
user_id: 15
repo_id: 28
mode: 4 # owner
94 changes: 94 additions & 0 deletions models/fixtures/repository.yml
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,7 @@
num_closed_pulls: 0
num_watches: 0
is_mirror: false
is_fork: false

-
id: 18
Expand All @@ -213,6 +214,7 @@
num_pulls: 0
num_closed_pulls: 0
is_mirror: false
is_fork: false

-
id: 19
Expand All @@ -225,6 +227,7 @@
num_pulls: 0
num_closed_pulls: 0
is_mirror: false
is_fork: false

-
id: 20
Expand All @@ -237,6 +240,7 @@
num_pulls: 0
num_closed_pulls: 0
is_mirror: false
is_fork: false

-
id: 21
Expand All @@ -249,6 +253,7 @@
num_pulls: 0
num_closed_pulls: 0
is_mirror: false
is_fork: false

-
id: 22
Expand All @@ -261,6 +266,7 @@
num_pulls: 0
num_closed_pulls: 0
is_mirror: false
is_fork: false

-
id: 23
Expand All @@ -273,6 +279,7 @@
num_pulls: 0
num_closed_pulls: 0
is_mirror: false
is_fork: false

-
id: 24
Expand All @@ -285,3 +292,90 @@
num_pulls: 0
num_closed_pulls: 0
is_mirror: false
is_fork: false

-
id: 25
owner_id: 15
lower_name: big_test_public_mirror_5
name: big_test_public_mirror_5
is_private: false
num_issues: 0
num_closed_issues: 0
num_pulls: 0
num_closed_pulls: 0
num_watches: 0
is_mirror: true
is_fork: false

-
id: 26
owner_id: 15
lower_name: big_test_private_mirror_5
name: big_test_private_mirror_5
is_private: true
num_issues: 0
num_closed_issues: 0
num_pulls: 0
num_closed_pulls: 0
num_watches: 0
is_mirror: true
is_fork: false

-
id: 27
owner_id: 17
lower_name: big_test_public_mirror_6
name: big_test_public_mirror_6
is_private: false
num_issues: 0
num_closed_issues: 0
num_pulls: 0
num_closed_pulls: 0
num_watches: 0
is_mirror: true
num_forks: 1
is_fork: false

-
id: 28
owner_id: 17
lower_name: big_test_private_mirror_6
name: big_test_private_mirror_6
is_private: true
num_issues: 0
num_closed_issues: 0
num_pulls: 0
num_closed_pulls: 0
num_watches: 0
is_mirror: true
num_forks: 1
is_fork: false

-
id: 29
fork_id: 27
owner_id: 15
lower_name: big_test_public_fork_7
name: big_test_public_fork_7
is_private: false
num_issues: 0
num_closed_issues: 0
num_pulls: 0
num_closed_pulls: 0
is_mirror: false
is_fork: true

-
id: 30
fork_id: 28
owner_id: 15
lower_name: big_test_private_fork_7
name: big_test_private_fork_7
is_private: true
num_issues: 0
num_closed_issues: 0
num_pulls: 0
num_closed_pulls: 0
is_mirror: false
is_fork: true
2 changes: 1 addition & 1 deletion models/fixtures/team.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,6 @@
lower_name: owners
name: Owners
authorize: 4 # owner
num_repos: 2
num_repos: 4
num_members: 1
unit_types: '[1,2,3,4,5,6,7]'
14 changes: 13 additions & 1 deletion models/fixtures/team_repo.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,16 @@
id: 5
org_id: 17
team_id: 5
repo_id: 24
repo_id: 24

-
id: 6
org_id: 17
team_id: 5
repo_id: 27

-
id: 7
org_id: 17
team_id: 5
repo_id: 28
4 changes: 2 additions & 2 deletions models/fixtures/user.yml
Original file line number Diff line number Diff line change
Expand Up @@ -231,7 +231,7 @@
is_admin: false
avatar: avatar15
avatar_email: user15@example.com
num_repos: 4
num_repos: 8
is_active: true

-
Expand Down Expand Up @@ -261,7 +261,7 @@
is_admin: false
avatar: avatar17
avatar_email: user17@example.com
num_repos: 2
num_repos: 4
is_active: true
num_members: 1
num_teams: 1
4 changes: 4 additions & 0 deletions models/repo_list.go
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,10 @@ func SearchRepositoryByName(opts *SearchRepoOptions) (repos RepositoryList, _ in
}
}

if opts.RepoType == RepoTypeCollaborative && (!opts.Collaborate || opts.OwnerID <= 0) {
return repos, 0, nil
}

// Check and set page to correct number
if opts.Page <= 0 {
opts.Page = 1
Expand Down
Loading

0 comments on commit 19c15bb

Please sign in to comment.