FactoryBot.define do
  factory :host_report do
    host
    reported_at { Time.now.utc }
    status { 0 }
    body { 'report data' }
  end

  trait :with_keyword do
    transient do
      name { 'HasError' }
    end
    after(:build) do |report, evaluator|
      report.report_keyword_ids = [FactoryBot.create(:report_keyword, name: evaluator.name).id]
    end
  end

  factory :report_keyword do
    sequence(:name) { |n| "Keyword-#{n}" }
  end
end