Files
growstuff/spec/tasks/import_spec.rb
2026-04-23 14:30:02 +00:00

29 lines
1.0 KiB
Ruby

# frozen_string_literal: true
require 'rails_helper'
require 'rake'
describe 'import:australian_food_classification_data' do
before :all do
Rails.application.load_tasks
end
it "imports the data from the CSV file" do
Rake::Task['import:australian_food_classification_data'].invoke
expect(AustralianFoodClassificationData.count).to eq(2)
first_record = AustralianFoodClassificationData.find_by(public_food_key: 'F002258')
expect(first_record.food_name).to eq('Cardamom seed, dried, ground')
expect(first_record.protein_g).to eq(BigDecimal('10.8'))
second_record = AustralianFoodClassificationData.find_by(public_food_key: 'F002893')
expect(second_record.food_name).to eq('Chilli (chili), dried, ground')
expect(second_record.fat_total_g).to eq(BigDecimal('14.3'))
# Test idempotency
Rake::Task['import:australian_food_classification_data'].reenable
Rake::Task['import:australian_food_classification_data'].invoke
expect(AustralianFoodClassificationData.count).to eq(2)
end
end