Skip to content

Commit fca8b86

Browse files
committed
send any arguments to simple rails factory
1 parent eaf495e commit fca8b86

File tree

3 files changed

+19
-4
lines changed

3 files changed

+19
-4
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
* send any arguments to simple rails factory, not only hashes
2+
13
## 1.2.1
24
### Fixed
35
* simple factory fails silently, changed to use create!

lib/cypress_dev/simple_rails_factory.rb

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22

33
module CypressDev
44
module SimpleRailsFactory
5-
def self.create(type, params = {})
6-
type.camelize.constantize.create!(params)
5+
def self.create(type, *params)
6+
params = [{}] if params.empty?
7+
type.camelize.constantize.create!(*params)
78
end
89

9-
def self.create_list(type, amount, params = {})
10+
def self.create_list(type, amount, *params)
1011
amount.to_i.times do
11-
create(type,params)
12+
create(type,*params)
1213
end
1314
end
1415
end

spec/cypress_dev/command_executor/simple_rails_factory_spec.rb renamed to spec/cypress_dev/simple_rails_factory_spec.rb

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,18 @@ def self.create!(*)
1616
expect(AppRecord).to have_received(:create!).with( { my_args: 'Hello World' } )
1717
end
1818

19+
it do
20+
subject.create('AppRecord', 'trait', { my_args: 'Hello World' })
21+
22+
expect(AppRecord).to have_received(:create!).with( 'trait', { my_args: 'Hello World' } )
23+
end
24+
25+
it do
26+
subject.create('AppRecord')
27+
28+
expect(AppRecord).to have_received(:create!).with( { } )
29+
end
30+
1931
it do
2032
expect{ subject.create('UnknownRecord', { my_args: 'Hello World' }) }.
2133
to raise_error(NameError)

0 commit comments

Comments
 (0)