Sha256: 5bfe3a584108c66a71ffa5571e55aa836b268a051fd8308da97b7a2af657a328

Contents?: true

Size: 1.12 KB

Versions: 1

Compression:

Stored size: 1.12 KB

Contents

def create_user(name, type = 'User')
  first_name, last_name = name.split(' ')
  user = type.camelize.constantize.where(:first_name => first_name, :last_name => last_name).first_or_create(:username => name.gsub(' ', '').underscore)
end

Given /^(a|\d+)( published)? posts?(?: with the title "([^"]*)")?(?: and body "([^"]*)")?(?: written by "([^"]*)")? exists?$/ do |count, published, title, body, user|
  count     = count == 'a' ? 1 : count.to_i
  published = Time.now          if published
  author    = create_user(user) if user
  title   ||= "Hello World %i"
  count.times do |i|
    Post.create! :title => title % i, :body => body, :author => author, :published_at => published
  end
end

Given /^a category named "([^"]*)" exists$/ do |name|
  Category.create! :name => name
end

Given /^a (user|publisher) named "([^"]*)" exists$/ do |type, name|
  create_user name, type
end

Given /^a store named "([^"]*)" exists$/ do |name|
  Store.create! :name => name
end

Given /^I create a new post with the title "([^"]*)"$/ do |title|
  click_link "Posts"
  click_link "New Post"
  fill_in :title, :with => title
  click_button "Create Post"
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
aa-rails4-0.6.0 features/step_definitions/factory_steps.rb