Sha256: b7f164663076c6dcab6352a37a8135874947e62b157e70c8208af357ec0e4e14

Contents?: true

Size: 1.36 KB

Versions: 6

Compression:

Stored size: 1.36 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.tr(' ', '').underscore)
end

Given /^(a|\d+)( published)?( unstarred|starred)? posts?(?: with the title "([^"]*)")?(?: and body "([^"]*)")?(?: written by "([^"]*)")?(?: in category "([^"]*)")? exists?$/ do |count, published, starred, title, body, user, category_name|
  count     = count == 'a' ? 1 : count.to_i
  published = Time.now          if published
  starred   = starred == " starred" if starred
  author    = create_user(user) if user
  category  = Category.where(name: category_name).first_or_create if category_name
  title   ||= "Hello World %i"
  count.times do |i|
    Post.create! title: title % i, body: body, author: author, published_at: published, custom_category_id: category.try(:id), starred: starred
  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|
  first(:link, 'Posts').click
  click_link "New Post"
  fill_in 'post_title', with: title
  click_button "Create Post"
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
activeadmin_addons-1.1.2 vendor/bundle/ruby/2.3.0/bundler/gems/activeadmin-a5a53c3f2b8f/features/step_definitions/factory_steps.rb
activeadmin_addons-1.1.1 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/features/step_definitions/factory_steps.rb
activeadmin_addons-1.1.0 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/features/step_definitions/factory_steps.rb
activeadmin_addons-1.0.1 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/features/step_definitions/factory_steps.rb
activeadmin_addons-1.0.0 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/features/step_definitions/factory_steps.rb
activeadmin-1.0.0.pre2 features/step_definitions/factory_steps.rb