sql_search_n_sort 2.1.6 → 2.1.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/sql_search_n_sort/version.rb +1 -1
- metadata +53 -635
- data/test/dummy/README.rdoc +0 -28
- data/test/dummy/Rakefile +0 -6
- data/test/dummy/app/assets/javascripts/application.js +0 -13
- data/test/dummy/app/assets/stylesheets/application.css +0 -17
- data/test/dummy/app/controllers/admin/members_controller.rb +0 -7
- data/test/dummy/app/controllers/application_controller.rb +0 -7
- data/test/dummy/app/controllers/articles_controller.rb +0 -5
- data/test/dummy/app/controllers/items_controller.rb +0 -5
- data/test/dummy/app/controllers/people_controller.rb +0 -14
- data/test/dummy/app/controllers/products_controller.rb +0 -9
- data/test/dummy/app/controllers/unsearchables_controller.rb +0 -5
- data/test/dummy/app/controllers/vehicles_controller.rb +0 -15
- data/test/dummy/app/helpers/application_helper.rb +0 -2
- data/test/dummy/app/helpers/articles_helper.rb +0 -2
- data/test/dummy/app/models/admin/member.rb +0 -5
- data/test/dummy/app/models/article.rb +0 -8
- data/test/dummy/app/models/comment.rb +0 -6
- data/test/dummy/app/models/item.rb +0 -5
- data/test/dummy/app/models/person.rb +0 -15
- data/test/dummy/app/models/product.rb +0 -9
- data/test/dummy/app/models/unsearchable.rb +0 -5
- data/test/dummy/app/models/vehicle.rb +0 -9
- data/test/dummy/app/views/admin/members/index.html.haml +0 -19
- data/test/dummy/app/views/articles/index.html.haml +0 -17
- data/test/dummy/app/views/items/index.html.haml +0 -2
- data/test/dummy/app/views/layouts/application.html.erb +0 -14
- data/test/dummy/app/views/people/index.html.haml +0 -24
- data/test/dummy/app/views/people/search_only_index.html.haml +0 -22
- data/test/dummy/app/views/people/sort_only_index.html.haml +0 -22
- data/test/dummy/app/views/products/index.html.haml +0 -19
- data/test/dummy/app/views/unsearchables/index.html.haml +0 -1
- data/test/dummy/app/views/vehicles/index.html.haml +0 -23
- data/test/dummy/app/views/vehicles/search_only_index.html.haml +0 -21
- data/test/dummy/app/views/vehicles/sort_only_index.html.haml +0 -21
- data/test/dummy/bin/bundle +0 -3
- data/test/dummy/bin/rails +0 -4
- data/test/dummy/bin/rake +0 -4
- data/test/dummy/config/application.rb +0 -13
- data/test/dummy/config/boot.rb +0 -5
- data/test/dummy/config/database.yml +0 -50
- data/test/dummy/config/environment.rb +0 -5
- data/test/dummy/config/environments/development.rb +0 -20
- data/test/dummy/config/environments/production.rb +0 -26
- data/test/dummy/config/environments/test.rb +0 -24
- data/test/dummy/config/initializers/assets.rb +0 -8
- data/test/dummy/config/initializers/backtrace_silencers.rb +0 -7
- data/test/dummy/config/initializers/cookies_serializer.rb +0 -3
- data/test/dummy/config/initializers/filter_parameter_logging.rb +0 -4
- data/test/dummy/config/initializers/inflections.rb +0 -16
- data/test/dummy/config/initializers/mime_types.rb +0 -4
- data/test/dummy/config/initializers/session_store.rb +0 -3
- data/test/dummy/config/initializers/wrap_parameters.rb +0 -14
- data/test/dummy/config/locales/en.yml +0 -23
- data/test/dummy/config/routes.rb +0 -82
- data/test/dummy/config/secrets.yml +0 -22
- data/test/dummy/config.ru +0 -4
- data/test/dummy/db/development.sqlite3 +0 -0
- data/test/dummy/db/migrate/20140713221826_create_people.rb +0 -14
- data/test/dummy/db/migrate/20140715080028_create_vehicles.rb +0 -15
- data/test/dummy/db/migrate/20140723223003_create_products.rb +0 -13
- data/test/dummy/db/migrate/20140725015524_create_articles.rb +0 -12
- data/test/dummy/db/migrate/20140725161555_add_dob_and_grade_to_people.rb +0 -6
- data/test/dummy/db/migrate/20141003015903_create_unsearchables.rb +0 -17
- data/test/dummy/db/migrate/20150306040113_create_members.rb +0 -11
- data/test/dummy/db/migrate/20160121020023_create_comments.rb +0 -8
- data/test/dummy/db/migrate/20160121020232_add_timestamps_to_comments.rb +0 -5
- data/test/dummy/db/migrate/20160121020730_add_article_id_to_comments.rb +0 -5
- data/test/dummy/db/migrate/20160128023040_create_items.rb +0 -8
- data/test/dummy/db/schema.rb +0 -95
- data/test/dummy/db/test.sqlite3 +0 -0
- data/test/dummy/lib/tasks/sample_data.rake +0 -17
- data/test/dummy/log/development.log +0 -10599
- data/test/dummy/log/test.log +0 -33970
- data/test/dummy/public/404.html +0 -67
- data/test/dummy/public/422.html +0 -67
- data/test/dummy/public/500.html +0 -66
- data/test/dummy/public/favicon.ico +0 -0
- data/test/dummy/spec/factories/factory.rb +0 -48
- data/test/dummy/spec/helpers/sql_search_n_sort_helper_spec.rb +0 -38
- data/test/dummy/spec/models/comment_spec.rb +0 -55
- data/test/dummy/spec/models/member_spec.rb +0 -5
- data/test/dummy/spec/models/person_spec.rb +0 -151
- data/test/dummy/spec/models/product_spec.rb +0 -13
- data/test/dummy/spec/models/unsearchable_spec.rb +0 -37
- data/test/dummy/spec/models/vehicle_spec.rb +0 -21
- data/test/dummy/spec/requests/articles_spec.rb +0 -29
- data/test/dummy/spec/requests/items_spec.rb +0 -52
- data/test/dummy/spec/requests/members_spec.rb +0 -62
- data/test/dummy/spec/requests/people_spec.rb +0 -271
- data/test/dummy/spec/requests/products_spec.rb +0 -25
- data/test/dummy/spec/requests/vehicles_spec.rb +0 -172
- data/test/dummy/spec/spec_helper.rb +0 -95
- data/test/dummy/test/fixtures/people.yml +0 -17
- data/test/dummy/test/models/person_test.rb +0 -7
- data/test/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/1a3c6a30280d9edd208e090bd63e93f3 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/1dc2824e4f69b5f787cc0b33a280e1f7 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/2e8fbe25c4d3ab5d0233fc6e0b34f944 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/648c2e4578a1b3733059887e5541a92a +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/7761773b21e56b187ef1ef0faed07f4c +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/991d9baf4c0665d4114d00882965f72c +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/e6f3190c03c1c2b869d131e25d38eb7b +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/e8b18160729bab32f8368174bf32a9ce +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/f5e9a47f7b5b0c8b015b00f78ac9c128 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/-i/-iDIW233iLQCs4TOv2sN8awyhwP4vIrzcSrnFNoGDl4.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/-m/-m5gIKrqaKfAyBOH0YHEyCJ2JNF6Z1RGQIuKn3XUJGU.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/-o/-og1xpkfjRSlvjVRWZ4iiUm3qoz-L_pi3Fi_a-gfpwE.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/0E/0E8HYZfIilPTPbqrR87fRd2i1usV1lyaIW1Znk6C3fM.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/0cvWIagBCtC7wAcjse-4AbLGxfnEGsSilogLN85jNkM.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/0t/0tFFyRrRbkBw00f1VYfijxfqKDLW-Z-r9MY8uzEcppg.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/0tFFyRrRbkBw00f1VYfijxfqKDLW-Z-r9MY8uzEcppg.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/0x/0xtdB_ZmnVEQDSFk-r6J1xLicERVj-I35lw63CBR6ac.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/1O/1O4aluwu-JlBdN9Rh2hp9-PaqpftpvQkA-G0AAUjMpI.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/1O/1oFlMAoceXWhpe5P5pfOXR8puRTP26UinSi3P5jVng0.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/1Q/1QEWoTxIk8vnkmx9l_wJQcgkp74PRlihOXp8Ut9iHng.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/1W/1W4Id6XAEahzTfKCwGMTavr26wq68bsn3pklzLpYA6g.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/1l/1lDlwoKQsf1lX7JVzK4WDuknMsP5GxVUqBkUQx67lpE.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/21o0YLymXXvURVyA0m0EcbqJNgrRJQZvDafunQUA-f8.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/2F/2F0MfCYWrtdQKkCKirw68Ne7-v1zSDPOID99GaaiQMY.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/2W/2WOEqzPBA8ecFZwY-BrSorqFJ392vtAAmxx6FHIWBZ4.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/2o/2oSl4NZeW5YY38TIt0WwDKRYBdaqldQ8RPr1bDd99oM.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/2u/2uqq_Cu68J_bCR9MlnJp8CaIEYB9swX2P_gOa4O4SG8.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/3I/3IXRvPTaxseSdtg-5HKGzu8k6FMrJjAn_7f4pFUj7zY.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/3Y/3YBphsjeI-UnbSM4q7en0qmN5aP0PhbjmdDweEZcnF8.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/3YBphsjeI-UnbSM4q7en0qmN5aP0PhbjmdDweEZcnF8.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/3a/3aPgkA6W64jwiVl_gYac7FeJCsauxPeUmHHfcpYM7Ds.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/4M/4MPEAZicwRW6MV029x2Pqdx_MbIkpO_o9CA8cVMcyak.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/4a/4a_Tb7LB0-AaOLNFJQ23oCavko-_u22TxBLoThhLDsw.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/6DkkJEoqHjsd-EBBQ5v4w59_b2HSnJWyE8yzS80wwg0.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/6G/6GhU1iiUTkpDkp4B4K-eMgtUD-fb-0gKkqhIqG6DgI0.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/6H/6HtRU03PeRJwbIjzqZXyIgo7eWnCP4stgAiyEeGANOk.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/6P/6PuAerFIbhzJVDvtHrV6wybcXm67wsN3dDB5m5m-h9c.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/6n/6nbCzSTPj0gbB8te2lVKHk8iXCrf-6ihmgkEIgaGHcc.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/71oMzSlwmD4chop7gebGjwCKdUPSB02LiBHOjgE267I.cache +0 -3
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/7V/7V6WT4rh3m_HKZGepui0g5fbXkLiXTIS6GD9aE98tvk.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/7oAc0T0trm5BZgev_k115jFH7lJFwTM1f0V0XPdXdJo.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/8S/8SPmuhGn7UBdBy0uFs4RSfqisI4Idx7Gp5_lxCAuCHw.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/8S/8StFieqUmthm27Zpt5X6SO_sMp0l174KznjEdIsPYGs.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/8w/8wW2yRgnTahjbpJnRc_XLEypz_QvvS8YJSqjOcSpuE0.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/AU/AUmS1cQiTtbMAO8kIwBjru-cMBHGA3miuX9UW_Xnk38.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/B0/B0J5460DNwVjhkArXIFWFspvY1qlOrayhpMAip8seM0.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/CR/CRLY9GyJZSDpaj0bRQ9ToWA8Xj8lSgC-gYwb3lUlqrg.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Cz/Cz0tWD_PhizqtV37spVzvSoQ2uLepaEOcI27SdTyC6w.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ea/EatXLqh-0SqRsHmTjuWY7cbbKOrtH1cK-dWeyqtifqg.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/EiX12oWIAR5JULyMxtHhbSleg_e0tnGTvJFkdq9tzoU.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/F4/F45TUYCMDwkfhN4kzciejgGGN9BfwPHx6KSL3LWR77k.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/F9/F9Gw0FHmu3EqZzTAN7SZq66pdOAQnsBe3WDBZOfBI6E.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Hm/Hmohf0IlRTJQW0KEvifDZthh0yR6Yhqy9XXqKoKndhU.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/I4/I4vJkKA6yMu0yTuFmlQhXATI_B6L7D9kb_S1ssnUNe0.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/IC/ICGuAIBcg_OKmMdlWeGxzI7BSEp0lKq3ZKhEXnv1UGM.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/IC/ICgTMhvl94MKOQ4D1qyrY1iko1H5jNyd0y38p4rLPtA.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/J2/J23B2qMqF4T3G4rv_NjQe1adT8cohiTkymQrWTZL0qI.cache +0 -3
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ja/JaeTNBiHDvS6b3NHkGBkyaK6PJ_vX2ly7uxhH-2QbAg.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Js/Js3ZFLmNoJzUP4qOEmQ1BuCjH_cxnl2uck0-2dAaSC4.cache +0 -3
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/KV/KVFHGUxKuUAZGYa_kltw3Szm8RNDQRhJ4E0dgBmOT_M.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/KvYlN-SQkpS3lDL8vHHU4wncq2WaxnGqVHTnM3dVBcI.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Nl/NlrqBcnOvKkZZ4E9JHavmQALsfPVftEh3OQ1UcGh3VI.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/PM/PMZ0Ys_AhZOFRGbObwOkd1SwxNuokWaWX_vXCfnQRp4.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Pg/Pgzbifyc6Y09o0nOy34nzEStVMJf8HMzf_EfxGWJepU.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Qm/QmPTiCYRtSNjN-ErebUvh6op3xZjgoipAhYPGvwYElA.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Qw/Qwchx-I0Ge_ZtHC3S-_farqyu-OhXplHkK_YBF57mJU.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Qy/QyaxiIA8ZZYjbNTwJ6sG2arM66MWU1Vz6NYjEPrLDIU.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/R4/R49KxmZKkw7tKPKUu4zbjUuRePvvJfN6H6TLGGkLMeM.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/R49KxmZKkw7tKPKUu4zbjUuRePvvJfN6H6TLGGkLMeM.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Rl/Rl_ni8b40Kyjux1OGAivqBejE2YLlfD0XUyVrVQPo5k.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/S4/S4uXO4ibBfcUzi0Up4vz5NEMZHBty7EBR7m0_KwImr0.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Sz/SzBCO7s-w4sVRJioDbvcCIyPF33_9zhj6TsuDMEFX1U.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/T1/T11xbhY_E8Akp-klHcM1RPeGpxs8eUTD6tscarXP_wQ.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/TM/TMOlqSLPrnVLmBXmA2RAgWrbjqE-jFQ4qMKEcLmuhOs.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/TMOlqSLPrnVLmBXmA2RAgWrbjqE-jFQ4qMKEcLmuhOs.cache +0 -3
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/UH/UHiiv7h2X1GJL0oTM0pgvvRtueJDISheOUO7TXmKB7o.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/UN/UNVcKH3kb2FOEeESoEavLr165o2-hh69O681jilCsaA.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Uf/Ufcu0gSomOpX_8v2Uz5kl5vMX7v1IE9lY2R6fxbXSF8.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ul/UlYS-HyCRrmVRS3G22kXFfNbY_sQQG_F00Li3b1urB0.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Uq/Uq4b9QvwcGv5A3rBpA7h2cI1wARQ9Ra0xC9FcqGHqAk.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/V1/V1tTDD8EBuCIHbi1hLhOBQ2RWvhGhMTuhUE6-nM6WYs.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/VD62ncOlWhsVObMkoosdAYTjYAagtRqRlq7dWzBH-YQ.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/VJ/VJCjGdhLUSQBELuXvpgngIP-vHpo0DG5bzIMiTlUfmQ.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/VO/VOp1HbJx5CtJdwIAg7LeH--lFhg0znYqMiVa8szxJg4.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/WFrL_BJg7iA8fFQHNXf5qcuSmRvxZ-Vq0nt2xsPYOBY.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/WJ/WJVT3hilSOozeRsjHSQG2K_A9_H2KWuVkKSlflyFTaQ.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/WJVT3hilSOozeRsjHSQG2K_A9_H2KWuVkKSlflyFTaQ.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ys/YsuzSnTDP6tgEb-UqVDq_ZJFLOAPY3daBSogaUipFOA.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/YsuzSnTDP6tgEb-UqVDq_ZJFLOAPY3daBSogaUipFOA.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/YvpoxYAYKXZCpPpqyz8taIJ0bq-mW2drFSB-HtumXjk.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Z5/Z5AssyEDfaWG2L8bRzNOSe3_LeOBT3_4jMoC4awVsNQ.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/ZH/ZHaP7IhQf7zJUSxQqO4PfXmkYAkIcQWkewtkeohGdKU.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Zd/ZdWpEN6oD-5FKf-6K2vPmMVZpDiQw0LgA9JSDyouYbc.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/_B/_BACl9X5qsoDracPe1D_cibL7ptoKsQ_OIunE2nloJI.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/_V/_VYNVLTq9Vo3mTnWlex-YyUm7Bthhi2WOAh9e1BMYI4.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/_o/_orRraFA3GfRiXf9xbJHcYXRXEA3xi_IJhCkXjwlrUQ.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/a-/a-zDmrcz4kiKgZ_4sRhcNskSuIQbb5mJs7TibqPITgY.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/a98sq_hUkxi5DjWEJCVLIvxF6sDO6ioAoD_l6BcN8Ow.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/aR/aR2zGfIeHKHUb_WPyFx2kpt1ADkniisCtx_wAw6eGJE.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/ac/acKroO8df1-F2lt5a_VL3o-EG-jW1-W33xEtIIX7I3M.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/bF/bF5JW7TpLtqCDXEfJA5FO_dgPZMNlYGAv_O6cDCF7aQ.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/bG/bGofH6divH5GMSmFyIfS1INf7v_6rqEMgvVA-ta5KYs.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/bs/bsiPKk5Y5rKp7n5x8TrciS2IBAkLM-VHX-HFPvM3JmM.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/c3/c3PeWC6n1f4grZ2Ke3rrFy9hbtam2-UyyhJwXsqIXrE.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/c8/c8ANTL4AWW3XZ5u2IGEiXLs_JOgtASgqNl35vmNFpmo.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/cS/cSYmhs_w0Fp-rI0sZ0y0vooFhFmAhS3cmEPZOlWL_Wo.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/cc/cclHCWLceFUbx9LDeQvhjPPrvN78xSSr_g3VG-OnpDc.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/cx/cxN01hjKcQLVx0z9Nx6XQxMNCMV2mar5S-kREB8btnM.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/cxN01hjKcQLVx0z9Nx6XQxMNCMV2mar5S-kREB8btnM.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/d3XAJEBw6-hyXEYt0mrb6Ji6UlnTkqG43saW7kjYKzU.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/dB/dBFR5DL_ut5FGrjcGW2vH7LJwMb6HHC8CJ8B5Vec9Qg.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/dIQnSDVclgwATS3BUKbRbOnkxMAd5ivW52vIkPXJJfA.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/fl/fl3FZtRy0st1ZrRjaU-GyDcadz3oTFabml6YVk0Gpu0.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/gSts6z29DM61zuW_d28j7ccvBLkcKCpVyp89uJAEhxs.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/go/gomk_KJnrHu3O4KTeU96_PM-x-H033AZC_rtljPft5k.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/hk/hkHDfvT-l2bxoDyH46jNEoRDqBh8wmlJw24fzJ8GlHE.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/ht/HTSDH_tJfuZBcRyBiyz1zg8P6kZW3HVzlopOaIXh01M.cache +0 -3
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/ht/htsDCn8UJC_joySmkOCsaoywvTnYAqqDZSZDIFtdw5U.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/i2/i2abOmyoJE1Qgyp6-1U44JG3hbv_C3OK6Lrf3yeMiMU.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/jT/jTORTHXbihupIJnjHNyekjMCIGFtbqRGJCfwHnCtkkY.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/kpIf4ndtnwjkWPerMix3-BZtus40DqBNFHLrRC75_xo.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/ls/lstc1AyF79Aj4LhuPKtbQPyp4KQbaTyWAMT_yluRhsA.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/lstc1AyF79Aj4LhuPKtbQPyp4KQbaTyWAMT_yluRhsA.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/mW/mWLoYu1YcQqNSzXye6rFcwK5cOW6FTVTXZE5BL3rg8E.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/nS/nSYH09YEs8iYOeeEJLNBqvrs3qRJxTte64sa8t-WyqE.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/ng/ng0-2U_3QLUqP3p0SlmF-SY0-0Dbouelh1Mqanl88AQ.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/no/nopJJa1MNyFZaplJ1YH9eMi_jMAFHYSlmhjt5ch0TCQ.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/o0OePVZ22BaTOg3j2lmAgHD3gKuJ9hr86gRqYAbnUOU.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/oE/oEYvrdcbdOk5CRQTOvYoYnpIIVT5ngJUrpot_fe-BX4.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/oU/oUmbxl7BIU6wcomTicj0_HZm9vI6BpYwKXu0WzGy110.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/pBhzhehs64MyT2ev5JxnNamCq2-wgeKf6dOEwO05cuc.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/pQVkDsonl91Hjz2_q74NzQB26kUdzG7Ua4Dijl53vks.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/pn/pnW65E-tIPvuwCG33sZc7dGzOV9fSVofh2Ji89FWb6E.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/q0/q07maF_bvh12ZXKXBSmr_yUDYVmlRFQuslqNyyfsyO4.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/qS/qSOSpCRDoUWuQMTQOTjq_NINHgSTNX9aH84EwvEVH88.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/rX/rXcmbb_6blivlJ3kLZ09K8fOm0srq0hQjq9Bp11VPrQ.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/sW/sWewZI2HOyS-aoPDzVSHzMnUUjps4DnPYeEThkb-eTI.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/tR/tRoYWrUj3lDTBbmldDFq8ev2rGL5p98kuhXlYqVE4LI.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/u8/u8IrkKaLZHxBma24YNr9dyPZFwOHLlSYv9SZDEq9Cio.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/v3/v3uOGayYxVmvtPcfsaL0j6Yfy3FWZsIF3SQ3CkndarA.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/v9/v9lPVxdcJtNszFG-kPrEENPTGL4EZ7LFxFSTBnHoN4c.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/vW/vWZoWVUQfT_7iK0h5nTCNARhIbxvwD38nghop5wK_Fo.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/vx/vxfqhvVRti-jUTJp1s-OiVidGSkL85VANyCPKA4ZHbA.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/w-/w-cAfML0dXAoXAh8IGuaBUlOAu4hTcPxCzcvYbiqKLo.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/w3/w3-3t_hicD2cmNYkwLZ8NWdzQeBB7cmtpoXceE68lhM.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/w8/w80pBwhjnltHACzUTfnH7ho8NxhEpmGpr0j0v95xv3o.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/wCbL6wJrosVMTrgtLrEZTw8Q5OsiWYwgOQWCrswUAWM.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/wo/woV9_GoLL63stzluAXsHRj4LiFBDvvq0P0o63GTvaRc.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/wx/wxTEteHQssKcC2bVEj-BnqhIAY2IItpqDEUo7TWkUz0.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/xFzMUTEzz3zMFyM7keeadW67ZhFGfT6eQIoEUwXJJHM.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/xuDn5Xu8eeeS1bo7OLByCxPGqsiAfMIgh6b9-HypnLc.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/yn/ynyGjOfcM_kTHF0Og99MZm_63is9sRmy8oSeMtpim4M.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/z-/z-za69TtJe8JDJJ-8nd2CRatiGo3DC6MbfBJBOgMcrk.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/zS/zSnDkuXTmeuK3L0BqS1l7FBNY-KR0w1n65fxScYyhUA.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/zfdYb8gibHRGmYIwP9RP8Df2015Ybd6RbhF-yqa4OxU.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/zjpFdOUvJZMyKt2kM9KwtoSX703CWN2Gic5f0jYCLrM.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/zr4Syosj-1zS00lME30id2OT6mBn8G9fy9KKls0OYeA.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/1a3c6a30280d9edd208e090bd63e93f3 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/1dc2824e4f69b5f787cc0b33a280e1f7 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/629a9a26184f65bc7adea5578662128f +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/648c2e4578a1b3733059887e5541a92a +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/65c86772572f7601d47c9089124fe58e +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/7761773b21e56b187ef1ef0faed07f4c +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/991d9baf4c0665d4114d00882965f72c +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/e8b18160729bab32f8368174bf32a9ce +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
- data/test/generators/sql_search_n_sort/dummy_test_files/app/assets/javascripts/application.js +0 -13
- data/test/generators/sql_search_n_sort/dummy_test_files/app/controllers/application_controller.rb +0 -6
- data/test/generators/sql_search_n_sort/install_test.rb +0 -62
- data/test/generators/tmp/app/assets/javascripts/application.js +0 -13
- data/test/generators/tmp/app/controllers/application_controller.rb +0 -6
- data/test/test_helper.rb +0 -15
data/test/dummy/public/404.html
DELETED
@@ -1,67 +0,0 @@
|
|
1
|
-
<!DOCTYPE html>
|
2
|
-
<html>
|
3
|
-
<head>
|
4
|
-
<title>The page you were looking for doesn't exist (404)</title>
|
5
|
-
<meta name="viewport" content="width=device-width,initial-scale=1">
|
6
|
-
<style>
|
7
|
-
body {
|
8
|
-
background-color: #EFEFEF;
|
9
|
-
color: #2E2F30;
|
10
|
-
text-align: center;
|
11
|
-
font-family: arial, sans-serif;
|
12
|
-
margin: 0;
|
13
|
-
}
|
14
|
-
|
15
|
-
div.dialog {
|
16
|
-
width: 95%;
|
17
|
-
max-width: 33em;
|
18
|
-
margin: 4em auto 0;
|
19
|
-
}
|
20
|
-
|
21
|
-
div.dialog > div {
|
22
|
-
border: 1px solid #CCC;
|
23
|
-
border-right-color: #999;
|
24
|
-
border-left-color: #999;
|
25
|
-
border-bottom-color: #BBB;
|
26
|
-
border-top: #B00100 solid 4px;
|
27
|
-
border-top-left-radius: 9px;
|
28
|
-
border-top-right-radius: 9px;
|
29
|
-
background-color: white;
|
30
|
-
padding: 7px 12% 0;
|
31
|
-
box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
|
32
|
-
}
|
33
|
-
|
34
|
-
h1 {
|
35
|
-
font-size: 100%;
|
36
|
-
color: #730E15;
|
37
|
-
line-height: 1.5em;
|
38
|
-
}
|
39
|
-
|
40
|
-
div.dialog > p {
|
41
|
-
margin: 0 0 1em;
|
42
|
-
padding: 1em;
|
43
|
-
background-color: #F7F7F7;
|
44
|
-
border: 1px solid #CCC;
|
45
|
-
border-right-color: #999;
|
46
|
-
border-left-color: #999;
|
47
|
-
border-bottom-color: #999;
|
48
|
-
border-bottom-left-radius: 4px;
|
49
|
-
border-bottom-right-radius: 4px;
|
50
|
-
border-top-color: #DADADA;
|
51
|
-
color: #666;
|
52
|
-
box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
|
53
|
-
}
|
54
|
-
</style>
|
55
|
-
</head>
|
56
|
-
|
57
|
-
<body>
|
58
|
-
<!-- This file lives in public/404.html -->
|
59
|
-
<div class="dialog">
|
60
|
-
<div>
|
61
|
-
<h1>The page you were looking for doesn't exist.</h1>
|
62
|
-
<p>You may have mistyped the address or the page may have moved.</p>
|
63
|
-
</div>
|
64
|
-
<p>If you are the application owner check the logs for more information.</p>
|
65
|
-
</div>
|
66
|
-
</body>
|
67
|
-
</html>
|
data/test/dummy/public/422.html
DELETED
@@ -1,67 +0,0 @@
|
|
1
|
-
<!DOCTYPE html>
|
2
|
-
<html>
|
3
|
-
<head>
|
4
|
-
<title>The change you wanted was rejected (422)</title>
|
5
|
-
<meta name="viewport" content="width=device-width,initial-scale=1">
|
6
|
-
<style>
|
7
|
-
body {
|
8
|
-
background-color: #EFEFEF;
|
9
|
-
color: #2E2F30;
|
10
|
-
text-align: center;
|
11
|
-
font-family: arial, sans-serif;
|
12
|
-
margin: 0;
|
13
|
-
}
|
14
|
-
|
15
|
-
div.dialog {
|
16
|
-
width: 95%;
|
17
|
-
max-width: 33em;
|
18
|
-
margin: 4em auto 0;
|
19
|
-
}
|
20
|
-
|
21
|
-
div.dialog > div {
|
22
|
-
border: 1px solid #CCC;
|
23
|
-
border-right-color: #999;
|
24
|
-
border-left-color: #999;
|
25
|
-
border-bottom-color: #BBB;
|
26
|
-
border-top: #B00100 solid 4px;
|
27
|
-
border-top-left-radius: 9px;
|
28
|
-
border-top-right-radius: 9px;
|
29
|
-
background-color: white;
|
30
|
-
padding: 7px 12% 0;
|
31
|
-
box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
|
32
|
-
}
|
33
|
-
|
34
|
-
h1 {
|
35
|
-
font-size: 100%;
|
36
|
-
color: #730E15;
|
37
|
-
line-height: 1.5em;
|
38
|
-
}
|
39
|
-
|
40
|
-
div.dialog > p {
|
41
|
-
margin: 0 0 1em;
|
42
|
-
padding: 1em;
|
43
|
-
background-color: #F7F7F7;
|
44
|
-
border: 1px solid #CCC;
|
45
|
-
border-right-color: #999;
|
46
|
-
border-left-color: #999;
|
47
|
-
border-bottom-color: #999;
|
48
|
-
border-bottom-left-radius: 4px;
|
49
|
-
border-bottom-right-radius: 4px;
|
50
|
-
border-top-color: #DADADA;
|
51
|
-
color: #666;
|
52
|
-
box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
|
53
|
-
}
|
54
|
-
</style>
|
55
|
-
</head>
|
56
|
-
|
57
|
-
<body>
|
58
|
-
<!-- This file lives in public/422.html -->
|
59
|
-
<div class="dialog">
|
60
|
-
<div>
|
61
|
-
<h1>The change you wanted was rejected.</h1>
|
62
|
-
<p>Maybe you tried to change something you didn't have access to.</p>
|
63
|
-
</div>
|
64
|
-
<p>If you are the application owner check the logs for more information.</p>
|
65
|
-
</div>
|
66
|
-
</body>
|
67
|
-
</html>
|
data/test/dummy/public/500.html
DELETED
@@ -1,66 +0,0 @@
|
|
1
|
-
<!DOCTYPE html>
|
2
|
-
<html>
|
3
|
-
<head>
|
4
|
-
<title>We're sorry, but something went wrong (500)</title>
|
5
|
-
<meta name="viewport" content="width=device-width,initial-scale=1">
|
6
|
-
<style>
|
7
|
-
body {
|
8
|
-
background-color: #EFEFEF;
|
9
|
-
color: #2E2F30;
|
10
|
-
text-align: center;
|
11
|
-
font-family: arial, sans-serif;
|
12
|
-
margin: 0;
|
13
|
-
}
|
14
|
-
|
15
|
-
div.dialog {
|
16
|
-
width: 95%;
|
17
|
-
max-width: 33em;
|
18
|
-
margin: 4em auto 0;
|
19
|
-
}
|
20
|
-
|
21
|
-
div.dialog > div {
|
22
|
-
border: 1px solid #CCC;
|
23
|
-
border-right-color: #999;
|
24
|
-
border-left-color: #999;
|
25
|
-
border-bottom-color: #BBB;
|
26
|
-
border-top: #B00100 solid 4px;
|
27
|
-
border-top-left-radius: 9px;
|
28
|
-
border-top-right-radius: 9px;
|
29
|
-
background-color: white;
|
30
|
-
padding: 7px 12% 0;
|
31
|
-
box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
|
32
|
-
}
|
33
|
-
|
34
|
-
h1 {
|
35
|
-
font-size: 100%;
|
36
|
-
color: #730E15;
|
37
|
-
line-height: 1.5em;
|
38
|
-
}
|
39
|
-
|
40
|
-
div.dialog > p {
|
41
|
-
margin: 0 0 1em;
|
42
|
-
padding: 1em;
|
43
|
-
background-color: #F7F7F7;
|
44
|
-
border: 1px solid #CCC;
|
45
|
-
border-right-color: #999;
|
46
|
-
border-left-color: #999;
|
47
|
-
border-bottom-color: #999;
|
48
|
-
border-bottom-left-radius: 4px;
|
49
|
-
border-bottom-right-radius: 4px;
|
50
|
-
border-top-color: #DADADA;
|
51
|
-
color: #666;
|
52
|
-
box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
|
53
|
-
}
|
54
|
-
</style>
|
55
|
-
</head>
|
56
|
-
|
57
|
-
<body>
|
58
|
-
<!-- This file lives in public/500.html -->
|
59
|
-
<div class="dialog">
|
60
|
-
<div>
|
61
|
-
<h1>We're sorry, but something went wrong.</h1>
|
62
|
-
</div>
|
63
|
-
<p>If you are the application owner check the logs for more information.</p>
|
64
|
-
</div>
|
65
|
-
</body>
|
66
|
-
</html>
|
File without changes
|
@@ -1,48 +0,0 @@
|
|
1
|
-
FactoryGirl.define do
|
2
|
-
|
3
|
-
factory :person do
|
4
|
-
sequence(:first_name) { |n| "John_#{n}" }
|
5
|
-
sequence(:last_name) { |n| "Doe_#{n}" }
|
6
|
-
sequence(:email) { |n| "johndoesemail_#{n}@domain.com"}
|
7
|
-
age {Random.rand(15..99)}
|
8
|
-
bio "Some text here"
|
9
|
-
sequence(:nickname) { |n| "nick_#{n}" }
|
10
|
-
end
|
11
|
-
|
12
|
-
factory :member, class: Admin::Member do
|
13
|
-
sequence(:first_name) { |n| "John_#{n}" }
|
14
|
-
sequence(:last_name) { |n| "Doe_#{n}" }
|
15
|
-
sequence(:email) { |n| "johndoesemail_#{n}@domain.com"}
|
16
|
-
end
|
17
|
-
|
18
|
-
factory :vehicle do
|
19
|
-
year 2010
|
20
|
-
manufacturer "Chevrolet"
|
21
|
-
model "Silverado"
|
22
|
-
engine "5.0 liter"
|
23
|
-
color "Pewter"
|
24
|
-
end
|
25
|
-
|
26
|
-
factory :product do
|
27
|
-
sequence(:name) { |n| "cog_#{n}" }
|
28
|
-
sequence(:descr) { |n| "random description #{n}" }
|
29
|
-
sequence(:price) { |n| "#{n}" }
|
30
|
-
sequence(:date_produced) { |n| Time.now - n.days }
|
31
|
-
sequence(:manufacturer) { |n| "Company #{n}" }
|
32
|
-
end
|
33
|
-
|
34
|
-
|
35
|
-
factory :article do
|
36
|
-
sequence(:headline) { |n| "Headline #{n}" }
|
37
|
-
sequence(:by_line) { |n| "Journalist #{n}" }
|
38
|
-
sequence(:date_pub) { |n| Time.now - n.days }
|
39
|
-
sequence(:body) { |n| "The main article... #{n}" }
|
40
|
-
end
|
41
|
-
|
42
|
-
factory :comment do
|
43
|
-
article
|
44
|
-
sequence(:ctext) { |n| "These are comments __#{n}__" }
|
45
|
-
sequence(:commentator) { |n| "myHandle_#{n}" }
|
46
|
-
end
|
47
|
-
|
48
|
-
end
|
@@ -1,38 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe SqlSearchNSortHelper, type: :helper do
|
4
|
-
|
5
|
-
before(:all) do
|
6
|
-
run_generator
|
7
|
-
end
|
8
|
-
|
9
|
-
after(:all) do
|
10
|
-
run_destroy
|
11
|
-
end
|
12
|
-
|
13
|
-
describe "#hide_current_params" do
|
14
|
-
|
15
|
-
before do
|
16
|
-
controller.request.query_parameters[:param_1] = "1"
|
17
|
-
controller.request.query_parameters[:param_2] = "2"
|
18
|
-
end
|
19
|
-
|
20
|
-
it "returns the current request parameters as hidden fields" do
|
21
|
-
expected_html = Nokogiri::HTML("<input id=\"param_1\" name=\"param_1\" type=\"hidden\" value=\"1\" />\n<input id=\"param_2\" name=\"param_2\" type=\"hidden\" value=\"2\" />")
|
22
|
-
|
23
|
-
expect(Nokogiri::HTML(helper.hide_current_params)).to be_equivalent_to(expected_html)
|
24
|
-
end
|
25
|
-
|
26
|
-
it "does not return any parameters specified in the 'suppress' argument" do
|
27
|
-
controller.request.query_parameters[:unwanted_1] = "unwanted"
|
28
|
-
controller.request.query_parameters[:unwanted_2] = "unwanted"
|
29
|
-
|
30
|
-
expected_html = Nokogiri::HTML("<input id=\"param_1\" name=\"param_1\" type=\"hidden\" value=\"1\" />\n<input id=\"param_2\" name=\"param_2\" type=\"hidden\" value=\"2\" />")
|
31
|
-
expect(Nokogiri::HTML(helper.hide_current_params("unwanted_1", "unwanted_2")))
|
32
|
-
.to be_equivalent_to(expected_html)
|
33
|
-
end
|
34
|
-
|
35
|
-
end
|
36
|
-
|
37
|
-
|
38
|
-
end
|
@@ -1,55 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe Comment do
|
4
|
-
|
5
|
-
describe "Associations" do
|
6
|
-
it { is_expected.to respond_to(:article) }
|
7
|
-
end
|
8
|
-
describe "Modules" do
|
9
|
-
#just to verify the model is extending the module
|
10
|
-
it "extends SqlSearchableSortable module" do
|
11
|
-
Comment.singleton_class.included_modules.include?(SqlSearchableSortable)
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
15
|
-
describe "#sql_sort" do
|
16
|
-
|
17
|
-
before do
|
18
|
-
Article.record_timestamps = false
|
19
|
-
Comment.record_timestamps = false
|
20
|
-
(1..5).each do
|
21
|
-
article = FactoryGirl.create(:article, headline: "Some Article Headline #{rand(1..9)}", updated_at: Time.now + (rand(1..9)).minutes, created_at: Time.now - (rand(1..9)).minutes)
|
22
|
-
(1..3).each do
|
23
|
-
FactoryGirl.create(:comment, article: article, updated_at: Time.now + (rand(1..9)).minutes, created_at: Time.now - (rand(1..9)).minutes)
|
24
|
-
end
|
25
|
-
end
|
26
|
-
expect(Comment.count).to be > 0 #non-trivial for sorting
|
27
|
-
end
|
28
|
-
|
29
|
-
|
30
|
-
describe "Allows sorting by joined model column" do
|
31
|
-
it "sorts by article.headline as defined in the model" do
|
32
|
-
comments = Comment.joins(:article).sql_sort("headline")
|
33
|
-
expect(comments.pluck(:headline)).to eq(comments.pluck(:headline).sort)
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
describe "Column Naming Conflicts" do
|
38
|
-
context "when joined tables share a column name" do
|
39
|
-
let!(:comments_1) { Comment.joins(:article).sql_sort("updated_at") }
|
40
|
-
let!(:comments_2) { Comment.joins(:article).sql_sort("created_at") }
|
41
|
-
describe "sorts by the column from the table specified within the hash (or the base table)" do
|
42
|
-
it "sorts using the comments table for updated_at" do
|
43
|
-
expect(comments_1.pluck("comments.updated_at")).to eq(comments_1.pluck("comments.updated_at").sort)
|
44
|
-
end
|
45
|
-
it "sorts using the articles table for created_at" do
|
46
|
-
expect(comments_2.pluck("articles.created_at")).to eq(comments_2.pluck("articles.created_at").sort)
|
47
|
-
end
|
48
|
-
end
|
49
|
-
end
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
end
|
@@ -1,151 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
describe Person do
|
3
|
-
|
4
|
-
before(:all) { run_generator }
|
5
|
-
|
6
|
-
after(:all) { run_destroy }
|
7
|
-
|
8
|
-
it "should have a sql_searchable class method" do
|
9
|
-
Person.should respond_to(:sql_searchable)
|
10
|
-
end
|
11
|
-
|
12
|
-
it "should have a sql_sortable class method" do
|
13
|
-
Person.should respond_to(:sql_sortable)
|
14
|
-
end
|
15
|
-
|
16
|
-
describe "scopes" do
|
17
|
-
|
18
|
-
describe "search" do
|
19
|
-
before {(1..50).each { FactoryGirl.create(:person) }}
|
20
|
-
describe "returns only the records that match the search text in the fields specified" do
|
21
|
-
describe "string/varchar fields" do
|
22
|
-
it "returns records with a first_name that matches 'John'" do
|
23
|
-
Person.sql_search("John").count.should == 50
|
24
|
-
end
|
25
|
-
it "returns records with a first_name that matches 'Non-existent person'" do
|
26
|
-
Person.sql_search("Non-existent person").count.should == 0
|
27
|
-
end
|
28
|
-
it "returns records with a first_name that matches 'John_1'" do
|
29
|
-
Person.sql_search("John_1").count.should == 11
|
30
|
-
end
|
31
|
-
it "returns records with a last_name that matches 'Doe_2'" do
|
32
|
-
Person.sql_search("Doe_20").count.should == 1
|
33
|
-
end
|
34
|
-
it "returns records with an email that matches 'johndoe_3'" do
|
35
|
-
#There is an email matching the string, but Person doesn't specify that column as searchable
|
36
|
-
Person.sql_search("johndoesemail_36").count.should == 0
|
37
|
-
end
|
38
|
-
end
|
39
|
-
describe "text fields" do
|
40
|
-
it "returns records with a bio that containing 'new jersey devils'" do
|
41
|
-
Person.all[0].update_attribute :bio, "I am a big fan of
|
42
|
-
the New Jersey Devils hockey team"
|
43
|
-
Person.all[1].update_attribute :bio, "I once went to a New Jersey Devils game."
|
44
|
-
Person.sql_search("new jersey devils").count.should == 2
|
45
|
-
end
|
46
|
-
end
|
47
|
-
# describe "Date fields" do
|
48
|
-
# it "returns records with an updated at containing '2001'" do
|
49
|
-
# pending "removed sort by date functionality"
|
50
|
-
# Person.all[0].update_attribute :dob, "2001-07-25"
|
51
|
-
# Person.all[1].update_attribute :dob, "2001-12-25"
|
52
|
-
# Person.all[2].update_attribute :dob, "2001-11-11"
|
53
|
-
# Person.sql_search("2001").count.should == 3
|
54
|
-
# end
|
55
|
-
# end
|
56
|
-
# describe "Integer fields" do
|
57
|
-
# it "returns records with a grade containing '26255'" do
|
58
|
-
# pending "removed sort by integer functionality"
|
59
|
-
# Person.all[0].update_attribute :grade, 2526255
|
60
|
-
# Person.all[1].update_attribute :grade, 12625525
|
61
|
-
# Person.all[2].update_attribute :grade, 125262550
|
62
|
-
# Person.sql_search("26255").count.should == 3
|
63
|
-
# end
|
64
|
-
# end
|
65
|
-
end
|
66
|
-
|
67
|
-
end
|
68
|
-
|
69
|
-
describe "sort" do
|
70
|
-
|
71
|
-
before do
|
72
|
-
@people = []
|
73
|
-
(1..50).each do
|
74
|
-
@people << FactoryGirl.create(:person, first_name: "John_#{Random.rand(1..99)}",
|
75
|
-
last_name: "Doe_#{Random.rand(1..99)}")
|
76
|
-
end
|
77
|
-
end
|
78
|
-
it "uses default scope ordering of last_name" do
|
79
|
-
Person.all.map { |e| e.send(:last_name) }.uniq ==
|
80
|
-
@people.sort_by{ |p| p.send(:last_name) }.map { |e| e.send(:last_name) }.uniq
|
81
|
-
end
|
82
|
-
it "sorts by first_name ascending" do
|
83
|
-
expect(same_order?(Person, :first_name, @people)).to be true
|
84
|
-
end
|
85
|
-
it "sorts by first_name descending" do
|
86
|
-
expect(same_order?(Person, :first_name, @people, false)).to be true
|
87
|
-
end
|
88
|
-
it "sorts by last_name ascending" do
|
89
|
-
expect(same_order?(Person, :last_name, @people)).to be true
|
90
|
-
end
|
91
|
-
it "sorts by last_name descending" do
|
92
|
-
expect(same_order?(Person, :last_name, @people, false)).to be true
|
93
|
-
end
|
94
|
-
it "does not sort by age because it is not specified as searchable in the model" do
|
95
|
-
expect(same_order?(Person, :age, @people)).to be false
|
96
|
-
end
|
97
|
-
it "quietly uses default sort column (last name) when passing an invalid column name " do
|
98
|
-
Person.sql_sort(:invalid_column_name, :asc).map { |e| e.send(:last_name) }.uniq
|
99
|
-
.should eq Person.order(:last_name).map { |e| e.send(:last_name) }.uniq
|
100
|
-
end
|
101
|
-
|
102
|
-
describe "sortable options" do
|
103
|
-
describe "sort helpers" do
|
104
|
-
it "returns an array of arrays to populate the sort dropdown" do
|
105
|
-
Person.sort_cols_for_dropdown
|
106
|
-
.should eq [["First name", "first_name"],
|
107
|
-
["First name [desc]", "first_name desc"],
|
108
|
-
["Last name", "last_name"],
|
109
|
-
["Last name [desc]", "last_name desc"],
|
110
|
-
["Email", "email"],
|
111
|
-
["Email [desc]", "email desc"],
|
112
|
-
["Date last changed [desc]", "updated_at desc"]]
|
113
|
-
end
|
114
|
-
end
|
115
|
-
end
|
116
|
-
|
117
|
-
end
|
118
|
-
|
119
|
-
describe "search and sort together" do
|
120
|
-
before do
|
121
|
-
@people = []
|
122
|
-
(1..50).each do
|
123
|
-
@people << FactoryGirl.create(:person,
|
124
|
-
last_name: "Doe_#{Random.rand(1..99)}")
|
125
|
-
end
|
126
|
-
end
|
127
|
-
it "returns records with a first_name that matches 'John_1' sorted by first_name" do
|
128
|
-
results = Person.sql_sort(:first_name).sql_search("John_1")
|
129
|
-
results.count.should == 11
|
130
|
-
results.map { |e| e.first_name }.uniq
|
131
|
-
.should eq results.sort_by{ |p| p.first_name }.map { |e| e.first_name }.uniq
|
132
|
-
end
|
133
|
-
|
134
|
-
it "returns consistent results when sql_sort is called after sql_search" do
|
135
|
-
Person.sql_sort(:first_name).sql_search("John_1")
|
136
|
-
.should eq Person.sql_search("John_1").sql_sort(:first_name)
|
137
|
-
end
|
138
|
-
|
139
|
-
describe "-able attributes" do
|
140
|
-
it "has a sortable? method" do
|
141
|
-
Person.should respond_to :sortable?
|
142
|
-
Person.sortable?.should be true
|
143
|
-
end
|
144
|
-
|
145
|
-
end
|
146
|
-
|
147
|
-
end
|
148
|
-
|
149
|
-
end
|
150
|
-
|
151
|
-
end
|
@@ -1,13 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe Product do
|
4
|
-
before(:each) do
|
5
|
-
(1..50).each do
|
6
|
-
FactoryGirl.create(:product)
|
7
|
-
end
|
8
|
-
end
|
9
|
-
|
10
|
-
it "allows default sort order to be descending" do
|
11
|
-
Product.order("manufacturer DESC").all.should =~ Product.sql_sort()
|
12
|
-
end
|
13
|
-
end
|
@@ -1,37 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
RSpec.describe Unsearchable, :type => :model do
|
4
|
-
describe "sql_searchable method doesn't allow unsearchable columns" do
|
5
|
-
it "raises an exception on integer type column" do
|
6
|
-
expect { Unsearchable.sql_searchable(:int) }.to raise_error(Exceptions::UnsearchableType)
|
7
|
-
end
|
8
|
-
|
9
|
-
it "raises an exception on date type column" do
|
10
|
-
expect { Unsearchable.sql_searchable(:dt) }.to raise_error(Exceptions::UnsearchableType)
|
11
|
-
end
|
12
|
-
|
13
|
-
it "raises an exception on time type column" do
|
14
|
-
expect { Unsearchable.sql_searchable(:tm) }.to raise_error(Exceptions::UnsearchableType)
|
15
|
-
end
|
16
|
-
|
17
|
-
it "raises an exception on datetime type column" do
|
18
|
-
expect { Unsearchable.sql_searchable(:dtm) }.to raise_error(Exceptions::UnsearchableType)
|
19
|
-
end
|
20
|
-
|
21
|
-
it "raises an exception on boolean type column" do
|
22
|
-
expect { Unsearchable.sql_searchable(:bool) }.to raise_error(Exceptions::UnsearchableType)
|
23
|
-
end
|
24
|
-
|
25
|
-
it "raises an exception on float type column" do
|
26
|
-
expect { Unsearchable.sql_searchable(:flt) }.to raise_error(Exceptions::UnsearchableType)
|
27
|
-
end
|
28
|
-
|
29
|
-
it "raises an exception on decimal type column" do
|
30
|
-
expect { Unsearchable.sql_searchable(:dec) }.to raise_error(Exceptions::UnsearchableType)
|
31
|
-
end
|
32
|
-
|
33
|
-
it "raises an exception on binary type column" do
|
34
|
-
expect { Unsearchable.sql_searchable(:bn) }.to raise_error(Exceptions::UnsearchableType)
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
@@ -1,21 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe Vehicle do
|
4
|
-
describe "sort" do
|
5
|
-
describe "sortable options" do
|
6
|
-
describe "sort helpers" do
|
7
|
-
it "returns an array of arrays to populate the sort dropdown" do
|
8
|
-
Vehicle.sort_cols_for_dropdown
|
9
|
-
.should eq [["Year", "year"],
|
10
|
-
["Year [desc]", "year desc"],
|
11
|
-
["Model", "model"],
|
12
|
-
["Model [desc]", "model desc"],
|
13
|
-
["Color", "color"],
|
14
|
-
["Color [desc]", "color desc"],
|
15
|
-
["Make", "manufacturer"],
|
16
|
-
["Make [desc]", "manufacturer desc"]]
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
@@ -1,29 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
#The reason for this spec is to make sure behavior is as expected when we specify
|
4
|
-
# :asc as the default sort direction
|
5
|
-
describe "Articles" do
|
6
|
-
|
7
|
-
before(:all) do
|
8
|
-
run_generator
|
9
|
-
end
|
10
|
-
|
11
|
-
after(:all) do
|
12
|
-
run_destroy
|
13
|
-
end
|
14
|
-
|
15
|
-
describe "GET /articles" do
|
16
|
-
before(:each) do
|
17
|
-
(1..50).each do
|
18
|
-
FactoryGirl.create(:article)
|
19
|
-
end
|
20
|
-
end
|
21
|
-
it "sorts by default column in ascending order when
|
22
|
-
ascending is specified in the model" do
|
23
|
-
visit articles_path
|
24
|
-
find("select#sort_by").value.should eq "date_pub"
|
25
|
-
pub_dates = all(:xpath, "//table/tbody/tr/td[3]")
|
26
|
-
pub_dates.map(&:text).should == pub_dates.map(&:text).sort
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
@@ -1,52 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
#The main reason for this spec is to make sure that external parameters defined in the model can be suppressed within the search form
|
4
|
-
describe "Items" do
|
5
|
-
before(:all) do
|
6
|
-
run_generator
|
7
|
-
end
|
8
|
-
|
9
|
-
after(:all) do
|
10
|
-
run_destroy
|
11
|
-
end
|
12
|
-
|
13
|
-
describe "Allows existing url parameters to be suppressed when searching/sorting" do
|
14
|
-
let!(:visit_path) { items_path(good_param: "good", restricted_1: "bad", restricted_2: "bad") }
|
15
|
-
context "When unwanted parameter names are specified in the suppress_params[:search] config" do
|
16
|
-
before { SqlSearchNSort.config.suppress_params[:search] = ["restricted_1", "restricted_2"] }
|
17
|
-
context "when ...searching" do
|
18
|
-
it "doesn't pass them along to the Item#index action" do
|
19
|
-
visit visit_path
|
20
|
-
fill_in("search_for", with: "arbitrary search string")
|
21
|
-
click_button "Find"
|
22
|
-
sleep 1
|
23
|
-
expect(page.current_url).not_to include("bad")
|
24
|
-
end
|
25
|
-
end
|
26
|
-
context "...when sorting" do
|
27
|
-
#clear config in case last spec runs prior.
|
28
|
-
before { SqlSearchNSort.config.suppress_params[:sort] = [] }
|
29
|
-
it "has no affect on the parameters passed to #index", js: true do
|
30
|
-
visit visit_path
|
31
|
-
select("Descr", from: "sort_by")
|
32
|
-
sleep 2
|
33
|
-
expect(page.current_url).to include("restricted_1")
|
34
|
-
end
|
35
|
-
end
|
36
|
-
end
|
37
|
-
|
38
|
-
context "When unwanted parameter names are specified in the suppress_params[:sort] config", js: true do
|
39
|
-
before { SqlSearchNSort.config.suppress_params[:sort] = ["restricted_1", "restricted_2"] }
|
40
|
-
context "...when Sorting" do
|
41
|
-
it "doesn't pass them along to the #index action" do
|
42
|
-
visit visit_path
|
43
|
-
select("Descr", from: "sort_by")
|
44
|
-
sleep 2
|
45
|
-
expect(page.current_url).to_not include("restricted_1")
|
46
|
-
end
|
47
|
-
end
|
48
|
-
end
|
49
|
-
end
|
50
|
-
|
51
|
-
|
52
|
-
end
|