minitest-capistrano 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
@@ -62,6 +62,25 @@ module MiniTest
62
62
  assert_nil configuration.captures[cmd], msg
63
63
  end
64
64
 
65
+ ##
66
+ # Fails unless +configuration+ has put +cmd+.
67
+ #
68
+ # assert_have_put "/tmp/thefile", configuration, "thedata"
69
+
70
+ def assert_have_put(path, configuration, data, msg = nil)
71
+ msg ||= "Expected configuration to put #{path} with data, but did not"
72
+ refute_nil configuration.putes[path], msg
73
+ assert_equal configuration.putes[path][:data], data, msg
74
+ end
75
+
76
+ ##
77
+ # Fails if +configuration+ has put +path+.
78
+
79
+ def refute_have_put(path, configuration, data = nil, msg = nil)
80
+ msg ||= "Expected configuration to not put #{path}, but did"
81
+ assert_nil configuration.putes[path], msg
82
+ end
83
+
65
84
  ##
66
85
  # Fails unless +configuration+ has a callback of +before_task_name+ before
67
86
  # +task_name+.
@@ -199,6 +218,24 @@ module MiniTest
199
218
 
200
219
  infect_an_assertion :refute_have_captured, :wont_have_captured
201
220
 
221
+ ##
222
+ # See MiniTest::Assertions#assert_have_put
223
+ #
224
+ # config.must_have_put path, data
225
+ #
226
+ # :method: must_have_put
227
+
228
+ infect_an_assertion :assert_have_put, :must_have_put
229
+
230
+ ##
231
+ # See MiniTest::Assertions#refute_have_put
232
+ #
233
+ # config.wont_have_put path, data
234
+ #
235
+ # :method: wont_have_put
236
+
237
+ infect_an_assertion :refute_have_put, :wont_have_put
238
+
202
239
  ##
203
240
  # See MiniTest::Assertions#assert_callback_before
204
241
  #
@@ -285,6 +322,14 @@ module MiniTest
285
322
  @uploads ||= {}
286
323
  end
287
324
 
325
+ def put(data, path, options={})
326
+ putes[path] = {:data => data, :options => options}
327
+ end
328
+
329
+ def putes
330
+ @putes ||= {}
331
+ end
332
+
288
333
  def capture(command, options={})
289
334
  captures[command] = {:options => options}
290
335
  captures_responses[command]
@@ -1,5 +1,5 @@
1
1
  module MiniTest
2
2
  module Capistrano
3
- VERSION = "0.0.5" # :nodoc:
3
+ VERSION = "0.0.6" # :nodoc:
4
4
  end
5
5
  end
@@ -50,6 +50,19 @@ describe MiniTest::Capistrano::ConfigurationExtension do
50
50
  end
51
51
  end
52
52
 
53
+ describe "#put" do
54
+ it "starts with an empty hash" do
55
+ @config.putes.must_be_empty
56
+ end
57
+
58
+ it "adds an entry to the hash when called" do
59
+ @config.putes.must_be_empty
60
+ @config.put "data", "path"
61
+ @config.putes.wont_be_empty
62
+ @config.putes["path"].wont_be_nil
63
+ end
64
+ end
65
+
53
66
  describe "#capture" do
54
67
  it "starts with an empty hash" do
55
68
  @config.captures.must_be_empty
@@ -125,6 +138,19 @@ describe MiniTest::Assertions do
125
138
  subject.refute_have_captured "cat /tmp/anything", @config
126
139
  end
127
140
 
141
+ it "assert a file has been put" do
142
+ @config.put "#!/usr/bin/env ruby", "/tmp/server.rb"
143
+ subject.assert_have_put "/tmp/server.rb", @config, "#!/usr/bin/env ruby"
144
+ end
145
+
146
+ it "refutes a file has been put with data" do
147
+ subject.refute_have_put "/tmp/anything", @config, "data"
148
+ end
149
+
150
+ it "refutes a file has been put with no data" do
151
+ subject.refute_have_put "/tmp/anything", @config
152
+ end
153
+
128
154
  it "asserts a callback exists for one task before another" do
129
155
  @config.before :startup, :announce_startup
130
156
 
@@ -193,6 +219,16 @@ describe MiniTest::Expectations do
193
219
  @config.wont_have_captured "yabba dabba"
194
220
  end
195
221
 
222
+ it "needs to verify a file has been put" do
223
+ @config.put "thedata", "thepath"
224
+ @config.must_have_put "thepath", "thedata"
225
+ end
226
+
227
+ it "needs to verify a file has not been put" do
228
+ @config.put "yabbadabbadata", "yepperspath"
229
+ @config.wont_have_put "nopath"
230
+ end
231
+
196
232
  it "needs to verify a callback exists for a task before another" do
197
233
  @config.before :stop, :warn_people
198
234
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: minitest-capistrano
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-01-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: minitest
16
- requirement: &70324415617860 !ruby/object:Gem::Requirement
16
+ requirement: &70262687273480 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 2.10.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70324415617860
24
+ version_requirements: *70262687273480
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: capistrano
27
- requirement: &70324415616060 !ruby/object:Gem::Requirement
27
+ requirement: &70262687271540 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,7 +32,7 @@ dependencies:
32
32
  version: '2.9'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70324415616060
35
+ version_requirements: *70262687271540
36
36
  description: MiniTest assertions and expectations for testing Capistrano recipes
37
37
  email:
38
38
  - fnichol@nichol.ca
@@ -65,7 +65,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
65
65
  version: '0'
66
66
  segments:
67
67
  - 0
68
- hash: 594627113195929341
68
+ hash: -1505468003130279717
69
69
  required_rubygems_version: !ruby/object:Gem::Requirement
70
70
  none: false
71
71
  requirements:
@@ -74,7 +74,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
74
74
  version: '0'
75
75
  segments:
76
76
  - 0
77
- hash: 594627113195929341
77
+ hash: -1505468003130279717
78
78
  requirements: []
79
79
  rubyforge_project:
80
80
  rubygems_version: 1.8.10