Commit 9eb00efa35aada9cea741f06528aa0b5e7bc6110
1 parent
be5eca41
Exists in
master
and in
23 other branches
Updated SearchControllerTest
Showing
1 changed file
with
332 additions
and
7 deletions
Show diff stats
test/functional/search_controller_test.rb
| ... | ... | @@ -72,7 +72,23 @@ class SearchControllerTest < ActionController::TestCase |
| 72 | 72 | |
| 73 | 73 | get 'articles', :query => 'article found' |
| 74 | 74 | assert_includes assigns(:results)[:articles], art |
| 75 | - assert !assigns(:results)[:articles].facets.nil? | |
| 75 | + end | |
| 76 | + | |
| 77 | + should 'get facets with articles search results' do | |
| 78 | + cat1 = fast_create(Category, :name => 'cat1') | |
| 79 | + cat2 = fast_create(Category, :name => 'cat2') | |
| 80 | + person = fast_create(Person) | |
| 81 | + art = create_article_with_optional_category('an article to be found', person) | |
| 82 | + art.add_category cat1, false | |
| 83 | + art.add_category cat2, true | |
| 84 | + art.save! | |
| 85 | + | |
| 86 | + get 'articles', :query => 'article found' | |
| 87 | + assert !assigns(:results)[:articles].facets.blank? | |
| 88 | + assert assigns(:results)[:articles].facets['facet_fields']['f_type_facet'][0][0] == 'Article' | |
| 89 | + assert assigns(:results)[:articles].facets['facet_fields']['f_profile_type_facet'][0][0] == 'Person' | |
| 90 | + assert assigns(:results)[:articles].facets['facet_fields']['f_category_facet'][0][0] == 'cat1' | |
| 91 | + assert assigns(:results)[:articles].facets['facet_fields']['f_category_facet'][1][0] == 'cat2' | |
| 76 | 92 | end |
| 77 | 93 | |
| 78 | 94 | should 'redirect contents to articles' do |
| ... | ... | @@ -113,11 +129,29 @@ class SearchControllerTest < ActionController::TestCase |
| 113 | 129 | assert_includes assigns(:results)[:enterprises], ent2 |
| 114 | 130 | end |
| 115 | 131 | |
| 116 | - should 'find people' do | |
| 132 | + should 'search for people' do | |
| 117 | 133 | p1 = create_user('people_1').person; p1.name = 'a beautiful person'; p1.save! |
| 118 | 134 | get :people, :query => 'beautiful' |
| 119 | 135 | assert_includes assigns(:results)[:people], p1 |
| 120 | - assert !assigns(:results)[:people].facets.nil? | |
| 136 | + end | |
| 137 | + | |
| 138 | + should 'get facets with people search results' do | |
| 139 | + state = fast_create(State, :name => 'Acre', :acronym => 'AC') | |
| 140 | + city = fast_create(City, :name => 'Rio Branco', :parent_id => state.id) | |
| 141 | + person = Person.create!(:name => 'Hildebrando', :identifier => 'hild', :user_id => fast_create(User).id) | |
| 142 | + person.region = city | |
| 143 | + cat1 = fast_create(Category, :name => 'cat1') | |
| 144 | + cat2 = fast_create(Category, :name => 'cat2') | |
| 145 | + person.add_category cat1, false | |
| 146 | + person.add_category cat2, true | |
| 147 | + person.save! | |
| 148 | + | |
| 149 | + get 'people', :query => 'Hildebrando' | |
| 150 | + | |
| 151 | + assert !assigns(:results)[:people].facets.blank? | |
| 152 | + assert assigns(:results)[:people].facets['facet_fields']['f_region_facet'][0][0] == city.id.to_s | |
| 153 | + assert assigns(:results)[:people].facets['facet_fields']['f_categories_facet'][0][0] == cat1.id.to_s | |
| 154 | + assert assigns(:results)[:people].facets['facet_fields']['f_categories_facet'][1][0] == cat2.id.to_s | |
| 121 | 155 | end |
| 122 | 156 | |
| 123 | 157 | # 'assets' menu outside any category |
| ... | ... | @@ -148,12 +182,30 @@ class SearchControllerTest < ActionController::TestCase |
| 148 | 182 | assert_equivalent [c2, c1], assigns(:results)[:communities] |
| 149 | 183 | end |
| 150 | 184 | |
| 151 | - should 'find products' do | |
| 185 | + should 'search for products' do | |
| 152 | 186 | ent = create_profile_with_optional_category(Enterprise, 'teste') |
| 153 | 187 | prod = ent.products.create!(:name => 'a beautiful product', :product_category => @product_category) |
| 154 | 188 | get :products, :query => 'beautiful' |
| 155 | 189 | assert_includes assigns(:results)[:products], prod |
| 156 | - assert !assigns(:results)[:products].facets.nil? | |
| 190 | + end | |
| 191 | + | |
| 192 | + should 'get facets with products search results' do | |
| 193 | + state = fast_create(State, :name => 'Acre', :acronym => 'AC') | |
| 194 | + city = fast_create(City, :name => 'Rio Branco', :parent_id => state.id) | |
| 195 | + ent = fast_create(Enterprise, :region_id => city.id) | |
| 196 | + prod = Product.create!(:name => 'Sound System', :enterprise_id => ent.id, :product_category_id => @product_category.id) | |
| 197 | + qualifier1 = fast_create(Qualifier) | |
| 198 | + qualifier2 = fast_create(Qualifier) | |
| 199 | + prod.qualifiers_list = [[qualifier1.id, 0], [qualifier2.id, 0]] | |
| 200 | + prod.qualifiers.reload | |
| 201 | + prod.save! | |
| 202 | + | |
| 203 | + get 'products', :query => 'Sound' | |
| 204 | + assert !assigns(:results)[:products].facets.blank? | |
| 205 | + assert assigns(:results)[:products].facets['facet_fields']['f_category_facet'][0][0] == @product_category.name | |
| 206 | + assert assigns(:results)[:products].facets['facet_fields']['f_region_facet'][0][0] == city.id.to_s | |
| 207 | + assert assigns(:results)[:products].facets['facet_fields']['f_qualifier_facet'][0][0] == "#{qualifier1.id} 0" | |
| 208 | + assert assigns(:results)[:products].facets['facet_fields']['f_qualifier_facet'][1][0] == "#{qualifier2.id} 0" | |
| 157 | 209 | end |
| 158 | 210 | |
| 159 | 211 | # 'assets' menu outside any category |
| ... | ... | @@ -168,6 +220,7 @@ class SearchControllerTest < ActionController::TestCase |
| 168 | 220 | |
| 169 | 221 | get :products |
| 170 | 222 | assert_equivalent [prod2, prod1], assigns(:results)[:products].docs |
| 223 | + assert_match 'Highlights', @response.body | |
| 171 | 224 | end |
| 172 | 225 | |
| 173 | 226 | should 'include extra content supplied by plugins on product asset' do |
| ... | ... | @@ -296,11 +349,25 @@ class SearchControllerTest < ActionController::TestCase |
| 296 | 349 | |
| 297 | 350 | get :index, :query => prod_cat.name |
| 298 | 351 | |
| 299 | - assert assigns(:facets).empty? | |
| 352 | + assert assigns(:facets).blank? | |
| 300 | 353 | assert_nil assigns(:results)[:enterprises].facets |
| 301 | 354 | assert_nil assigns(:results)[:products].facets |
| 302 | 355 | end |
| 303 | 356 | |
| 357 | + should 'render specific action when only one asset is enabled' do | |
| 358 | + # initialize @controller.environment | |
| 359 | + get :index | |
| 360 | + | |
| 361 | + # article is not disabled | |
| 362 | + [:enterprises, :people, :communities, :products, :events].select do |key, name| | |
| 363 | + @controller.environment.enable('disable_asset_' + key.to_s) | |
| 364 | + end | |
| 365 | + | |
| 366 | + @controller.expects(:articles) | |
| 367 | + | |
| 368 | + get :index, :query => 'something' | |
| 369 | + end | |
| 370 | + | |
| 304 | 371 | should 'search all enabled assets in general search' do |
| 305 | 372 | ent1 = create_profile_with_optional_category(Enterprise, 'test enterprise') |
| 306 | 373 | prod_cat = ProductCategory.create!(:name => 'pctest', :environment => Environment.default) |
| ... | ... | @@ -340,6 +407,50 @@ class SearchControllerTest < ActionController::TestCase |
| 340 | 407 | assert !assigns(:results)[:events].facets.nil? |
| 341 | 408 | end |
| 342 | 409 | |
| 410 | + should 'return events of the day' do | |
| 411 | + person = create_user('someone').person | |
| 412 | + ev1 = create_event(person, :name => 'event 1', :category_ids => [@category.id], :start_date => Date.today - 10.day) | |
| 413 | + ev2 = create_event(person, :name => 'event 2', :category_ids => [@category.id], :start_date => Date.today - 2.month) | |
| 414 | + | |
| 415 | + get :events, :day => (Date.today - 10.day).day | |
| 416 | + | |
| 417 | + assert_equal [ev1], assigns(:events_of_the_day) | |
| 418 | + end | |
| 419 | + | |
| 420 | + should 'return events of the day with category' do | |
| 421 | + person = create_user('someone').person | |
| 422 | + ev1 = create_event(person, :name => 'event 1', :category_ids => [@category.id], :start_date => Date.today - 10.day) | |
| 423 | + ev2 = create_event(person, :name => 'event 2', :start_date => Date.today - 10.day) | |
| 424 | + | |
| 425 | + get :events, :day => (Date.today - 10.day).day, :category_path => @category.path.split('/') | |
| 426 | + | |
| 427 | + assert_equal [ev1], assigns(:events_of_the_day) | |
| 428 | + end | |
| 429 | + | |
| 430 | + should 'return events of today when no date specified' do | |
| 431 | + person = create_user('someone').person | |
| 432 | + ev1 = create_event(person, :name => 'event 1', :category_ids => [@category.id], :start_date => Date.today) | |
| 433 | + ev2 = create_event(person, :name => 'event 2', :category_ids => [@category.id], :start_date => Date.today - 2.month) | |
| 434 | + | |
| 435 | + get :events | |
| 436 | + | |
| 437 | + assert_equal [ev1], assigns(:events_of_the_day) | |
| 438 | + end | |
| 439 | + | |
| 440 | + should 'show events for current month by default' do | |
| 441 | + person = create_user('someone').person | |
| 442 | + | |
| 443 | + ev1 = create_event(person, :name => 'event 1', :category_ids => [@category.id], | |
| 444 | + :start_date => Date.today + 2.month) | |
| 445 | + ev2 = create_event(person, :name => 'event 2', :category_ids => [@category.id], | |
| 446 | + :start_date => Date.today + 2.day) | |
| 447 | + | |
| 448 | + get :events | |
| 449 | + | |
| 450 | + assert_not_includes assigns(:results)[:events], ev1 | |
| 451 | + assert_includes assigns(:results)[:events], ev2 | |
| 452 | + end | |
| 453 | + | |
| 343 | 454 | should 'list events for a given month' do |
| 344 | 455 | person = create_user('testuser').person |
| 345 | 456 | |
| ... | ... | @@ -369,8 +480,46 @@ class SearchControllerTest < ActionController::TestCase |
| 369 | 480 | assert_includes assigns(:results)[:products], p |
| 370 | 481 | end |
| 371 | 482 | |
| 372 | - should 'display properly in conjuntion with a category' do | |
| 483 | + # Testing random sequences always have a small chance of failing | |
| 484 | + should 'randomize product display in empty search' do | |
| 485 | + prod_cat = ProductCategory.create!(:name => 'prod cat test', :environment => Environment.default) | |
| 486 | + ent = create_profile_with_optional_category(Enterprise, 'test enterprise') | |
| 487 | + (1..SearchController::LIST_SEARCH_LIMIT+5).each do |n| | |
| 488 | + fast_create(Product, {:name => "produto #{n}", :enterprise_id => ent.id, :product_category_id => prod_cat.id}, :search => true) | |
| 489 | + end | |
| 490 | + | |
| 491 | + get :products | |
| 492 | + result1 = assigns(:results)[:products].docs.map(&:id) | |
| 493 | + | |
| 494 | + (1..10).each do |n| | |
| 495 | + get :products | |
| 496 | + end | |
| 497 | + result2 = assigns(:results)[:products].docs.map(&:id) | |
| 498 | + | |
| 499 | + assert_not_equal result1, result2 | |
| 500 | + end | |
| 501 | + | |
| 502 | + should 'order products by geolocalization in empty search' do | |
| 503 | + user = create_user('a_logged_user') | |
| 504 | + user.person.lat = '1.0' | |
| 505 | + user.person.lng = '1.0' | |
| 506 | + # trigger geosearch | |
| 507 | + SearchController.any_instance.stubs(:logged_in?).returns(true) | |
| 508 | + SearchController.any_instance.stubs(:current_user).returns(user) | |
| 509 | + | |
| 510 | + cat = fast_create(ProductCategory) | |
| 511 | + ent1 = Enterprise.create!(:name => 'ent1', :identifier => 'ent1', :lat => '-5.0', :lng => '-5.0') | |
| 512 | + prod1 = Product.create!(:name => 'produto 1', :enterprise_id => ent1.id, :product_category_id => cat.id) | |
| 513 | + ent2 = Enterprise.create!(:name => 'ent2', :identifier => 'ent2', :lat => '2.0', :lng => '2.0') | |
| 514 | + prod2 = Product.create!(:name => 'produto 2', :enterprise_id => ent2.id, :product_category_id => cat.id) | |
| 515 | + ent3 = Enterprise.create!(:name => 'ent3', :identifier => 'ent3', :lat => '10.0', :lng => '10.0') | |
| 516 | + prod3 = Product.create!(:name => 'produto 3', :enterprise_id => ent3.id, :product_category_id => cat.id) | |
| 517 | + | |
| 518 | + get :products | |
| 519 | + assert_equal [prod2, prod1, prod3], assigns(:results)[:products].docs | |
| 520 | + end | |
| 373 | 521 | |
| 522 | + should 'display properly in conjuntion with a category' do | |
| 374 | 523 | cat = Category.create(:name => 'cat', :environment => Environment.default) |
| 375 | 524 | prod_cat1 = ProductCategory.create!(:name => 'prod cat test 1', :environment => Environment.default) |
| 376 | 525 | prod_cat2 = ProductCategory.create!(:name => 'prod cat test 2', :environment => Environment.default, :parent => prod_cat1) |
| ... | ... | @@ -586,6 +735,182 @@ class SearchControllerTest < ActionController::TestCase |
| 586 | 735 | assert_redirected_to :controller => :search, :action => :events |
| 587 | 736 | end |
| 588 | 737 | |
| 738 | + should 'show tag cloud' do | |
| 739 | + @controller.stubs(:is_cache_expired?).returns(true) | |
| 740 | + a = Article.create!(:name => 'my article', :profile_id => fast_create(Person).id) | |
| 741 | + a.tag_list = ['one', 'two'] | |
| 742 | + a.save_tags | |
| 743 | + | |
| 744 | + get :tags | |
| 745 | + | |
| 746 | + assert assigns(:tags)["two"] = 1 | |
| 747 | + assert assigns(:tags)["one"] = 1 | |
| 748 | + end | |
| 749 | + | |
| 750 | + should 'show tagged content' do | |
| 751 | + @controller.stubs(:is_cache_expired?).returns(true) | |
| 752 | + a = Article.create!(:name => 'my article', :profile_id => fast_create(Person).id) | |
| 753 | + a2 = Article.create!(:name => 'my article 2', :profile_id => fast_create(Person).id) | |
| 754 | + a.tag_list = ['one', 'two'] | |
| 755 | + a2.tag_list = ['two', 'three'] | |
| 756 | + a.save_tags | |
| 757 | + a2.save_tags | |
| 758 | + | |
| 759 | + get :tag, :tag => 'two' | |
| 760 | + | |
| 761 | + assert_equal [a, a2], assigns(:results)[:tag] | |
| 762 | + | |
| 763 | + get :tag, :tag => 'one' | |
| 764 | + | |
| 765 | + assert_equal [a], assigns(:results)[:tag] | |
| 766 | + end | |
| 767 | + | |
| 768 | + should 'not show assets from other environments' do | |
| 769 | + other_env = Environment.create!(:name => 'Another environment') | |
| 770 | + p1 = Person.create!(:name => 'Hildebrando', :identifier => 'hild', :user_id => fast_create(User).id, :environment_id => other_env.id) | |
| 771 | + p2 = Person.create!(:name => 'Adamastor', :identifier => 'adam', :user_id => fast_create(User).id) | |
| 772 | + art1 = Article.create!(:name => 'my article', :profile_id => p1.id) | |
| 773 | + art2 = Article.create!(:name => 'my article', :profile_id => p2.id) | |
| 774 | + | |
| 775 | + get :articles, :query => 'my article' | |
| 776 | + | |
| 777 | + assert_equal [art2], assigns(:results)[:articles].docs | |
| 778 | + end | |
| 779 | + | |
| 780 | + should 'order product results by more recent when requested' do | |
| 781 | + ent = fast_create(Enterprise) | |
| 782 | + prod1 = Product.create!(:name => 'product 1', :enterprise_id => ent.id, :product_category_id => @product_category.id) | |
| 783 | + prod2 = Product.create!(:name => 'product 2', :enterprise_id => ent.id, :product_category_id => @product_category.id) | |
| 784 | + prod3 = Product.create!(:name => 'product 3', :enterprise_id => ent.id, :product_category_id => @product_category.id) | |
| 785 | + | |
| 786 | + prod3.name = 'product 4' | |
| 787 | + prod3.save! | |
| 788 | + prod1.name = 'product 5' | |
| 789 | + prod1.save! | |
| 790 | + prod2.name = 'product 6' | |
| 791 | + prod2.save! | |
| 792 | + | |
| 793 | + get :products, :query => 'product', :order_by => :more_recent | |
| 794 | + | |
| 795 | + assert_equal [prod2, prod1, prod3], assigns(:results)[:products].docs | |
| 796 | + end | |
| 797 | + | |
| 798 | + should 'order product results by name when requested' do | |
| 799 | + ent = fast_create(Enterprise) | |
| 800 | + prod1 = Product.create!(:name => 'product 1', :enterprise_id => ent.id, :product_category_id => @product_category.id) | |
| 801 | + prod2 = Product.create!(:name => 'product 2', :enterprise_id => ent.id, :product_category_id => @product_category.id) | |
| 802 | + prod3 = Product.create!(:name => 'product 3', :enterprise_id => ent.id, :product_category_id => @product_category.id) | |
| 803 | + | |
| 804 | + prod3.name = 'product A' | |
| 805 | + prod3.save! | |
| 806 | + prod1.name = 'product B' | |
| 807 | + prod1.save! | |
| 808 | + prod2.name = 'product C' | |
| 809 | + prod2.save! | |
| 810 | + | |
| 811 | + get :products, :query => 'product', :order_by => :name | |
| 812 | + | |
| 813 | + assert_equal [prod3, prod1, prod2], assigns(:results)[:products].docs | |
| 814 | + end | |
| 815 | + | |
| 816 | + should 'order product results by closest when requested' do | |
| 817 | + user = create_user('a_logged_user') | |
| 818 | + user.person.lat = '1.0' | |
| 819 | + user.person.lng = '1.0' | |
| 820 | + # trigger geosearch | |
| 821 | + SearchController.any_instance.stubs(:logged_in?).returns(true) | |
| 822 | + SearchController.any_instance.stubs(:current_user).returns(user) | |
| 823 | + | |
| 824 | + cat = fast_create(ProductCategory) | |
| 825 | + ent1 = Enterprise.create!(:name => 'ent1', :identifier => 'ent1', :lat => '-5.0', :lng => '-5.0') | |
| 826 | + prod1 = Product.create!(:name => 'product 1', :enterprise_id => ent1.id, :product_category_id => cat.id) | |
| 827 | + ent2 = Enterprise.create!(:name => 'ent2', :identifier => 'ent2', :lat => '2.0', :lng => '2.0') | |
| 828 | + prod2 = Product.create!(:name => 'product 2', :enterprise_id => ent2.id, :product_category_id => cat.id) | |
| 829 | + ent3 = Enterprise.create!(:name => 'ent3', :identifier => 'ent3', :lat => '10.0', :lng => '10.0') | |
| 830 | + prod3 = Product.create!(:name => 'product 3', :enterprise_id => ent3.id, :product_category_id => cat.id) | |
| 831 | + | |
| 832 | + get :products, :query => 'product', :order_by => :closest | |
| 833 | + assert_equal [prod2, prod1, prod3], assigns(:results)[:products].docs | |
| 834 | + end | |
| 835 | + | |
| 836 | + | |
| 837 | + should 'order events by name when requested' do | |
| 838 | + person = create_user('someone').person | |
| 839 | + ev1 = create_event(person, :name => 'party B', :category_ids => [@category.id], :start_date => Date.today - 10.day) | |
| 840 | + ev2 = create_event(person, :name => 'party A', :category_ids => [@category.id], :start_date => Date.today - 2.month) | |
| 841 | + | |
| 842 | + get :events, :query => 'party', :order_by => :name | |
| 843 | + | |
| 844 | + assert_equal [ev2, ev1], assigns(:results)[:events].docs | |
| 845 | + end | |
| 846 | + | |
| 847 | + should 'order articles by name when requested' do | |
| 848 | + art1 = Article.create!(:name => 'review C', :profile_id => fast_create(Person).id) | |
| 849 | + art2 = Article.create!(:name => 'review A', :profile_id => fast_create(Person).id) | |
| 850 | + art3 = Article.create!(:name => 'review B', :profile_id => fast_create(Person).id) | |
| 851 | + | |
| 852 | + get :articles, :query => 'review', :order_by => :name | |
| 853 | + | |
| 854 | + assert_equal [art2, art3, art1], assigns(:results)[:articles].docs | |
| 855 | + end | |
| 856 | + | |
| 857 | + should 'order articles by more recent' do | |
| 858 | + art1 = Article.create!(:name => 'review C', :profile_id => fast_create(Person).id) | |
| 859 | + art2 = Article.create!(:name => 'review A', :profile_id => fast_create(Person).id) | |
| 860 | + art3 = Article.create!(:name => 'review B', :profile_id => fast_create(Person).id) | |
| 861 | + | |
| 862 | + art1.name = 'review 10' | |
| 863 | + art1.save! | |
| 864 | + art3.name = 'review 87' | |
| 865 | + art3.save! | |
| 866 | + art2.name = 'review 54' | |
| 867 | + art2.save! | |
| 868 | + | |
| 869 | + get :articles, :query => 'review', :order_by => :more_recent | |
| 870 | + | |
| 871 | + assert_equal [art2, art3, art1], assigns(:results)[:articles].docs | |
| 872 | + end | |
| 873 | + | |
| 874 | + should 'order enterprise results by name when requested' do | |
| 875 | + ent1 = Enterprise.create!(:name => 'Company B', :identifier => 'com_b') | |
| 876 | + ent2 = Enterprise.create!(:name => 'Company A', :identifier => 'com_a') | |
| 877 | + ent3 = Enterprise.create!(:name => 'Company C', :identifier => 'com_c') | |
| 878 | + | |
| 879 | + get :enterprises, :query => 'Company', :order_by => :name | |
| 880 | + | |
| 881 | + assert_equal [ent2, ent1, ent3], assigns(:results)[:enterprises].docs | |
| 882 | + end | |
| 883 | + | |
| 884 | + should 'order people results by name when requested' do | |
| 885 | + person1 = Person.create!(:name => 'Deodárbio Silva', :identifier => 'deod', :user_id => fast_create(User).id) | |
| 886 | + person2 = Person.create!(:name => 'Glislange Silva', :identifier => 'glis', :user_id => fast_create(User).id) | |
| 887 | + person3 = Person.create!(:name => 'Ausêncio Silva', :identifier => 'ause', :user_id => fast_create(User).id) | |
| 888 | + | |
| 889 | + get :people, :query => 'Silva', :order_by => :name | |
| 890 | + | |
| 891 | + assert_equal [person3, person1, person2], assigns(:results)[:people].docs | |
| 892 | + end | |
| 893 | + | |
| 894 | + should 'order community results by name when requested' do | |
| 895 | + com1 = Community.create!(:name => 'Yellow Group') | |
| 896 | + com2 = Community.create!(:name => 'Red Group') | |
| 897 | + com3 = Community.create!(:name => 'Green Group') | |
| 898 | + | |
| 899 | + get :communities, :query => 'Group', :order_by => :name | |
| 900 | + | |
| 901 | + assert_equal [com3, com2, com1], assigns(:results)[:communities].docs | |
| 902 | + end | |
| 903 | + | |
| 904 | + should 'raise error when requested to order by unknown filter' do | |
| 905 | + com1 = Community.create!(:name => 'Yellow Group') | |
| 906 | + com2 = Community.create!(:name => 'Red Group') | |
| 907 | + com3 = Community.create!(:name => 'Green Group') | |
| 908 | + | |
| 909 | + assert_raise RuntimeError do | |
| 910 | + get :communities, :query => 'Group', :order_by => :something | |
| 911 | + end | |
| 912 | + end | |
| 913 | + | |
| 589 | 914 | ################################################################## |
| 590 | 915 | ################################################################## |
| 591 | 916 | ... | ... |