@@ -14,14 +14,16 @@ module Service
14
14
let ( :expected_url ) { "https://img.shields.io/badge/#{ expected_left_text } -#{ expected_right_text } -#{ expected_color } .svg" }
15
15
let ( :expected_color ) { "brightgreen" }
16
16
let ( :expected_right_text ) { "verified" }
17
- let ( :expected_left_text ) { "foo--bar%2Fthing__blah %20pact" }
17
+ let ( :expected_left_text ) { "foo--bar%2fthing__blah %20pact" }
18
18
let ( :response_status ) { 200 }
19
19
let! ( :http_request ) do
20
20
stub_request ( :get , expected_url ) . to_return ( :status => response_status , :body => "svg" )
21
21
end
22
22
23
23
subject { PactBroker ::Badges ::Service . pact_verification_badge pact , label , initials , pseudo_branch_verification_status }
24
24
25
+ let ( :pact_verification_badge_url ) { PactBroker ::Badges ::Service . pact_verification_badge_url ( pact , label , initials , pseudo_branch_verification_status ) }
26
+
25
27
before do
26
28
Service . clear_cache
27
29
allow ( Service ) . to receive ( :logger ) . and_return ( logger )
@@ -41,48 +43,53 @@ module Service
41
43
it "creates a badge with the consumer and provider names" do
42
44
subject
43
45
expect ( http_request ) . to have_been_made
46
+ expect ( pact_verification_badge_url ) . to eq URI ( expected_url )
44
47
end
45
48
46
49
context "when initials is true" do
47
- let ( :expected_left_text ) { "fb%2Ftb %20pact" }
50
+ let ( :expected_left_text ) { "fb%2ftb %20pact" }
48
51
let ( :initials ) { true }
49
52
50
53
it "creates a badge with the consumer and provider initials" do
51
54
subject
52
55
expect ( http_request ) . to have_been_made
56
+ expect ( pact_verification_badge_url ) . to eq URI ( expected_url )
53
57
end
54
58
end
55
59
56
60
context "when initials is true but the consumer and provider names only contain one word" do
57
- let ( :expected_left_text ) { "foo%2Fbar %20pact" }
61
+ let ( :expected_left_text ) { "foo%2fbar %20pact" }
58
62
let ( :initials ) { true }
59
63
let ( :pact ) { double ( "pact" , consumer_name : "Foo" , provider_name : "Bar" ) }
60
64
61
65
it "creates a badge with the consumer and provider names, not initials" do
62
66
subject
63
67
expect ( http_request ) . to have_been_made
68
+ expect ( pact_verification_badge_url ) . to eq URI ( expected_url )
64
69
end
65
70
end
66
71
67
72
context "when initials is true but the consumer and provider names are one camel cased word" do
68
- let ( :expected_left_text ) { "fa%2Fbp %20pact" }
73
+ let ( :expected_left_text ) { "fa%2fbp %20pact" }
69
74
let ( :initials ) { true }
70
75
let ( :pact ) { double ( "pact" , consumer_name : "FooApp" , provider_name : "barProvider" ) }
71
76
72
77
it "creates a badge with the consumer and provider names, not initials" do
73
78
subject
74
79
expect ( http_request ) . to have_been_made
80
+ expect ( pact_verification_badge_url ) . to eq URI ( expected_url )
75
81
end
76
82
end
77
83
78
84
context "when initials is true but the consumer and provider names are one camel cased word" do
79
- let ( :expected_left_text ) { "fa%2Fdat %20pact" }
85
+ let ( :expected_left_text ) { "fa%2fdat %20pact" }
80
86
let ( :initials ) { true }
81
87
let ( :pact ) { double ( "pact" , consumer_name : "FooApp" , provider_name : "doAThing" ) }
82
88
83
89
it "creates a badge with the consumer and provider names, not initials" do
84
90
subject
85
91
expect ( http_request ) . to have_been_made
92
+ expect ( pact_verification_badge_url ) . to eq URI ( expected_url )
86
93
end
87
94
end
88
95
end
@@ -94,6 +101,7 @@ module Service
94
101
it "creates a badge with only the consumer name" do
95
102
subject
96
103
expect ( http_request ) . to have_been_made
104
+ expect ( pact_verification_badge_url ) . to eq URI ( expected_url )
97
105
end
98
106
99
107
context "when initials is true" do
@@ -103,6 +111,7 @@ module Service
103
111
it "creates a badge with only the consumer initials" do
104
112
subject
105
113
expect ( http_request ) . to have_been_made
114
+ expect ( pact_verification_badge_url ) . to eq URI ( expected_url )
106
115
end
107
116
end
108
117
end
@@ -114,6 +123,7 @@ module Service
114
123
it "creates a badge with only the provider name" do
115
124
subject
116
125
expect ( http_request ) . to have_been_made
126
+ expect ( pact_verification_badge_url ) . to eq URI ( expected_url )
117
127
end
118
128
119
129
context "when initials is true" do
@@ -123,6 +133,7 @@ module Service
123
133
it "creates a badge with only the provider initials" do
124
134
subject
125
135
expect ( http_request ) . to have_been_made
136
+ expect ( pact_verification_badge_url ) . to eq URI ( expected_url )
126
137
end
127
138
end
128
139
end
@@ -131,6 +142,7 @@ module Service
131
142
it "create a green badge with left text 'verified'" do
132
143
subject
133
144
expect ( http_request ) . to have_been_made
145
+ expect ( pact_verification_badge_url ) . to eq URI ( expected_url )
134
146
end
135
147
end
136
148
@@ -142,6 +154,7 @@ module Service
142
154
it "create a lightgrey badge with left text 'unknown'" do
143
155
subject
144
156
expect ( http_request ) . to have_been_made
157
+ expect ( pact_verification_badge_url ) . to eq URI ( expected_url )
145
158
end
146
159
end
147
160
@@ -153,6 +166,7 @@ module Service
153
166
it "create a red badge with left text 'failed'" do
154
167
subject
155
168
expect ( http_request ) . to have_been_made
169
+ expect ( pact_verification_badge_url ) . to eq URI ( expected_url )
156
170
end
157
171
end
158
172
@@ -164,6 +178,7 @@ module Service
164
178
it "create a orange badge with left text 'changed'" do
165
179
subject
166
180
expect ( http_request ) . to have_been_made
181
+ expect ( pact_verification_badge_url ) . to eq URI ( expected_url )
167
182
end
168
183
end
169
184
0 commit comments