shoulda_create 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
data/README.rdoc CHANGED
@@ -26,6 +26,9 @@ Some ideological dispute, I guess. I complained to one of the thoughtbot guys,
26
26
 
27
27
  # ... or it can be a table name: (remember to pluralize)
28
28
  should_create 'audits'
29
+
30
+ # the to can be a proc: (when using factories and ids are not known at context setup time)
31
+ should_change('the user group', :to => lambda{ @group.id }){ @user.reload.group_id }
29
32
  end
30
33
 
31
34
  == License
@@ -47,7 +47,7 @@ module ShouldaCreate
47
47
  by, from, to = get_options!([options], :by, :from, :to)
48
48
  stmt = "change #{description}"
49
49
  stmt << " from #{from.inspect}" if from
50
- stmt << " to #{to.inspect}" if to
50
+ stmt << " to #{to.inspect}" if to && !to.is_a?(Proc)
51
51
  stmt << " by #{by.inspect}" if by
52
52
 
53
53
  if block_given?
@@ -63,6 +63,7 @@ module ShouldaCreate
63
63
  should stmt, :before => before do
64
64
  old_value = self.instance_variable_get( before_var_name )
65
65
  new_value = code.bind(self).call
66
+ to = to.bind(self).call if to.is_a?(Proc)
66
67
  assert_operator from, :===, old_value, "#{description} did not originally match #{from.inspect}" if from
67
68
  assert_not_equal old_value, new_value, "#{description} did not change" unless by == 0
68
69
  assert_operator to, :===, new_value, "#{description} was not changed to match #{to.inspect}" if to
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shoulda_create
3
3
  version: !ruby/object:Gem::Version
4
- hash: 25
4
+ hash: 23
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 3
10
- version: 0.0.3
9
+ - 4
10
+ version: 0.0.4
11
11
  platform: ruby
12
12
  authors:
13
13
  - Bill Kirtley
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-11-13 00:00:00 Z
18
+ date: 2012-11-16 00:00:00 Z
19
19
  dependencies: []
20
20
 
21
21
  description: I like using should_create and friends to make assertions about records coming and going in the database. Shoulda did, but doesn't any more. With this, it can again.