diff --git a/lib/open_food_network/reports/report.rb b/lib/open_food_network/reports/report.rb new file mode 100644 index 0000000000..f92e268765 --- /dev/null +++ b/lib/open_food_network/reports/report.rb @@ -0,0 +1,14 @@ +module OpenFoodNetwork::Reports + class Report + # -- API + def header + @@header + end + + + # -- DSL + def self.header(*columns) + @@header = columns + end + end +end diff --git a/spec/lib/open_food_network/reports/report_spec.rb b/spec/lib/open_food_network/reports/report_spec.rb new file mode 100644 index 0000000000..4b64ea0f23 --- /dev/null +++ b/spec/lib/open_food_network/reports/report_spec.rb @@ -0,0 +1,15 @@ +require 'open_food_network/reports/report' + +module OpenFoodNetwork::Reports + class TestReport < Report + header 'One', 'Two', 'Three' + end + + describe Report do + let(:report) { TestReport.new } + + it "returns the header" do + report.header.should == %w(One Two Three) + end + end +end