diff options
author | Louise Crow <louise.crow@gmail.com> | 2012-08-28 13:43:56 +0100 |
---|---|---|
committer | Louise Crow <louise.crow@gmail.com> | 2012-08-28 13:43:56 +0100 |
commit | f1797b4868a01a27cefef53416da0acca47cac7f (patch) | |
tree | 9fbed1e506ef1232650eb8f79cc5d7d4ef5d2478 /spec/lib | |
parent | 127db1e4bb4fee2d480855b30a330baca459404a (diff) |
Add headings and by_heading accessors to PublicBodyCategories to allow easier access to headings and to tags associated with a particular heading.
Diffstat (limited to 'spec/lib')
-rw-r--r-- | spec/lib/public_body_categories_spec.rb | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/spec/lib/public_body_categories_spec.rb b/spec/lib/public_body_categories_spec.rb new file mode 100644 index 000000000..e53d9a028 --- /dev/null +++ b/spec/lib/public_body_categories_spec.rb @@ -0,0 +1,42 @@ +require File.expand_path(File.dirname(__FILE__) + '/../spec_helper') + +describe PublicBodyCategories do + + before do + load_test_categories + end + + describe 'when asked for categories with headings' do + + it 'should return a list of headings as plain strings, each followed by n tag specifications as + lists in the form: + ["tag_to_use_as_category", "Sub category title", "Instance description"]' do + expected_categories = ["Local and regional", ["local_council", + "Local councils", + "a local council"], + "Miscellaneous", ["other", + "Miscellaneous", + "miscellaneous"]] + PublicBodyCategories::get().with_headings().should == expected_categories + end + + end + + describe 'when asked for headings' do + + it 'should return a list of headings' do + PublicBodyCategories::get().headings().should == ['Local and regional', 'Miscellaneous'] + end + + end + + describe 'when asked for tags by headings' do + + it 'should return a hash of tags keyed by heading' do + PublicBodyCategories::get().by_heading().should == {'Local and regional' => ['local_council'], + 'Miscellaneous' => ['other']} + end + + end + +end
\ No newline at end of file |