Sha256: f41795039f4b6dc7cc10f768575bc9f0f2c8c01a21acf2c6783d15acec74adb7

Contents?: true

Size: 1.34 KB

Versions: 2

Compression:

Stored size: 1.34 KB

Contents

# frozen_string_literal: true
require "decidim/faker/localized"
require "decidim/dev"

FactoryGirl.define do
  factory :budget_feature, class: Decidim::Feature do
    name { Decidim::Features::Namer.new(participatory_process.organization.available_locales, :budgets).i18n_name }
    manifest_name :budgets
    participatory_process

    trait :with_total_budget_and_vote_threshold_percent do
      transient do
        total_budget 100_000_000
        vote_threshold_percent 70
      end

      settings do
        {
          total_budget: total_budget,
          vote_threshold_percent: vote_threshold_percent
        }
      end
    end
  end

  factory :project, class: Decidim::Budgets::Project do
    title { Decidim::Faker::Localized.sentence(3) }
    description { Decidim::Faker::Localized.wrapped("<p>", "</p>") { Decidim::Faker::Localized.sentence(4) } }
    short_description { Decidim::Faker::Localized.wrapped("<p>", "</p>") { Decidim::Faker::Localized.sentence(4) } }
    budget { Faker::Number.number(8) }
    feature { create(:budget_feature) }    
  end

  factory :order, class: Decidim::Budgets::Order do
    feature { create(:budget_feature) }
    user { create(:user, organization: feature.organization) }
  end

  factory :line_item, class: Decidim::Budgets::LineItem do
    order
    project { create(:project, feature: order.feature) }
  end
end

Version data entries

2 entries across 2 versions & 2 rubygems

Version Path
decidim-budgets-0.0.3 lib/decidim/budgets/test/factories.rb
decidim-0.0.3 decidim-budgets/lib/decidim/budgets/test/factories.rb