Skip to content

Commit dd86a65

Browse files
committed
Add more repo search tests
1 parent b4b0280 commit dd86a65

File tree

9 files changed

+287
-1
lines changed

9 files changed

+287
-1
lines changed

models/fixtures/access.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,10 @@
1515
user_id: 4
1616
repo_id: 3
1717
mode: 2 # write
18+
19+
-
20+
id: 4
21+
user_id: 15
22+
repo_id: 22
23+
mode: 2 # write
24+

models/fixtures/org_user.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,11 @@
2929
is_public: false
3030
is_owner: true
3131
num_teams: 1
32+
33+
-
34+
id: 5
35+
uid: 15
36+
org_id: 17
37+
is_public: true
38+
is_owner: true
39+
num_teams: 1

models/fixtures/repository.yml

Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -188,3 +188,100 @@
188188
num_pulls: 0
189189
num_closed_pulls: 0
190190
num_watches: 0
191+
192+
-
193+
id: 17
194+
owner_id: 15
195+
lower_name: big_test_public_1
196+
name: big_test_public_1
197+
is_private: false
198+
num_issues: 0
199+
num_closed_issues: 0
200+
num_pulls: 0
201+
num_closed_pulls: 0
202+
num_watches: 0
203+
is_mirror: false
204+
205+
-
206+
id: 18
207+
owner_id: 15
208+
lower_name: big_test_public_2
209+
name: big_test_public_2
210+
is_private: false
211+
num_issues: 0
212+
num_closed_issues: 0
213+
num_pulls: 0
214+
num_closed_pulls: 0
215+
is_mirror: false
216+
217+
-
218+
id: 19
219+
owner_id: 15
220+
lower_name: big_test_private_1
221+
name: big_test_private_1
222+
is_private: true
223+
num_issues: 0
224+
num_closed_issues: 0
225+
num_pulls: 0
226+
num_closed_pulls: 0
227+
is_mirror: false
228+
229+
-
230+
id: 20
231+
owner_id: 15
232+
lower_name: big_test_private_2
233+
name: big_test_private_2
234+
is_private: true
235+
num_issues: 0
236+
num_closed_issues: 0
237+
num_pulls: 0
238+
num_closed_pulls: 0
239+
is_mirror: false
240+
241+
-
242+
id: 21
243+
owner_id: 16
244+
lower_name: big_test_public_3
245+
name: big_test_public_3
246+
is_private: false
247+
num_issues: 0
248+
num_closed_issues: 0
249+
num_pulls: 0
250+
num_closed_pulls: 0
251+
is_mirror: false
252+
253+
-
254+
id: 22
255+
owner_id: 16
256+
lower_name: big_test_private_3
257+
name: big_test_private_3
258+
is_private: true
259+
num_issues: 0
260+
num_closed_issues: 0
261+
num_pulls: 0
262+
num_closed_pulls: 0
263+
is_mirror: false
264+
265+
-
266+
id: 23
267+
owner_id: 17
268+
lower_name: big_test_public_4
269+
name: big_test_public_4
270+
is_private: false
271+
num_issues: 0
272+
num_closed_issues: 0
273+
num_pulls: 0
274+
num_closed_pulls: 0
275+
is_mirror: false
276+
277+
-
278+
id: 24
279+
owner_id: 17
280+
lower_name: big_test_private_4
281+
name: big_test_private_4
282+
is_private: true
283+
num_issues: 0
284+
num_closed_issues: 0
285+
num_pulls: 0
286+
num_closed_pulls: 0
287+
is_mirror: false

models/fixtures/team.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,3 +37,12 @@
3737
num_repos: 0
3838
num_members: 1
3939
unit_types: '[1,2,3,4,5,6,7]'
40+
-
41+
id: 5
42+
org_id: 17
43+
lower_name: owners
44+
name: Owners
45+
authorize: 4 # owner
46+
num_repos: 2
47+
num_members: 1
48+
unit_types: '[1,2,3,4,5,6,7]'

models/fixtures/team_repo.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,15 @@
1515
org_id: 3
1616
team_id: 1
1717
repo_id: 5
18+
19+
-
20+
id: 4
21+
org_id: 17
22+
team_id: 5
23+
repo_id: 23
24+
25+
-
26+
id: 5
27+
org_id: 17
28+
team_id: 5
29+
repo_id: 24

models/fixtures/team_user.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,9 @@
2727
org_id: 7
2828
team_id: 4
2929
uid: 5
30+
31+
-
32+
id: 6
33+
org_id: 17
34+
team_id: 5
35+
uid: 15

models/fixtures/user.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -218,3 +218,50 @@
218218
avatar_email: [email protected]
219219
num_repos: 3
220220
is_active: true
221+
222+
-
223+
id: 15
224+
lower_name: user15
225+
name: user15
226+
full_name: User 15
227+
228+
passwd: 7d93daa0d1e6f2305cc8fa496847d61dc7320bb16262f9c55dd753480207234cdd96a93194e408341971742f4701772a025a # password
229+
type: 0 # individual
230+
salt: ZogKvWdyEx
231+
is_admin: false
232+
avatar: avatar15
233+
avatar_email: [email protected]
234+
num_repos: 4
235+
is_active: true
236+
237+
-
238+
id: 16
239+
lower_name: user16
240+
name: user16
241+
full_name: User 16
242+
243+
passwd: 7d93daa0d1e6f2305cc8fa496847d61dc7320bb16262f9c55dd753480207234cdd96a93194e408341971742f4701772a025a # password
244+
type: 0 # individual
245+
salt: ZogKvWdyEx
246+
is_admin: false
247+
avatar: avatar16
248+
avatar_email: [email protected]
249+
num_repos: 2
250+
is_active: true
251+
252+
-
253+
id: 17
254+
lower_name: user17
255+
name: user17
256+
full_name: User 17
257+
258+
passwd: 7d93daa0d1e6f2305cc8fa496847d61dc7320bb16262f9c55dd753480207234cdd96a93194e408341971742f4701772a025a # password
259+
type: 1 # organization
260+
salt: ZogKvWdyEx
261+
is_admin: false
262+
avatar: avatar17
263+
avatar_email: [email protected]
264+
num_repos: 2
265+
is_active: true
266+
num_members: 1
267+
num_teams: 1

models/org_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -252,7 +252,7 @@ func TestOrganizations(t *testing.T) {
252252
[]int64{3, 6})
253253

254254
testSuccess(&SearchUserOptions{OrderBy: "id ASC", Page: 2, PageSize: 2},
255-
[]int64{7})
255+
[]int64{7, 17})
256256

257257
testSuccess(&SearchUserOptions{Page: 3, PageSize: 2},
258258
[]int64{})

models/repo_list_test.go

Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,4 +66,104 @@ func TestSearchRepositoryByName(t *testing.T) {
6666
assert.NotNil(t, repos)
6767
assert.NoError(t, err)
6868
assert.Equal(t, int64(3), count)
69+
70+
// Get all public repositories by name
71+
repos, count, err = SearchRepositoryByName(&SearchRepoOptions{
72+
Keyword: "big_test_",
73+
Page: 1,
74+
PageSize: 10,
75+
})
76+
77+
assert.NotNil(t, repos)
78+
assert.NoError(t, err)
79+
assert.Equal(t, int64(4), count)
80+
81+
// Get all public + private repositories by name
82+
repos, count, err = SearchRepositoryByName(&SearchRepoOptions{
83+
Keyword: "big_test_",
84+
Page: 1,
85+
PageSize: 10,
86+
Private: true,
87+
})
88+
89+
assert.NotNil(t, repos)
90+
assert.NoError(t, err)
91+
assert.Equal(t, int64(8), count)
92+
93+
// Get all public repositories of user
94+
repos, count, err = SearchRepositoryByName(&SearchRepoOptions{
95+
Page: 1,
96+
PageSize: 10,
97+
OwnerID: 15,
98+
Searcher: &User{ID: 15},
99+
})
100+
101+
assert.NotNil(t, repos)
102+
assert.NoError(t, err)
103+
assert.Equal(t, int64(3), count)
104+
105+
// Get all public + private repositories of user
106+
repos, count, err = SearchRepositoryByName(&SearchRepoOptions{
107+
Page: 1,
108+
PageSize: 10,
109+
OwnerID: 15,
110+
Private: true,
111+
Searcher: &User{ID: 15},
112+
})
113+
114+
assert.NotNil(t, repos)
115+
assert.NoError(t, err)
116+
assert.Equal(t, int64(6), count)
117+
118+
// Get all public (including collaborative) repositories of user
119+
repos, count, err = SearchRepositoryByName(&SearchRepoOptions{
120+
Page: 1,
121+
PageSize: 10,
122+
OwnerID: 15,
123+
Collaborate: true,
124+
Searcher: &User{ID: 15},
125+
})
126+
127+
assert.NotNil(t, repos)
128+
assert.NoError(t, err)
129+
assert.Equal(t, int64(3), count)
130+
131+
// Get all public + private (including collaborative) repositories of user
132+
repos, count, err = SearchRepositoryByName(&SearchRepoOptions{
133+
Page: 1,
134+
PageSize: 10,
135+
OwnerID: 15,
136+
Private: true,
137+
Collaborate: true,
138+
Searcher: &User{ID: 15},
139+
})
140+
141+
assert.NotNil(t, repos)
142+
assert.NoError(t, err)
143+
assert.Equal(t, int64(7), count)
144+
145+
// Get all public repositories of organization
146+
repos, count, err = SearchRepositoryByName(&SearchRepoOptions{
147+
Page: 1,
148+
PageSize: 10,
149+
OwnerID: 17,
150+
Searcher: &User{ID: 17},
151+
})
152+
153+
assert.NotNil(t, repos)
154+
assert.NoError(t, err)
155+
assert.Equal(t, int64(1), count)
156+
157+
// Get all public + private repositories of organization
158+
repos, count, err = SearchRepositoryByName(&SearchRepoOptions{
159+
Page: 1,
160+
PageSize: 10,
161+
OwnerID: 17,
162+
Private: true,
163+
Searcher: &User{ID: 17},
164+
})
165+
166+
assert.NotNil(t, repos)
167+
assert.NoError(t, err)
168+
assert.Equal(t, int64(2), count)
69169
}

0 commit comments

Comments
 (0)