Sha256: 77e06d39ef69d218d8626e27e829abae097dfb169e46fc7d9ba9ec2f64bc7305

Contents?: true

Size: 1.44 KB

Versions: 7

Compression:

Stored size: 1.44 KB

Contents

require 'factory_girl'
require 'alchemy/test_support/factories/language_factory'

FactoryGirl.define do
  factory :alchemy_page, class: 'Alchemy::Page' do
    language { Alchemy::Language.default || FactoryGirl.create(:alchemy_language) }
    sequence(:name) { |n| "A Page #{n}" }
    page_layout "standard"

    parent_id do
      (Alchemy::Page.find_by(language_root: true) ||
        FactoryGirl.create(:alchemy_page, :language_root)).id
    end

    # This speeds up creating of pages dramatically.
    # Pass do_not_autogenerate: false to generate elements
    do_not_autogenerate true

    trait :language_root do
      name 'Startseite'
      page_layout { language.page_layout }
      language_root true
      public_on { Time.current }
      parent_id { Alchemy::Page.root.id }
    end

    trait :public do
      sequence(:name) { |n| "A Public Page #{n}" }
      public_on { Time.current }
    end

    trait :system do
      name "Systempage"
      parent_id { Alchemy::Page.root.id }
      language_root false
      page_layout nil
      language nil
    end

    trait :layoutpage do
      name "Footer"
      parent_id { Alchemy::Page.find_or_create_layout_root_for(Alchemy::Language.current.id).id }
      page_layout "footer"
    end

    trait :restricted do
      name "Restricted page"
      restricted true
    end

    trait :locked do
      locked_at { Time.current }
      locked_by { SecureRandom.random_number(1_000_000_000) }
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
alchemy_cms-3.5.0 lib/alchemy/test_support/factories/page_factory.rb
alchemy_cms-3.4.2 lib/alchemy/test_support/factories/page_factory.rb
alchemy_cms-3.5.0.rc2 lib/alchemy/test_support/factories/page_factory.rb
alchemy_cms-3.5.0.rc1 lib/alchemy/test_support/factories/page_factory.rb
alchemy_cms-3.4.1 lib/alchemy/test_support/factories/page_factory.rb
alchemy_cms-3.4.0 lib/alchemy/test_support/factories/page_factory.rb
alchemy_cms-3.4.0.rc1 lib/alchemy/test_support/factories/page_factory.rb