build_eval 0.0.14 → 0.0.15

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. checksums.yaml +8 -8
  2. data/lib/build_eval/monitor/server.rb +6 -3
  3. data/lib/build_eval/result/build_result.rb +15 -7
  4. data/lib/build_eval/result/status.rb +7 -6
  5. data/lib/build_eval/server/decorator.rb +5 -5
  6. data/lib/build_eval/server/jenkins.rb +2 -2
  7. data/lib/build_eval/server/team_city.rb +4 -3
  8. data/lib/build_eval/server/travis.rb +5 -3
  9. data/lib/build_eval/server/travis_pro.rb +6 -3
  10. data/lib/build_eval/travis/session/factory.rb +31 -0
  11. data/lib/build_eval/travis/session/pool.rb +44 -0
  12. data/lib/build_eval/travis/session/session.rb +18 -0
  13. data/lib/build_eval/travis/session.rb +14 -0
  14. data/lib/build_eval/travis.rb +9 -3
  15. data/lib/build_eval/version.rb +1 -1
  16. data/lib/build_eval.rb +4 -1
  17. data/spec/lib/build_eval/monitor/composite_spec.rb +1 -0
  18. data/spec/lib/build_eval/monitor/server_spec.rb +14 -6
  19. data/spec/lib/build_eval/result/build_result_spec.rb +42 -13
  20. data/spec/lib/build_eval/result/status_spec.rb +19 -6
  21. data/spec/lib/build_eval/server/decorator_spec.rb +21 -14
  22. data/spec/lib/build_eval/server/jenkins_integration_spec.rb +4 -3
  23. data/spec/lib/build_eval/server/jenkins_spec.rb +2 -1
  24. data/spec/lib/build_eval/server/team_city_integration_spec.rb +2 -1
  25. data/spec/lib/build_eval/server/team_city_spec.rb +2 -1
  26. data/spec/lib/build_eval/server/travis_pro_spec.rb +11 -6
  27. data/spec/lib/build_eval/server/travis_spec.rb +11 -6
  28. data/spec/lib/build_eval/travis/session/factory_spec.rb +85 -0
  29. data/spec/lib/build_eval/travis/session/pool_spec.rb +89 -0
  30. data/spec/lib/build_eval/travis/session/session_spec.rb +24 -0
  31. data/spec/lib/build_eval/travis/session_spec.rb +65 -0
  32. data/spec/lib/build_eval/travis_spec.rb +75 -50
  33. data/spec/lib/build_eval_smoke_spec.rb +4 -3
  34. metadata +18 -9
  35. data/lib/build_eval/travis/session_factory.rb +0 -38
  36. data/spec/lib/build_eval/travis/session_factory_spec.rb +0 -105
@@ -13,13 +13,14 @@ describe BuildEval::Server::Jenkins do
13
13
  describe "#build_result" do
14
14
 
15
15
  let(:build_name) { "some_build_name" }
16
+ let(:branch_name) { nil }
16
17
  let(:response) { instance_double(Net::HTTPResponse) }
17
18
  let(:build_result) { instance_double(BuildEval::Result::BuildResult) }
18
19
  let(:cruise_control_response) do
19
20
  instance_double(BuildEval::Server::CruiseControlResponse, parse_result: build_result)
20
21
  end
21
22
 
22
- subject { jenkins_server.build_result(build_name) }
23
+ subject { jenkins_server.build_result(build_name, branch_name) }
23
24
 
24
25
  before(:example) do
25
26
  allow(http).to receive(:get).and_return(response)
@@ -8,11 +8,12 @@ describe BuildEval::Server::TeamCity, "integrating with a response parser", inte
8
8
  describe "#build_result" do
9
9
 
10
10
  let(:build_name) { "some_build_name" }
11
+ let(:branch_name) { nil }
11
12
  let(:response_message) { nil }
12
13
  let(:response_body) { nil }
13
14
  let(:response) { instance_double(Net::HTTPResponse, message: response_message, body: response_body) }
14
15
 
15
- subject { team_city_server.build_result(build_name) }
16
+ subject { team_city_server.build_result(build_name, branch_name) }
16
17
 
17
18
  before(:example) { allow(http).to receive(:get).and_return(response) }
18
19
 
@@ -15,6 +15,7 @@ describe BuildEval::Server::TeamCity do
15
15
  describe "#build_result" do
16
16
 
17
17
  let(:build_name) { "some_build_name" }
18
+ let(:branch_name) { nil }
18
19
  let(:response_body) do
19
20
  <<-RESPONSE
20
21
  <builds count="3" href="/httpAuth/app/rest/buildTypes/#{build_name}/builds/" nextHref="/httpAuth/app/rest/buildTypes/#{build_name}/builds/?count=3&start=3">
@@ -24,7 +25,7 @@ describe BuildEval::Server::TeamCity do
24
25
  end
25
26
  let(:response) { instance_double(Net::HTTPResponse, body: response_body) }
26
27
 
27
- subject { team_city_server.build_result(build_name) }
28
+ subject { team_city_server.build_result(build_name, branch_name) }
28
29
 
29
30
  before(:example) { allow(http).to receive(:get).and_return(response) }
30
31
 
@@ -9,19 +9,20 @@ describe BuildEval::Server::TravisPro do
9
9
  describe "#build_result" do
10
10
 
11
11
  let(:build_name) { "some_build_name" }
12
+ let(:branch_name) { "some_branch_name" }
12
13
  let(:last_build_status) { "Unknown" }
13
14
  let(:build_result) { instance_double(BuildEval::Result::BuildResult) }
14
15
 
15
- subject { travis_pro_server.build_result(build_name) }
16
+ subject { travis_pro_server.build_result(build_name, branch_name) }
16
17
 
17
18
  before(:example) do
18
19
  allow(BuildEval::Travis).to receive(:last_build_status).and_return(last_build_status)
19
20
  allow(BuildEval::Result::BuildResult).to receive(:create).and_return(build_result)
20
21
  end
21
22
 
22
- it "retrieves the last build status from Travis using the provided GitHub token" do
23
+ it "retrieves the last build status for the provided branch from Travis using the provided GitHub token" do
23
24
  expect(BuildEval::Travis).to(
24
- receive(:last_build_status).with(hash_including(github_token: github_token))
25
+ receive(:last_build_status).with(hash_including(github_token: github_token, branch: branch_name))
25
26
  )
26
27
 
27
28
  subject
@@ -43,10 +44,14 @@ describe BuildEval::Server::TravisPro do
43
44
  subject
44
45
  end
45
46
 
47
+ it "creates a build result whose branch name is the provided branch" do
48
+ expect(BuildEval::Result::BuildResult).to receive(:create).with(hash_including(branch_name: branch_name))
49
+
50
+ subject
51
+ end
52
+
46
53
  it "creates a build result whose status is the status the last build status" do
47
- expect(BuildEval::Result::BuildResult).to(
48
- receive(:create).with(hash_including(status_name: last_build_status))
49
- )
54
+ expect(BuildEval::Result::BuildResult).to receive(:create).with(hash_including(status_name: last_build_status))
50
55
 
51
56
  subject
52
57
  end
@@ -8,19 +8,20 @@ describe BuildEval::Server::Travis do
8
8
  describe "#build_result" do
9
9
 
10
10
  let(:build_name) { "some_build_name" }
11
+ let(:branch_name) { "some_branch_name" }
11
12
  let(:last_build_status) { "Failure" }
12
13
  let(:build_result) { instance_double(BuildEval::Result::BuildResult) }
13
14
 
14
- subject { travis_server.build_result(build_name) }
15
+ subject { travis_server.build_result(build_name, branch_name) }
15
16
 
16
17
  before(:example) do
17
18
  allow(BuildEval::Travis).to receive(:last_build_status).and_return(last_build_status)
18
19
  allow(BuildEval::Result::BuildResult).to receive(:create).and_return(build_result)
19
20
  end
20
21
 
21
- it "retrieves the last build status from Travis for the users build" do
22
+ it "retrieves the last build status for the provided branch from Travis for the users build" do
22
23
  expect(BuildEval::Travis).to(
23
- receive(:last_build_status).with(hash_including(repository_path: "#{username}/#{build_name}"))
24
+ receive(:last_build_status).with(repository_path: "#{username}/#{build_name}", branch: branch_name)
24
25
  )
25
26
 
26
27
  subject
@@ -34,10 +35,14 @@ describe BuildEval::Server::Travis do
34
35
  subject
35
36
  end
36
37
 
38
+ it "creates a build result whose branch name is the provided branch" do
39
+ expect(BuildEval::Result::BuildResult).to receive(:create).with(hash_including(branch_name: branch_name))
40
+
41
+ subject
42
+ end
43
+
37
44
  it "creates a build result whose status is the status the last build status" do
38
- expect(BuildEval::Result::BuildResult).to(
39
- receive(:create).with(hash_including(status_name: last_build_status))
40
- )
45
+ expect(BuildEval::Result::BuildResult).to receive(:create).with(hash_including(status_name: last_build_status))
41
46
 
42
47
  subject
43
48
  end
@@ -0,0 +1,85 @@
1
+ describe BuildEval::Travis::Session::Factory do
2
+
3
+ describe "::create" do
4
+
5
+ let(:github_token) { nil }
6
+ let(:travis_session) { instance_double(::Travis::Client::Session) }
7
+
8
+ subject { described_class.create(github_token) }
9
+
10
+ before(:example) { allow(::Travis::Client::Session).to receive(:new).and_return(travis_session) }
11
+
12
+ shared_examples_for "a factory method creating a new session" do
13
+
14
+ it "creates a Travis session with empty SSL settings to avoid using local security certificates" do
15
+ expect(::Travis::Client::Session).to receive(:new).with(hash_including(ssl: {}))
16
+
17
+ subject
18
+ end
19
+
20
+ it "creates a BuildEval session with the Travis session" do
21
+ expect(BuildEval::Travis::Session::Session).to receive(:new).with(travis_session, anything)
22
+
23
+ subject
24
+ end
25
+
26
+ it "creates a BuildEval session with the GitHub token" do
27
+ expect(BuildEval::Travis::Session::Session).to receive(:new).with(anything, github_token)
28
+
29
+ subject
30
+ end
31
+
32
+ it "returns the BuildEval session" do
33
+ build_eval_session = instance_double(BuildEval::Travis::Session::Session)
34
+ allow(BuildEval::Travis::Session::Session).to receive(:new).and_return(build_eval_session)
35
+
36
+ expect(subject).to equal(build_eval_session)
37
+ end
38
+
39
+ end
40
+
41
+ context "when a non-nil GitHub token is provided" do
42
+
43
+ let(:github_token) { "SOMEGITHUBAUTHTOKEN" }
44
+
45
+ before(:example) { allow(travis_session).to receive(:github_auth) }
46
+
47
+ it_behaves_like "a factory method creating a new session"
48
+
49
+ it "creates a Travis session connecting to the Travis Pro site" do
50
+ expect(::Travis::Client::Session).to receive(:new).with(hash_including(uri: ::Travis::Client::PRO_URI))
51
+
52
+ subject
53
+ end
54
+
55
+ it "logs-in using the provided GitHub token via the session" do
56
+ expect(travis_session).to receive(:github_auth).with(github_token)
57
+
58
+ subject
59
+ end
60
+
61
+ end
62
+
63
+ context "when a nil GitHub token is provided" do
64
+
65
+ let(:github_token) { nil }
66
+
67
+ it_behaves_like "a factory method creating a new session"
68
+
69
+ it "creates a Travis session connecting to the Travis Org site" do
70
+ expect(::Travis::Client::Session).to receive(:new).with(hash_including(uri: ::Travis::Client::ORG_URI))
71
+
72
+ subject
73
+ end
74
+
75
+ it "does not log-in" do
76
+ expect(travis_session).to_not receive(:github_auth)
77
+
78
+ subject
79
+ end
80
+
81
+ end
82
+
83
+ end
84
+
85
+ end
@@ -0,0 +1,89 @@
1
+ describe BuildEval::Travis::Session::Pool do
2
+
3
+ let(:github_token) { "SOMEGITHUBAUTHTOKEN" }
4
+
5
+ let(:session) { instance_double(BuildEval::Travis::Session::Session, github_token: github_token, clear_cache: nil) }
6
+
7
+ before(:example) { allow(BuildEval::Travis::Session::Factory).to receive(:create).and_return(session) }
8
+ after(:example) { described_class.clear }
9
+
10
+ describe "::get" do
11
+
12
+ subject { get_session }
13
+
14
+ context "when a session for the GitHub token has not been retrieved previously" do
15
+
16
+ it "creates a session for the token" do
17
+ expect(BuildEval::Travis::Session::Factory).to receive(:create).with(github_token)
18
+
19
+ subject
20
+ end
21
+
22
+ it "returns the session" do
23
+ expect(subject).to eql(session)
24
+ end
25
+
26
+ end
27
+
28
+ context "when a session for the GitHub token has been retrieved and released" do
29
+
30
+ before(:example) do
31
+ get_session
32
+ release_session
33
+ end
34
+
35
+ it "does not create a new session" do
36
+ expect(BuildEval::Travis::Session::Factory).to_not receive(:create)
37
+
38
+ subject
39
+ end
40
+
41
+ it "returns the previously created session" do
42
+ expect(subject).to eql(session)
43
+ end
44
+
45
+ end
46
+
47
+ context "when a session for the GitHub token has been retrieved but not released" do
48
+
49
+ let(:new_session) { instance_double(BuildEval::Travis::Session::Session) }
50
+
51
+ before(:example) { get_session }
52
+
53
+ it "creates a session for the token" do
54
+ expect(BuildEval::Travis::Session::Factory).to receive(:create).with(github_token)
55
+
56
+ subject
57
+ end
58
+
59
+ it "returns the newly created session" do
60
+ allow(BuildEval::Travis::Session::Factory).to receive(:create).and_return(new_session)
61
+
62
+ expect(subject).to eql(new_session)
63
+ end
64
+
65
+ end
66
+
67
+ end
68
+
69
+ describe "::release" do
70
+
71
+ subject { release_session }
72
+
73
+ it "clears the sessions cache" do
74
+ expect(session).to receive(:clear_cache)
75
+
76
+ subject
77
+ end
78
+
79
+ end
80
+
81
+ def release_session
82
+ described_class.release(session)
83
+ end
84
+
85
+ def get_session
86
+ described_class.get(github_token)
87
+ end
88
+
89
+ end
@@ -0,0 +1,24 @@
1
+ describe BuildEval::Travis::Session::Session do
2
+
3
+ let(:travis_session) { ::Travis::Client::Session.new(uri: "some/uri", ssl: {}) }
4
+ let(:github_token) { "SOMEGITHUBAUTHTOKEN" }
5
+
6
+ let(:session) { described_class.new(travis_session, github_token) }
7
+
8
+ describe "#github_token" do
9
+
10
+ subject { session.github_token }
11
+
12
+ it "returns the provided token" do
13
+ expect(subject).to eql(github_token)
14
+ end
15
+
16
+ end
17
+
18
+ it "delegates all other methods to the provided Travis session" do
19
+ expect(travis_session).to receive(:clear_cache)
20
+
21
+ session.clear_cache
22
+ end
23
+
24
+ end
@@ -0,0 +1,65 @@
1
+ describe BuildEval::Travis::Session do
2
+
3
+ describe "::open" do
4
+
5
+ let(:github_token) { "SOMEGITHIBTOKEN" }
6
+ let(:block) { lambda { |_session| "Some block" } }
7
+
8
+ let(:session) { instance_double(BuildEval::Travis::Session::Session) }
9
+
10
+ subject { described_class.open(github_token, &block) }
11
+
12
+ before(:example) do
13
+ allow(BuildEval::Travis::Session::Pool).to receive(:get).and_return(session)
14
+ allow(BuildEval::Travis::Session::Pool).to receive(:release)
15
+ end
16
+
17
+ it "obtains a session for the provided GitHib token from the pool" do
18
+ expect(BuildEval::Travis::Session::Pool).to receive(:get).with(github_token)
19
+
20
+ subject
21
+ end
22
+
23
+ it "yields the session to the provided block" do
24
+ expect { |block| described_class.open(github_token, &block) }.to yield_with_args(session)
25
+
26
+ subject
27
+ end
28
+
29
+ context "when an error is raised on yield" do
30
+
31
+ let(:error) { RuntimeError.new("Forced error") }
32
+
33
+ let(:block) { lambda { |_session| raise error } }
34
+
35
+ it "returns the session to the pool" do
36
+ expect(BuildEval::Travis::Session::Pool).to receive(:release).with(session)
37
+
38
+ subject rescue nil
39
+ end
40
+
41
+ it "propogates the error" do
42
+ expect { subject }.to raise_error(error)
43
+ end
44
+
45
+ end
46
+
47
+ context "when an error is not raised on yield" do
48
+
49
+ let(:block) { lambda { |_session| "Block result" } }
50
+
51
+ it "returns the session to the pool" do
52
+ expect(BuildEval::Travis::Session::Pool).to receive(:release).with(session)
53
+
54
+ subject
55
+ end
56
+
57
+ it "returns the last expression from the block" do
58
+ expect(subject).to eql("Block result")
59
+ end
60
+
61
+ end
62
+
63
+ end
64
+
65
+ end
@@ -3,23 +3,39 @@ describe BuildEval::Travis do
3
3
  describe "::last_build_status" do
4
4
 
5
5
  let(:repository_path) { "some/repository_path" }
6
+ let(:branch) { nil }
6
7
  let(:optional_args) { {} }
8
+ let(:args) { { repository_path: repository_path, branch: branch }.merge(optional_args) }
7
9
 
8
- let(:recent_builds) do
9
- (1..3).map { |i| instance_double(::Travis::Client::Build, finished?: i > 1) }
10
- end
11
- let(:last_finished_build) { recent_builds[1] }
12
- let(:last_finished_build_passed_flag) { true }
13
- let(:travis_repository) do
14
- instance_double(::Travis::Client::Repository, recent_builds: recent_builds)
15
- end
16
- let(:travis_session) { instance_double(::Travis::Client::Session, repo: travis_repository) }
10
+ let(:build_color) { "red" }
11
+ let(:build) { instance_double(::Travis::Client::Build, color: build_color) }
12
+ let(:travis_repository) { instance_double(::Travis::Client::Repository, last_build: build) }
13
+ let(:travis_session) { instance_double(::Travis::Client::Session, repo: travis_repository) }
14
+
15
+ subject { described_class.last_build_status(args) }
16
+
17
+ before(:example) { allow(BuildEval::Travis::Session).to receive(:open).and_yield(travis_session) }
18
+
19
+ shared_examples_for "a Travis build whose status is determined" do
20
+
21
+ {
22
+ "green" => "Success",
23
+ "yellow" => "Building",
24
+ "red" => "Failure"
25
+ }.each do |color, status|
17
26
 
18
- subject { described_class.last_build_status({ repository_path: repository_path }.merge(optional_args)) }
27
+ context "when the builds color is #{color}" do
28
+
29
+ let(:build_color) { color }
30
+
31
+ it "returns '#{status}'" do
32
+ expect(subject).to eql(status)
33
+ end
34
+
35
+ end
36
+
37
+ end
19
38
 
20
- before(:example) do
21
- allow(BuildEval::Travis::SessionFactory).to receive(:create).and_return(travis_session)
22
- allow(last_finished_build).to receive(:passed?).and_return(last_finished_build_passed_flag)
23
39
  end
24
40
 
25
41
  context "when a Github authentication token is provided" do
@@ -27,8 +43,8 @@ describe BuildEval::Travis do
27
43
  let(:github_token) { "SOMEGITHUBAUTHTOKEN" }
28
44
  let(:optional_args) { { github_token: github_token } }
29
45
 
30
- it "creates a Travis session using the token" do
31
- expect(BuildEval::Travis::SessionFactory).to receive(:create).with(github_token)
46
+ it "opens a Travis session using the token" do
47
+ expect(BuildEval::Travis::Session).to receive(:open).with(github_token)
32
48
 
33
49
  subject
34
50
  end
@@ -39,75 +55,84 @@ describe BuildEval::Travis do
39
55
 
40
56
  let(:optional_args) { {} }
41
57
 
42
- it "creates a Travis session for a nil token" do
43
- expect(BuildEval::Travis::SessionFactory).to receive(:create).with(nil)
58
+ it "opens a Travis session for a nil token" do
59
+ expect(BuildEval::Travis::Session).to receive(:open).with(nil)
44
60
 
45
61
  subject
46
62
  end
47
63
 
48
64
  end
49
65
 
66
+ context "when an error occurs opening a session" do
50
67
 
51
- it "retrieves the Travis repository for the provided repository path from the session" do
52
- expect(travis_session).to receive(:repo).with(repository_path)
68
+ before(:example) do
69
+ allow(BuildEval::Travis::Session).to(
70
+ receive(:open).and_raise(::Travis::Client::Error.new("Forced error"))
71
+ )
72
+ end
73
+
74
+ it "returns 'Unknown'" do
75
+ expect(subject).to eql("Unknown")
76
+ end
53
77
 
54
- subject
55
78
  end
56
79
 
57
- it "retrieves the recent builds from the repository" do
58
- expect(travis_repository).to receive(:recent_builds)
80
+ it "retrieves the Travis repository for the provided repository path from the session" do
81
+ expect(travis_session).to receive(:repo).with(repository_path)
59
82
 
60
83
  subject
61
84
  end
62
85
 
63
- it "determines if the last finished build has passed" do
64
- expect(last_finished_build).to receive(:passed?)
86
+ context "when a branch is provided" do
65
87
 
66
- subject
67
- end
88
+ let(:branch) { "some_branch" }
89
+
90
+ before(:example) { allow(travis_repository).to receive(:branch).and_return(build) }
68
91
 
69
- context "when the last finished build passed" do
92
+ it_behaves_like "a Travis build whose status is determined"
70
93
 
71
- let(:last_finished_build_passed_flag) { true }
94
+ it "retrieves the last build for the branch" do
95
+ expect(travis_repository).to receive(:branch).with(branch)
72
96
 
73
- it "returns 'Success'" do
74
- expect(subject).to eql("Success")
97
+ subject
75
98
  end
76
99
 
77
- end
100
+ context "when an error occurs retrieving the last build" do
78
101
 
79
- context "when the last finished build failed" do
102
+ before(:example) do
103
+ allow(travis_repository).to receive(:branch).and_raise(::Travis::Client::Error.new("Forced error"))
104
+ end
80
105
 
81
- let(:last_finished_build_passed_flag) { false }
106
+ it "returns 'Unknown'" do
107
+ expect(subject).to eql("Unknown")
108
+ end
82
109
 
83
- it "returns 'Failure'" do
84
- expect(subject).to eql("Failure")
85
110
  end
86
111
 
87
112
  end
88
113
 
89
- context "when an error occurs obtaining a session" do
114
+ context "when a branch is not provided" do
90
115
 
91
- before(:example) do
92
- allow(BuildEval::Travis::SessionFactory).to(
93
- receive(:create).and_raise(::Travis::Client::Error.new("Forced error"))
94
- )
95
- end
116
+ let(:branch) { nil }
96
117
 
97
- it "returns 'Unknown'" do
98
- expect(subject).to eql("Unknown")
118
+ it_behaves_like "a Travis build whose status is determined"
119
+
120
+ it "retrieves the last build repository" do
121
+ expect(travis_repository).to receive(:last_build)
122
+
123
+ subject
99
124
  end
100
125
 
101
- end
126
+ context "when an error occurs retrieving the last build" do
102
127
 
103
- context "when an error occurs retrieving the recent builds" do
128
+ before(:example) do
129
+ allow(travis_repository).to receive(:last_build).and_raise(::Travis::Client::Error.new("Forced error"))
130
+ end
104
131
 
105
- before(:example) do
106
- allow(travis_repository).to receive(:recent_builds).and_raise(::Travis::Client::Error.new("Forced error"))
107
- end
132
+ it "returns 'Unknown'" do
133
+ expect(subject).to eql("Unknown")
134
+ end
108
135
 
109
- it "returns 'Unknown'" do
110
- expect(subject).to eql("Unknown")
111
136
  end
112
137
 
113
138
  end
@@ -1,6 +1,6 @@
1
1
  describe BuildEval, "integrating with a real CI server", smoke: true do
2
2
 
3
- let(:builds) { BuildEval::Examples::Travis.builds }
3
+ let(:build_configurations) { BuildEval::Examples::Travis.build_configurations }
4
4
 
5
5
  let(:monitor) { BuildEval::Examples::Travis.monitor }
6
6
 
@@ -9,6 +9,7 @@ describe BuildEval, "integrating with a real CI server", smoke: true do
9
9
  let(:tolerated_statuses) do
10
10
  [
11
11
  BuildEval::Result::Status::SUCCESS,
12
+ BuildEval::Result::Status::BUILDING,
12
13
  BuildEval::Result::Status::UNKNOWN,
13
14
  BuildEval::Result::Status::FAILURE,
14
15
  BuildEval::Result::Status::ERROR
@@ -22,8 +23,8 @@ describe BuildEval, "integrating with a real CI server", smoke: true do
22
23
  end
23
24
 
24
25
  it "describes the builds and their individual status" do
25
- builds.each do |build|
26
- expect(subject.to_s).to match(/#{build}: (#{tolerated_statuses.map(&:to_s).join("|")})/)
26
+ build_configurations.each do |build_configuration|
27
+ expect(subject.to_s).to match(/#{build_configuration} -> (#{tolerated_statuses.map(&:to_s).join("|")})/)
27
28
  end
28
29
  end
29
30