Skip to content

Commit 4f8b63c

Browse files
author
Shairyar Baig
authored
Merge pull request #1117 from travis-ci/dm_build_priority_feature_on_job
Added prioritize flag for job page
2 parents a04dba1 + b5f213c commit 4f8b63c

File tree

3 files changed

+36
-15
lines changed

3 files changed

+36
-15
lines changed

lib/travis/api/v3/permissions/job.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,9 @@ def debug?
1717
def delete_log?
1818
write?
1919
end
20+
21+
def prioritize?
22+
write? && build_priorities?
23+
end
2024
end
2125
end

spec/v3/services/job/find_spec.rb

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,8 @@
4949
"cancel" => false,
5050
"restart" => false,
5151
"debug" => false,
52-
"delete_log" => false },
52+
"delete_log" => false,
53+
"prioritize" => false },
5354
"id" => job.id,
5455
"allow_failure" => job.allow_failure,
5556
"number" => job.number,
@@ -150,6 +151,7 @@
150151
before { Travis::API::V3::Models::Permission.create(repository: repo, user: repo.owner, pull: true) }
151152
before { repo.update_attribute(:private, true) }
152153
before { allow_any_instance_of(Travis::API::V3::Permissions::Job).to receive(:delete_log?).and_return(true) }
154+
before { allow_any_instance_of(Travis::API::V3::Permissions::Job).to receive(:prioritize?).and_return(true) }
153155
before { get("/v3/job/#{job.id}", {}, headers) }
154156
after { repo.update_attribute(:private, false) }
155157
example { expect(last_response).to be_ok }
@@ -162,7 +164,8 @@
162164
"cancel" => true,
163165
"restart" => true,
164166
"debug" => false,
165-
"delete_log" => true },
167+
"delete_log" => true,
168+
"prioritize" => true },
166169
"id" => job.id,
167170
"allow_failure" => job.allow_failure,
168171
"number" => job.number,
@@ -238,7 +241,8 @@
238241
"cancel" => false,
239242
"restart" => false,
240243
"debug" => false,
241-
"delete_log" => false },
244+
"delete_log" => false,
245+
"prioritize" => false },
242246
"id" => job2.id,
243247
"allow_failure" => job2.allow_failure,
244248
"number" => job2.number,

spec/v3/services/jobs/find_spec.rb

Lines changed: 25 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,8 @@
3232
"cancel" => false,
3333
"restart" => false,
3434
"debug" => false,
35-
"delete_log" => false },
35+
"delete_log" => false,
36+
"prioritize" => false },
3637
"id" => jobs[0].id,
3738
"private" => false,
3839
"number" => "#{jobs[0].number}",
@@ -106,7 +107,8 @@
106107
"cancel" => false,
107108
"restart" => false,
108109
"debug" => false,
109-
"delete_log" => false},
110+
"delete_log" => false,
111+
"prioritize" => false},
110112
"id" => jobs[1].id,
111113
"private" => false,
112114
"number" => "#{jobs[1].number}",
@@ -180,7 +182,8 @@
180182
"cancel" => false,
181183
"restart" => false,
182184
"debug" => false,
183-
"delete_log" => false},
185+
"delete_log" => false,
186+
"prioritize" => false},
184187
"id" => jobs[2].id,
185188
"private" => false,
186189
"number" => "#{jobs[2].number}",
@@ -254,7 +257,8 @@
254257
"cancel" => false,
255258
"restart" => false,
256259
"debug" => false,
257-
"delete_log" => false},
260+
"delete_log" => false,
261+
"prioritize" => false},
258262
"id" => jobs[3].id,
259263
"private" => false,
260264
"number" => "#{jobs[3].number}",
@@ -346,7 +350,8 @@
346350
"cancel" => true,
347351
"restart" => true,
348352
"debug" => false,
349-
"delete_log" => false },
353+
"delete_log" => false,
354+
"prioritize" => false },
350355
"id" => jobs[0].id,
351356
"private" => false,
352357
"number" => "#{jobs[0].number}",
@@ -420,7 +425,8 @@
420425
"cancel" => true,
421426
"restart" => true,
422427
"debug" => false,
423-
"delete_log" => false },
428+
"delete_log" => false,
429+
"prioritize" => false },
424430
"id" => jobs[1].id,
425431
"private" => false,
426432
"number" => "#{jobs[1].number}",
@@ -494,7 +500,8 @@
494500
"cancel" => true,
495501
"restart" => true,
496502
"debug" => false,
497-
"delete_log" => false },
503+
"delete_log" => false,
504+
"prioritize" => false },
498505
"id" => jobs[2].id,
499506
"private" => false,
500507
"number" => "#{jobs[2].number}",
@@ -568,7 +575,8 @@
568575
"cancel" => true,
569576
"restart" => true,
570577
"debug" => false,
571-
"delete_log" => false },
578+
"delete_log" => false,
579+
"prioritize" => false },
572580
"id" => jobs[3].id,
573581
"private" => false,
574582
"number" => "#{jobs[3].number}",
@@ -645,6 +653,7 @@
645653
before { Travis::API::V3::Models::Permission.create(repository: repo, user: repo.owner, pull: true, push: true) }
646654
before { allow_any_instance_of(Travis::API::V3::Permissions::Job).to receive(:delete_log?).and_return(true) }
647655
before { allow_any_instance_of(Travis::API::V3::Permissions::Job).to receive(:debug?).and_return(true) }
656+
before { allow_any_instance_of(Travis::API::V3::Permissions::Job).to receive(:prioritize?).and_return(true) }
648657
before { repo.update_attribute(:private, true) }
649658
before { get("/v3/build/#{build.id}/jobs?include=job.config", {}, headers) }
650659
after { repo.update_attribute(:private, false) }
@@ -662,7 +671,8 @@
662671
"cancel" => true,
663672
"restart" => true,
664673
"debug" => true,
665-
"delete_log" => true },
674+
"delete_log" => true,
675+
"prioritize" => true },
666676
"id" => jobs[0].id,
667677
"private" => false,
668678
"number" => "#{jobs[0].number}",
@@ -736,7 +746,8 @@
736746
"cancel" => true,
737747
"restart" => true,
738748
"debug" => true,
739-
"delete_log" => true },
749+
"delete_log" => true,
750+
"prioritize" => true },
740751
"id" => jobs[1].id,
741752
"private" => false,
742753
"number" => "#{jobs[1].number}",
@@ -810,7 +821,8 @@
810821
"cancel" => true,
811822
"restart" => true,
812823
"debug" => true,
813-
"delete_log" => true },
824+
"delete_log" => true,
825+
"prioritize" => true },
814826
"id" => jobs[2].id,
815827
"private" => false,
816828
"number" => "#{jobs[2].number}",
@@ -884,7 +896,8 @@
884896
"cancel" => true,
885897
"restart" => true,
886898
"debug" => true,
887-
"delete_log" => true },
899+
"delete_log" => true,
900+
"prioritize" => true },
888901
"id" => jobs[3].id,
889902
"private" => false,
890903
"number" => "#{jobs[3].number}",

0 commit comments

Comments
 (0)