@@ -37,11 +37,14 @@ def setUp(self):
3737 self .runner = CliRunner ()
3838 self .default_call = [
3939 '--provider-base-url=http://localhost' ,
40- '--pact-urls=./pacts/consumer-provider.json' ]
40+ '--pact-urls=./pacts/consumer-provider.json,'
41+ './pacts/consumer-provider2.json,./pacts/consumer-provider3.json' ]
4142
4243 self .default_opts = [
4344 '--provider-base-url=http://localhost' ,
44- '--pact-urls=./pacts/consumer-provider.json' ]
45+ '--pact-url=./pacts/consumer-provider.json' ,
46+ '--pact-urls=./pacts/consumer-provider2.json,'
47+ './pacts/consumer-provider3.json' ]
4548
4649 def assertProcess (self , * expected ):
4750 self .assertEqual (self .mock_Popen .call_count , 1 )
@@ -59,8 +62,9 @@ def test_provider_base_url_is_required(self):
5962 def test_pact_urls_are_required (self ):
6063 result = self .runner .invoke (
6164 verify .main , ['--provider-base-url=http://localhost' ])
62- self .assertEqual (result .exit_code , 2 )
63- self .assertIn (b'--pact-urls' , result .output_bytes )
65+ print (result )
66+ self .assertEqual (result .exit_code , 1 )
67+ self .assertIn (b'--pact-url or --pact-urls' , result .output_bytes )
6468 self .assertFalse (self .mock_Popen .called )
6569
6670 def test_local_pact_urls_must_exist (self ):
@@ -121,7 +125,10 @@ def test_all_options(self):
121125 self .mock_Popen .return_value .returncode = 0
122126 result = self .runner .invoke (verify .main , [
123127 '--provider-base-url=http://localhost' ,
124- '--pact-urls=./pacts/consumer-provider.json' ,
128+ '--pact-urls=./pacts/consumer-provider.json,'
129+ './pacts/consumer-provider2.json' ,
130+ '--pact-url=./pacts/consumer-provider3.json' ,
131+ '--pact-url=./pacts/consumer-provider4.json' ,
125132 '--provider-states-url=http=//localhost/provider-states' ,
126133 '--provider-states-setup-url=http://localhost/provider-states/set' ,
127134 '--pact-broker-username=user' ,
@@ -132,14 +139,35 @@ def test_all_options(self):
132139 self .assertEqual (self .mock_Popen .call_count , 1 )
133140 self .assertProcess (
134141 '--provider-base-url=http://localhost' ,
135- '--pact-urls=./pacts/consumer-provider.json' ,
142+ '--pact-urls=./pacts/consumer-provider3.json,'
143+ './pacts/consumer-provider4.json,'
144+ './pacts/consumer-provider.json,./pacts/consumer-provider2.json' ,
136145 '--provider-states-url=http=//localhost/provider-states' ,
137146 '--provider-states-setup-url=http://localhost/provider-states/set' ,
138147 '--broker-username=user' ,
139148 '--broker-password=pass' )
140149 self .mock_Popen .return_value .communicate .assert_called_once_with (
141150 timeout = 60 )
142151
152+ def test_deprecated_pact_urls (self ):
153+ self .mock_Popen .return_value .returncode = 0
154+ result = self .runner .invoke (verify .main , [
155+ '--provider-base-url=http://localhost' ,
156+ '--pact-urls=./pacts/consumer-provider.json' ,
157+ '--pact-urls=./pacts/consumer-provider2.json'
158+ ])
159+ self .assertEqual (result .exit_code , 0 )
160+ self .assertIn (
161+ b'Multiple --pact-urls arguments are deprecated.' ,
162+ result .output_bytes )
163+ self .assertEqual (self .mock_Popen .call_count , 1 )
164+ self .assertProcess (
165+ '--provider-base-url=http://localhost' ,
166+ '--pact-urls=./pacts/consumer-provider.json,'
167+ './pacts/consumer-provider2.json' )
168+ self .mock_Popen .return_value .communicate .assert_called_once_with (
169+ timeout = 30 )
170+
143171
144172class path_existsTestCase (TestCase ):
145173 def setUp (self ):
0 commit comments