wice_grid 3.6.2 → 4.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (332) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +41 -0
  3. data/.circleci/run-build-locally.sh +7 -0
  4. data/.github/ISSUE_TEMPLATE/bug_report.md +32 -0
  5. data/.gitignore +5 -2
  6. data/Appraisals +11 -0
  7. data/CHANGELOG.md +38 -1
  8. data/Gemfile.lock +299 -0
  9. data/README.md +77 -34
  10. data/config/locales/ja.yml +3 -3
  11. data/gemfiles/rails_5.0.gemfile +7 -0
  12. data/gemfiles/rails_5.0.gemfile.lock +291 -0
  13. data/gemfiles/rails_5.1.gemfile +7 -0
  14. data/gemfiles/rails_5.1.gemfile.lock +291 -0
  15. data/gemfiles/rails_5.2.gemfile +7 -0
  16. data/gemfiles/rails_5.2.gemfile.lock +299 -0
  17. data/lib/wice/columns.rb +13 -6
  18. data/lib/wice/columns/column_integer.rb +11 -1
  19. data/lib/wice/columns/column_rails_datetime_helper.rb +3 -2
  20. data/lib/wice/columns/column_range.rb +6 -4
  21. data/lib/wice/grid_renderer.rb +23 -7
  22. data/lib/wice/helpers/bs_calendar_helpers.rb +9 -1
  23. data/lib/wice/helpers/wice_grid_view_helpers.rb +6 -6
  24. data/lib/wice/wice_grid_controller.rb +7 -5
  25. data/lib/wice/wice_grid_core_ext.rb +5 -1
  26. data/lib/wice/wice_grid_misc.rb +1 -1
  27. data/lib/wice_grid.rb +86 -59
  28. data/spec/acceptance_helper.rb +58 -0
  29. data/spec/features/action_column_request_spec.rb +280 -0
  30. data/spec/features/adding_rows_request_spec.rb +21 -0
  31. data/spec/features/all_records_request_spec.rb +18 -0
  32. data/spec/features/auto_reloads2_request_spec.rb +349 -0
  33. data/spec/features/auto_reloads3_request_spec.rb +130 -0
  34. data/spec/features/auto_reloads_request_spec.rb +348 -0
  35. data/spec/features/basics1_request_spec.rb +11 -0
  36. data/spec/features/basics2_request_spec.rb +10 -0
  37. data/spec/features/basics3_request_spec.rb +29 -0
  38. data/spec/features/basics4_request_spec.rb +19 -0
  39. data/spec/features/basics5_request_spec.rb +13 -0
  40. data/spec/features/basics6_request_spec.rb +22 -0
  41. data/spec/features/blockless_column_definition_spec.rb +27 -0
  42. data/spec/features/buttons_request_spec.rb +172 -0
  43. data/spec/features/csv_and_detached_filters_spec.rb +10 -0
  44. data/spec/features/csv_export_request_spec.rb +13 -0
  45. data/spec/features/custom_filter_params_request_spec.rb +29 -0
  46. data/spec/features/custom_filters1_request_spec.rb +155 -0
  47. data/spec/features/custom_filters2_request_spec.rb +53 -0
  48. data/spec/features/custom_filters3_request_spec.rb +50 -0
  49. data/spec/features/custom_filters4_request_spec.rb +13 -0
  50. data/spec/features/custom_ordering_on_calculated_request_spec.rb +30 -0
  51. data/spec/features/custom_ordering_request_spec.rb +36 -0
  52. data/spec/features/custom_ordering_with_arel_request_spec.rb +36 -0
  53. data/spec/features/custom_ordering_with_proc_request_spec.rb +44 -0
  54. data/spec/features/custom_ordering_with_ruby_request_spec.rb +30 -0
  55. data/spec/features/dates_request_spec.rb +56 -0
  56. data/spec/features/detached_filters_spec.rb +10 -0
  57. data/spec/features/detached_filters_two_grids_spec.rb +127 -0
  58. data/spec/features/disable_all_filters_spec.rb +22 -0
  59. data/spec/features/hiding_checkboxes_in_action_column_request_spec.rb +294 -0
  60. data/spec/features/integration_with_application_view_request_spec.rb +43 -0
  61. data/spec/features/integration_with_forms_request_spec.rb +141 -0
  62. data/spec/features/joining_tables_spec.rb +40 -0
  63. data/spec/features/localization_request_spec.rb +24 -0
  64. data/spec/features/many_grids_on_page_request_spec.rb +104 -0
  65. data/spec/features/negation_request_spec.rb +25 -0
  66. data/spec/features/no_records_request_spec.rb +26 -0
  67. data/spec/features/numeric_filters_request_spec.rb +10 -0
  68. data/spec/features/resultset_processings2_request_spec.rb +27 -0
  69. data/spec/features/resultset_processings_request_spec.rb +30 -0
  70. data/spec/features/saved_queries_request_spec.rb +120 -0
  71. data/spec/features/shared.rb +1005 -0
  72. data/spec/features/shared_detached_filters.rb +158 -0
  73. data/spec/features/styling_spec.rb +15 -0
  74. data/spec/features/two_associations_spec.rb +48 -0
  75. data/spec/features/upper_pagination_panel_request_spec.rb +23 -0
  76. data/spec/features/when_filtered_spec.rb +209 -0
  77. data/spec/fixtures/.gitkeep +0 -0
  78. data/spec/fixtures/companies.yml +21 -0
  79. data/spec/fixtures/priorities.yml +31 -0
  80. data/spec/fixtures/project_roles.yml +25 -0
  81. data/spec/fixtures/projects.yml +22 -0
  82. data/spec/fixtures/statuses.yml +55 -0
  83. data/spec/fixtures/tasks.yml +751 -0
  84. data/spec/fixtures/tasks_users.yml +2089 -0
  85. data/spec/fixtures/users.yml +61 -0
  86. data/spec/fixtures/versions.yml +78 -0
  87. data/spec/models/company_spec.rb +6 -0
  88. data/spec/models/priority_spec.rb +6 -0
  89. data/spec/models/project_spec.rb +11 -0
  90. data/spec/models/status_spec.rb +6 -0
  91. data/spec/models/task_spec.rb +12 -0
  92. data/spec/models/user_project_participation_spec.rb +7 -0
  93. data/spec/models/user_spec.rb +12 -0
  94. data/spec/models/version_spec.rb +5 -0
  95. data/spec/rails_helper.rb +15 -0
  96. data/spec/spec_helper.rb +10 -9
  97. data/spec/support/test_app/Rakefile +3 -0
  98. data/spec/support/test_app/app/assets/javascripts/application.js +20 -0
  99. data/spec/support/test_app/app/assets/javascripts/common.js.coffee +6 -0
  100. data/spec/support/test_app/app/assets/javascripts/jquery.ui.datepicker.locales.js +56 -0
  101. data/spec/support/test_app/app/assets/stylesheets/adding_rows.scss +3 -0
  102. data/spec/support/test_app/app/assets/stylesheets/application.scss +46 -0
  103. data/spec/support/test_app/app/assets/stylesheets/csv_and_detached_filters.scss +3 -0
  104. data/spec/support/test_app/app/assets/stylesheets/many_grids_on_page.scss +3 -0
  105. data/spec/support/test_app/app/controllers/action_column_controller.rb +15 -0
  106. data/spec/support/test_app/app/controllers/adding_rows_controller.rb +14 -0
  107. data/spec/support/test_app/app/controllers/all_records_controller.rb +14 -0
  108. data/spec/support/test_app/app/controllers/application_controller.rb +99 -0
  109. data/spec/support/test_app/app/controllers/auto_reloads2_controller.rb +14 -0
  110. data/spec/support/test_app/app/controllers/auto_reloads3_controller.rb +20 -0
  111. data/spec/support/test_app/app/controllers/auto_reloads_controller.rb +14 -0
  112. data/spec/support/test_app/app/controllers/basics1_controller.rb +6 -0
  113. data/spec/support/test_app/app/controllers/basics2_controller.rb +6 -0
  114. data/spec/support/test_app/app/controllers/basics3_controller.rb +6 -0
  115. data/spec/support/test_app/app/controllers/basics4_controller.rb +6 -0
  116. data/spec/support/test_app/app/controllers/basics5_controller.rb +6 -0
  117. data/spec/support/test_app/app/controllers/basics6_controller.rb +11 -0
  118. data/spec/support/test_app/app/controllers/blockless_column_definition_controller.rb +6 -0
  119. data/spec/support/test_app/app/controllers/buttons_controller.rb +6 -0
  120. data/spec/support/test_app/app/controllers/csv_and_detached_filters_controller.rb +13 -0
  121. data/spec/support/test_app/app/controllers/csv_export_controller.rb +28 -0
  122. data/spec/support/test_app/app/controllers/custom_filter_params_controller.rb +6 -0
  123. data/spec/support/test_app/app/controllers/custom_filters1_controller.rb +9 -0
  124. data/spec/support/test_app/app/controllers/custom_filters2_controller.rb +14 -0
  125. data/spec/support/test_app/app/controllers/custom_filters3_controller.rb +12 -0
  126. data/spec/support/test_app/app/controllers/custom_filters4_controller.rb +12 -0
  127. data/spec/support/test_app/app/controllers/custom_ordering_controller.rb +18 -0
  128. data/spec/support/test_app/app/controllers/custom_ordering_on_calculated_controller.rb +6 -0
  129. data/spec/support/test_app/app/controllers/custom_ordering_with_arel_controller.rb +18 -0
  130. data/spec/support/test_app/app/controllers/custom_ordering_with_proc_controller.rb +11 -0
  131. data/spec/support/test_app/app/controllers/custom_ordering_with_ruby_controller.rb +6 -0
  132. data/spec/support/test_app/app/controllers/dates_controller.rb +8 -0
  133. data/spec/support/test_app/app/controllers/detached_filters_controller.rb +6 -0
  134. data/spec/support/test_app/app/controllers/detached_filters_two_grids_controller.rb +7 -0
  135. data/spec/support/test_app/app/controllers/disable_all_filters_controller.rb +6 -0
  136. data/spec/support/test_app/app/controllers/hiding_checkboxes_in_action_column_controller.rb +13 -0
  137. data/spec/support/test_app/app/controllers/home_controller.rb +3 -0
  138. data/spec/support/test_app/app/controllers/integration_with_application_view_controller.rb +16 -0
  139. data/spec/support/test_app/app/controllers/integration_with_forms_controller.rb +11 -0
  140. data/spec/support/test_app/app/controllers/joining_tables_controller.rb +11 -0
  141. data/spec/support/test_app/app/controllers/localization_controller.rb +26 -0
  142. data/spec/support/test_app/app/controllers/many_grids_on_page_controller.rb +7 -0
  143. data/spec/support/test_app/app/controllers/negation_controller.rb +14 -0
  144. data/spec/support/test_app/app/controllers/no_records_controller.rb +8 -0
  145. data/spec/support/test_app/app/controllers/null_values_controller.rb +10 -0
  146. data/spec/support/test_app/app/controllers/numeric_filters_controller.rb +6 -0
  147. data/spec/support/test_app/app/controllers/queries_controller.rb +4 -0
  148. data/spec/support/test_app/app/controllers/resultset_processings2_controller.rb +29 -0
  149. data/spec/support/test_app/app/controllers/resultset_processings_controller.rb +30 -0
  150. data/spec/support/test_app/app/controllers/saved_queries_controller.rb +14 -0
  151. data/spec/support/test_app/app/controllers/styling_controller.rb +7 -0
  152. data/spec/support/test_app/app/controllers/tasks_controller.rb +14 -0
  153. data/spec/support/test_app/app/controllers/two_associations_controller.rb +6 -0
  154. data/spec/support/test_app/app/controllers/upper_pagination_panel_controller.rb +6 -0
  155. data/spec/support/test_app/app/controllers/when_filtered_controller.rb +6 -0
  156. data/spec/support/test_app/app/helpers/application_helper.rb +82 -0
  157. data/spec/support/test_app/app/mailers/.gitkeep +0 -0
  158. data/spec/support/test_app/app/models/.gitkeep +0 -0
  159. data/spec/support/test_app/app/models/company.rb +5 -0
  160. data/spec/support/test_app/app/models/populate.rb +84 -0
  161. data/spec/support/test_app/app/models/priority.rb +10 -0
  162. data/spec/support/test_app/app/models/project.rb +14 -0
  163. data/spec/support/test_app/app/models/project_role.rb +3 -0
  164. data/spec/support/test_app/app/models/status.rb +10 -0
  165. data/spec/support/test_app/app/models/task.rb +11 -0
  166. data/spec/support/test_app/app/models/to_dropdown_mixin.rb +16 -0
  167. data/spec/support/test_app/app/models/user.rb +8 -0
  168. data/spec/support/test_app/app/models/user_project_participation.rb +6 -0
  169. data/spec/support/test_app/app/models/version.rb +6 -0
  170. data/spec/support/test_app/app/views/action_column/_grid.html.erb +35 -0
  171. data/spec/support/test_app/app/views/action_column/index.html.haml +45 -0
  172. data/spec/support/test_app/app/views/adding_rows/_grid.html.erb +58 -0
  173. data/spec/support/test_app/app/views/adding_rows/index.html.haml +37 -0
  174. data/spec/support/test_app/app/views/all_records/_grid.html.erb +30 -0
  175. data/spec/support/test_app/app/views/all_records/index.html.haml +12 -0
  176. data/spec/support/test_app/app/views/auto_reloads/_grid.html.erb +32 -0
  177. data/spec/support/test_app/app/views/auto_reloads/index.html.haml +15 -0
  178. data/spec/support/test_app/app/views/auto_reloads2/_grid.html.erb +32 -0
  179. data/spec/support/test_app/app/views/auto_reloads2/index.html.haml +65 -0
  180. data/spec/support/test_app/app/views/auto_reloads3/_grid.html.erb +25 -0
  181. data/spec/support/test_app/app/views/auto_reloads3/index.html.haml +78 -0
  182. data/spec/support/test_app/app/views/basics1/_grid.html.erb +26 -0
  183. data/spec/support/test_app/app/views/basics1/index.html.haml +13 -0
  184. data/spec/support/test_app/app/views/basics2/_grid.html.erb +27 -0
  185. data/spec/support/test_app/app/views/basics2/index.html.haml +12 -0
  186. data/spec/support/test_app/app/views/basics3/_grid.html.erb +28 -0
  187. data/spec/support/test_app/app/views/basics3/index.html.haml +13 -0
  188. data/spec/support/test_app/app/views/basics4/_grid.html.erb +21 -0
  189. data/spec/support/test_app/app/views/basics4/index.html.haml +12 -0
  190. data/spec/support/test_app/app/views/basics5/_grid.html.erb +19 -0
  191. data/spec/support/test_app/app/views/basics5/index.html.haml +12 -0
  192. data/spec/support/test_app/app/views/basics6/_grid.html.erb +19 -0
  193. data/spec/support/test_app/app/views/basics6/index.html.haml +23 -0
  194. data/spec/support/test_app/app/views/blockless_column_definition/_grid.html.erb +19 -0
  195. data/spec/support/test_app/app/views/blockless_column_definition/index.html.haml +15 -0
  196. data/spec/support/test_app/app/views/buttons/_grid.html.erb +20 -0
  197. data/spec/support/test_app/app/views/buttons/index.html.haml +30 -0
  198. data/spec/support/test_app/app/views/csv_and_detached_filters/_grid.html.erb +23 -0
  199. data/spec/support/test_app/app/views/csv_and_detached_filters/index.html.haml +58 -0
  200. data/spec/support/test_app/app/views/csv_export/_projects_grid.html.erb +17 -0
  201. data/spec/support/test_app/app/views/csv_export/_tasks_grid.html.erb +43 -0
  202. data/spec/support/test_app/app/views/csv_export/index.html.haml +90 -0
  203. data/spec/support/test_app/app/views/custom_filter_params/_grid.html.erb +12 -0
  204. data/spec/support/test_app/app/views/custom_filter_params/index.html.haml +12 -0
  205. data/spec/support/test_app/app/views/custom_filters1/_g1.html.erb +8 -0
  206. data/spec/support/test_app/app/views/custom_filters1/_g2.html.erb +9 -0
  207. data/spec/support/test_app/app/views/custom_filters1/_g3.html.erb +9 -0
  208. data/spec/support/test_app/app/views/custom_filters1/_g4.html.erb +8 -0
  209. data/spec/support/test_app/app/views/custom_filters1/index.html.haml +30 -0
  210. data/spec/support/test_app/app/views/custom_filters2/_grid.html.erb +30 -0
  211. data/spec/support/test_app/app/views/custom_filters2/index.html.haml +41 -0
  212. data/spec/support/test_app/app/views/custom_filters3/_grid.html.erb +18 -0
  213. data/spec/support/test_app/app/views/custom_filters3/index.html.haml +16 -0
  214. data/spec/support/test_app/app/views/custom_filters4/_grid.html.erb +20 -0
  215. data/spec/support/test_app/app/views/custom_filters4/index.html.haml +12 -0
  216. data/spec/support/test_app/app/views/custom_ordering/_grid.html.erb +10 -0
  217. data/spec/support/test_app/app/views/custom_ordering/index.html.haml +24 -0
  218. data/spec/support/test_app/app/views/custom_ordering_on_calculated/_grid.html.erb +14 -0
  219. data/spec/support/test_app/app/views/custom_ordering_on_calculated/index.html.haml +23 -0
  220. data/spec/support/test_app/app/views/custom_ordering_with_arel/_grid.html.erb +10 -0
  221. data/spec/support/test_app/app/views/custom_ordering_with_arel/index.html.haml +24 -0
  222. data/spec/support/test_app/app/views/custom_ordering_with_proc/_grid.html.erb +10 -0
  223. data/spec/support/test_app/app/views/custom_ordering_with_proc/index.html.haml +21 -0
  224. data/spec/support/test_app/app/views/custom_ordering_with_ruby/_grid.html.erb +10 -0
  225. data/spec/support/test_app/app/views/custom_ordering_with_ruby/index.html.haml +23 -0
  226. data/spec/support/test_app/app/views/dates/_grid.html.erb +25 -0
  227. data/spec/support/test_app/app/views/dates/index.html.haml +52 -0
  228. data/spec/support/test_app/app/views/detached_filters/_grid.html.erb +23 -0
  229. data/spec/support/test_app/app/views/detached_filters/index.html.haml +79 -0
  230. data/spec/support/test_app/app/views/detached_filters_two_grids/_grid.html.erb +23 -0
  231. data/spec/support/test_app/app/views/detached_filters_two_grids/index.html.haml +85 -0
  232. data/spec/support/test_app/app/views/disable_all_filters/_grid.html.erb +21 -0
  233. data/spec/support/test_app/app/views/disable_all_filters/index.html.haml +14 -0
  234. data/spec/support/test_app/app/views/hiding_checkboxes_in_action_column/_grid.html.erb +34 -0
  235. data/spec/support/test_app/app/views/hiding_checkboxes_in_action_column/index.html.haml +32 -0
  236. data/spec/support/test_app/app/views/integration_with_application_view/_grid.html.erb +27 -0
  237. data/spec/support/test_app/app/views/integration_with_application_view/index.html.haml +33 -0
  238. data/spec/support/test_app/app/views/integration_with_forms/_grid.html.erb +23 -0
  239. data/spec/support/test_app/app/views/integration_with_forms/index.html.haml +18 -0
  240. data/spec/support/test_app/app/views/joining_tables/_grid.html.erb +23 -0
  241. data/spec/support/test_app/app/views/joining_tables/index.html.haml +26 -0
  242. data/spec/support/test_app/app/views/layouts/application.html.haml +61 -0
  243. data/spec/support/test_app/app/views/localization/_grid.html.erb +36 -0
  244. data/spec/support/test_app/app/views/localization/index.html.haml +20 -0
  245. data/spec/support/test_app/app/views/many_grids_on_page/_tasks_grid1.html.erb +12 -0
  246. data/spec/support/test_app/app/views/many_grids_on_page/_tasks_grid2.html.erb +12 -0
  247. data/spec/support/test_app/app/views/many_grids_on_page/index.html.haml +26 -0
  248. data/spec/support/test_app/app/views/negation/_grid.html.erb +30 -0
  249. data/spec/support/test_app/app/views/negation/index.html.haml +15 -0
  250. data/spec/support/test_app/app/views/no_records/_empty_grid.html.haml +1 -0
  251. data/spec/support/test_app/app/views/no_records/_grid1.html.erb +11 -0
  252. data/spec/support/test_app/app/views/no_records/_grid2.html.erb +9 -0
  253. data/spec/support/test_app/app/views/no_records/_grid3.html.erb +9 -0
  254. data/spec/support/test_app/app/views/no_records/index.html.haml +24 -0
  255. data/spec/support/test_app/app/views/null_values/_grid.html.erb +17 -0
  256. data/spec/support/test_app/app/views/null_values/index.html.haml +21 -0
  257. data/spec/support/test_app/app/views/numeric_filters/_grid.html.erb +19 -0
  258. data/spec/support/test_app/app/views/numeric_filters/index.html.haml +12 -0
  259. data/spec/support/test_app/app/views/resultset_processings/_grid.html.erb +27 -0
  260. data/spec/support/test_app/app/views/resultset_processings/index.html.haml +50 -0
  261. data/spec/support/test_app/app/views/resultset_processings2/_grid.html.erb +27 -0
  262. data/spec/support/test_app/app/views/resultset_processings2/index.html.haml +48 -0
  263. data/spec/support/test_app/app/views/saved_queries/_grid.html.erb +30 -0
  264. data/spec/support/test_app/app/views/saved_queries/index.html.haml +15 -0
  265. data/spec/support/test_app/app/views/styling/_grid1.html.erb +12 -0
  266. data/spec/support/test_app/app/views/styling/_grid2.html.erb +31 -0
  267. data/spec/support/test_app/app/views/styling/index.html.haml +65 -0
  268. data/spec/support/test_app/app/views/tasks/_grid.html.erb +19 -0
  269. data/spec/support/test_app/app/views/tasks/index.html.haml +1 -0
  270. data/spec/support/test_app/app/views/two_associations/_grid.html.erb +13 -0
  271. data/spec/support/test_app/app/views/two_associations/index.html.haml +13 -0
  272. data/spec/support/test_app/app/views/upper_pagination_panel/_grid.html.erb +27 -0
  273. data/spec/support/test_app/app/views/upper_pagination_panel/index.html.haml +14 -0
  274. data/spec/support/test_app/app/views/when_filtered/_grid.html.erb +19 -0
  275. data/spec/support/test_app/app/views/when_filtered/index.html.haml +15 -0
  276. data/spec/support/test_app/bin/rails +4 -0
  277. data/spec/support/test_app/bin/rake +4 -0
  278. data/spec/support/test_app/config.ru +5 -0
  279. data/spec/support/test_app/config/application.rb +70 -0
  280. data/spec/support/test_app/config/boot.rb +7 -0
  281. data/spec/support/test_app/config/database.travis.yml +27 -0
  282. data/spec/support/test_app/config/database.yml +16 -0
  283. data/spec/support/test_app/config/database.yml.mysql +19 -0
  284. data/spec/support/test_app/config/database.yml.postgresql +18 -0
  285. data/spec/support/test_app/config/environment.rb +6 -0
  286. data/spec/support/test_app/config/environments/development.rb +34 -0
  287. data/spec/support/test_app/config/environments/production.rb +66 -0
  288. data/spec/support/test_app/config/environments/test.rb +34 -0
  289. data/spec/support/test_app/config/initializers/backtrace_silencers.rb +8 -0
  290. data/spec/support/test_app/config/initializers/inflections.rb +16 -0
  291. data/spec/support/test_app/config/initializers/mime_types.rb +6 -0
  292. data/spec/support/test_app/config/initializers/secret_token.rb +12 -0
  293. data/spec/support/test_app/config/initializers/session_store.rb +9 -0
  294. data/spec/support/test_app/config/initializers/wice_grid_config.rb +163 -0
  295. data/spec/support/test_app/config/initializers/wrap_parameters.rb +15 -0
  296. data/spec/support/test_app/config/locales/en.yml +5 -0
  297. data/spec/support/test_app/config/locales/wice_grid.yml +550 -0
  298. data/spec/support/test_app/config/puma.rb +15 -0
  299. data/spec/support/test_app/config/routes.rb +125 -0
  300. data/spec/support/test_app/db/migrate/20120224193505_create_tasks.rb +27 -0
  301. data/spec/support/test_app/db/migrate/20120224193517_create_users.rb +12 -0
  302. data/spec/support/test_app/db/migrate/20120224193522_create_projects.rb +14 -0
  303. data/spec/support/test_app/db/migrate/20120224193529_create_priorities.rb +13 -0
  304. data/spec/support/test_app/db/migrate/20120224193537_create_statuses.rb +13 -0
  305. data/spec/support/test_app/db/migrate/20120224193543_create_versions.rb +15 -0
  306. data/spec/support/test_app/db/migrate/20120224193550_create_project_roles.rb +12 -0
  307. data/spec/support/test_app/db/migrate/20120224193610_create_companies.rb +12 -0
  308. data/spec/support/test_app/db/migrate/20120224195351_create_user_project_participations.rb +16 -0
  309. data/spec/support/test_app/db/migrate/20120224195521_add_tasks_users.rb +11 -0
  310. data/spec/support/test_app/db/migrate/20120610091944_create_wice_grid_serialized_queries.rb +14 -0
  311. data/spec/support/test_app/db/schema.rb +139 -0
  312. data/spec/support/test_app/db/seeds.rb +10 -0
  313. data/spec/support/test_app/lib/ar_fixtures.rb +100 -0
  314. data/spec/support/test_app/lib/assets/.gitkeep +0 -0
  315. data/spec/support/test_app/lib/tasks/.gitkeep +0 -0
  316. data/spec/support/test_app/lib/tasks/ar_fixtures.rake +45 -0
  317. data/spec/support/test_app/public/404.html +26 -0
  318. data/spec/support/test_app/public/422.html +26 -0
  319. data/spec/support/test_app/public/500.html +25 -0
  320. data/spec/support/test_app/public/favicon.ico +0 -0
  321. data/spec/support/test_app/public/robots.txt +5 -0
  322. data/spec/wice/grid_output_buffer_spec.rb +2 -2
  323. data/spec/wice/table_column_matrix_spec.rb +1 -1
  324. data/vendor/assets/javascripts/wice_grid_init.js.coffee +16 -4
  325. data/vendor/assets/javascripts/wice_grid_saved_queries_init.js.coffee +1 -0
  326. data/wice_grid.gemspec +29 -9
  327. metadata +606 -62
  328. data/release_notes/RELEASE_NOTES_3.2.pre1.rdoc +0 -81
  329. data/release_notes/RELEASE_NOTES_3.2.pre2.rdoc +0 -6
  330. data/release_notes/RELEASE_NOTES_3.3.0.rdoc +0 -21
  331. data/spec/support/wice_grid_test_config.rb +0 -173
  332. data/test/readme.txt +0 -1
@@ -0,0 +1,40 @@
1
+ # encoding: utf-8
2
+ require 'acceptance_helper'
3
+
4
+ describe 'joining_tables WiceGrid', type: :request, js: true do
5
+ before :each do
6
+ visit '/joining_tables'
7
+ end
8
+
9
+ it 'should have filters for joined tables' do
10
+ expect(page).to have_field('grid[f][priorities.name]')
11
+ expect(page).to have_field('grid[f][statuses.name]')
12
+ expect(page).to have_field('grid[f][projects.name]')
13
+ expect(page).to have_field('grid[f][users.name]')
14
+ end
15
+
16
+ it 'should have filter joined tables' do
17
+ fill_in('grid_f_priorities_name', with: 'Normal')
18
+ fill_in('grid_f_statuses_name', with: 'Postponed')
19
+ fill_in('grid_f_projects_name', with: 'Super')
20
+ fill_in('grid_f_users_name', with: 'Koobus')
21
+
22
+ find(:css, '#grid_submit_grid_icon').click
23
+
24
+ within '.pagination_status' do
25
+ expect(page).to have_content('1-1 / 1')
26
+ end
27
+
28
+ within first(:css, 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter') do
29
+ expect(page).to have_content('Normal')
30
+ end
31
+
32
+ within first(:css, 'div.wice-grid-container table.wice-grid tbody tr:first-child td') do
33
+ expect(page).to have_content('508')
34
+ end
35
+
36
+ within 'div.wice-grid-container table.wice-grid tbody' do
37
+ expect(page).to have_content('sequi')
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,24 @@
1
+ # encoding: UTF-8
2
+ require 'acceptance_helper'
3
+
4
+ describe 'localization WiceGrid', type: :request, js: true do
5
+ before :each do
6
+ visit '/localization'
7
+ end
8
+
9
+ it 'should switch to different languages' do
10
+ click_on('en')
11
+ expect(page).to have_content('show all')
12
+
13
+ click_on('nl')
14
+ expect(page).to have_content('Alle rijen tonen')
15
+
16
+ click_on('fr')
17
+ expect(page).to have_content('Voir tous')
18
+
19
+ click_on('is')
20
+ expect(page).to have_content('Sýna all')
21
+
22
+ click_on('en')
23
+ end
24
+ end
@@ -0,0 +1,104 @@
1
+ # encoding: utf-8
2
+ require 'acceptance_helper'
3
+
4
+ describe 'many_grids_on_page WiceGrid', type: :request, js: true do
5
+ before :each do
6
+ visit '/many_grids_on_page'
7
+ end
8
+
9
+ it 'should sort independantly' do
10
+ within 'div#g1.wice-grid-container table.wice-grid thead' do
11
+ click_on 'Title'
12
+ end
13
+
14
+ within 'div#g1.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
15
+ expect(page).to have_content('ab')
16
+ end
17
+
18
+ within 'div#g2.wice-grid-container table.wice-grid thead' do
19
+ click_on 'Description'
20
+ end
21
+
22
+ within 'div#g1.wice-grid-container table.wice-grid thead th.sorted a.asc' do
23
+ expect(page).to have_content('Title')
24
+ end
25
+
26
+ within 'div#g2.wice-grid-container table.wice-grid thead th.sorted a.asc' do
27
+ expect(page).to have_content('Description')
28
+ end
29
+
30
+ within 'div#g1.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
31
+ expect(page).to have_content('ab')
32
+ end
33
+
34
+ within 'div#g2.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
35
+ expect(page).to have_content('Accusamus voluptas sunt deleniti iusto dolorem repudiandae.')
36
+ end
37
+ end
38
+
39
+ it 'should paginate independantly' do
40
+ within '#g1 ul.pagination' do
41
+ click_link '2'
42
+ end
43
+
44
+ expect(page).to have_selector('#g1 ul.pagination li.active', text: '2')
45
+
46
+ within '#g2 ul.pagination' do
47
+ click_link '3'
48
+ end
49
+
50
+ expect(page).to have_selector('#g2 ul.pagination li.active', text: '3')
51
+ end
52
+
53
+ it 'should show all records independantly for the two grids' do
54
+ within '#g1' do
55
+ click_on 'show all'
56
+ end
57
+
58
+ within 'div#g1.wice-grid-container table.wice-grid' do
59
+ expect(page).to have_selector('a.wg-back-to-pagination-link')
60
+ end
61
+
62
+ within '#g1 .pagination_status' do
63
+ expect(page).to have_content('1-50 / 50')
64
+ end
65
+
66
+ within '#g2 .pagination_status' do
67
+ expect(page).to have_content('1-20 / 50')
68
+ end
69
+ end
70
+
71
+ it 'should filter independantly' do
72
+ fill_in('g1_f_description', with: 've')
73
+
74
+ find(:css, '#g1_submit_grid_icon').click
75
+
76
+ within '#g1 .pagination_status' do
77
+ expect(page).to have_content('1-12 / 12')
78
+ end
79
+
80
+ within 'div#g1.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
81
+ expect(page).to have_content('Velit atque sapiente aspernatur sint fuga.')
82
+ end
83
+
84
+ fill_in('g2_f_description', with: 'voluptas')
85
+
86
+ find(:css, '#g2_submit_grid_icon').click
87
+
88
+ within '#g2 .pagination_status' do
89
+ expect(page).to have_content('1-1 / 1')
90
+ end
91
+
92
+ within 'div#g2.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
93
+ expect(page).to have_content('Accusamus voluptas sunt deleniti iusto dolorem repudiandae.')
94
+ end
95
+
96
+ within '#g1 .pagination_status' do
97
+ expect(page).to have_content('1-12 / 12')
98
+ end
99
+
100
+ within 'div#g1.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
101
+ expect(page).to have_content('Velit atque sapiente aspernatur sint fuga.')
102
+ end
103
+ end
104
+ end
@@ -0,0 +1,25 @@
1
+ # encoding: utf-8
2
+ require 'acceptance_helper'
3
+
4
+ describe 'negation WiceGrid', type: :request, js: true do
5
+ before :each do
6
+ visit '/negation'
7
+ end
8
+
9
+ it 'should negate the semantics of the text filter' do
10
+ fill_in('grid_f_title_v', with: 'sed')
11
+ select 'no', from: 'grid_f_archived'
12
+
13
+ find(:css, '#grid_submit_grid_icon').click
14
+
15
+ expect(page).to have_content('sed impedit iste')
16
+ expect(page).to have_no_content('ut ipsum excepturi')
17
+
18
+ find(:css, '#grid_f_title_n').click
19
+
20
+ find(:css, '#grid_submit_grid_icon').click
21
+
22
+ expect(page).to have_no_content('sed impedit iste')
23
+ expect(page).to have_content('ut ipsum excepturi')
24
+ end
25
+ end
@@ -0,0 +1,26 @@
1
+ # encoding: utf-8
2
+ require 'acceptance_helper'
3
+
4
+ describe 'no_records WiceGrid', type: :request, js: true do
5
+ before :each do
6
+ visit '/no_records'
7
+ end
8
+
9
+ it 'should contain a No Records block for example 1' do
10
+ within '.example1' do
11
+ expect(page).to have_content('No records found')
12
+ end
13
+ end
14
+
15
+ it 'should contain a No Records block for example 2' do
16
+ within '.example2' do
17
+ expect(page).to have_content('No records found')
18
+ end
19
+ end
20
+
21
+ it 'should contain a No Records block for example 3' do
22
+ within '.example3' do
23
+ expect(page).to have_content('No records found')
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,10 @@
1
+ # encoding: utf-8
2
+ require 'acceptance_helper'
3
+
4
+ describe 'basisc3 WiceGrid', type: :request, js: true do
5
+ before :each do
6
+ visit '/numeric_filters'
7
+ end
8
+
9
+ include_examples 'ID filtering, range'
10
+ end
@@ -0,0 +1,27 @@
1
+ # encoding: utf-8
2
+ require 'acceptance_helper'
3
+
4
+ describe 'with_resultset 2 WiceGrid', type: :request, js: true do
5
+ before :each do
6
+ visit '/resultset_processings2'
7
+ end
8
+
9
+ it 'should show records displayed on all pages' do
10
+ find(:css, '#process').click
11
+ expect(page).to have_content('50 records on all pages: 507, 519, 537, 540, 511, 515, 523, 524, 527, 531, 542, 551, 518, 520, 532, 535, 539, 512, 514, 516, 521, 522, 543, 544, 546, 550, 552, 510, 541, 553, 508, 513, 528, 529, 548, 556, 525, 534, 547, 555, 509, 517, 526, 536, 538, 545, 549, 530, 533, and 554')
12
+ end
13
+
14
+ it 'should show records displayed on all pages with a text filter selection' do
15
+ fill_in('g_f_title', with: 'ed')
16
+ expect(page).to have_content('1-2 / 2')
17
+ find(:css, '#process').click
18
+ expect(page).to have_content('2 records on all pages: 507 and 534')
19
+ end
20
+
21
+ it 'should show records displayed on all pages with a custom filter selection' do
22
+ select 'Cancelled', from: 'g_f_status_id'
23
+ expect(page).to have_content('1-5 / 8')
24
+ find(:css, '#process').click
25
+ expect(page).to have_content('8 records on all pages: 511, 515, 523, 524, 527, 531, 542, and 551')
26
+ end
27
+ end
@@ -0,0 +1,30 @@
1
+ # encoding: utf-8
2
+ require 'acceptance_helper'
3
+
4
+ describe 'with_resultset WiceGrid', type: :request, js: true do
5
+ before :each do
6
+ visit '/resultset_processings'
7
+ end
8
+
9
+ it 'should return records displayed on the page' do
10
+ expect(page).to have_content('10 records on the current page: 507, 519, 537, 540, 511, 515, 523, 524, 527, and 531')
11
+ end
12
+
13
+ it 'should show records displayed on all pages with a text filter selection' do
14
+ fill_in('g_f_title', with: 'ed')
15
+ expect(page).to have_content('1-2 / 2')
16
+ expect(page).to have_content('2 records on the current page: 507 and 534')
17
+ end
18
+
19
+ it 'should show records displayed on all pages with a filter selection' do
20
+ select 'no', from: 'g_f_archived'
21
+ expect(page).to have_content('1-10 / 46')
22
+ expect(page).to have_content('10 records on the current page: 507, 519, 537, 540, 511, 515, 523, 527, 531, and 542')
23
+ end
24
+
25
+ it 'should show records displayed on all pages with a custom filter selection' do
26
+ select 'Cancelled', from: 'g_f_status_id'
27
+ expect(page).to have_content('1-8 / 8')
28
+ expect(page).to have_content('8 records on the current page: 511, 515, 523, 524, 527, 531, 542, and 551')
29
+ end
30
+ end
@@ -0,0 +1,120 @@
1
+ # encoding: utf-8
2
+ require 'acceptance_helper'
3
+
4
+ describe 'auto reloads WiceGrid', type: :request, js: true do
5
+ before :each do
6
+ visit '/saved_queries'
7
+ end
8
+
9
+ def delete_all_saved_queries(context)
10
+ while delete_link = context.find(:css, '.wice-grid-delete-query')
11
+ delete_link.click
12
+ expect(page).to have_selector('#grid_notification_messages', text: 'Saved query deleted.')
13
+ end
14
+ rescue Capybara::ElementNotFound
15
+ true
16
+ end
17
+
18
+ it 'should filter by Added' do
19
+ check_saved_query = lambda do
20
+ within '.pagination_status' do
21
+ expect(page).to have_content('1-20 / 29')
22
+ end
23
+
24
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
25
+ expect(page).to have_content('2011-08-13 22:11:12')
26
+ end
27
+ end
28
+
29
+ delete_all_saved_queries self
30
+
31
+ set_datepicker(self, 'grid_f_created_at_fr_date_placeholder', 2011, 5, 1)
32
+
33
+ set_datepicker(self, 'grid_f_created_at_to_date_placeholder', 2011, 9, 1)
34
+
35
+ find(:css, '#grid_submit_grid_icon').click
36
+
37
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
38
+ expect(page).to have_content('2011-09-13 22:11:12')
39
+ end
40
+
41
+ within 'div.wice-grid-container table.wice-grid thead' do
42
+ click_on 'Title'
43
+ end
44
+
45
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
46
+ expect(page).to have_content('2011-08-13 22:11:12')
47
+ end
48
+
49
+ check_saved_query.call
50
+
51
+ fill_in('grid_saved_query_name', with: 'test query 1')
52
+ click_on 'Save the state of filters'
53
+
54
+ expect(page).to have_content('Query saved.')
55
+ expect(page).to have_content('test query 1')
56
+
57
+ find(:css, '#grid_reset_grid_icon').click
58
+ within '.pagination_status' do
59
+ expect(page).to have_content('1-20 / 50')
60
+ end
61
+
62
+ expect(page).to have_content('test query 1')
63
+
64
+ find(:css, '.wice-grid-query-load-link[title="Load query test query 1"]').click
65
+
66
+ check_saved_query.call
67
+
68
+ within '.wice-grid-container' do
69
+ expect(page).to have_content('test query 1')
70
+ end
71
+
72
+ delete_all_saved_queries self
73
+ expect(page).to have_content('Saved query deleted.')
74
+ end
75
+
76
+ it 'should filter by Archived and Project Name' do
77
+ check_saved_query = lambda do
78
+ within '.pagination_status' do
79
+ expect(page).to have_content('1-2 / 2')
80
+ end
81
+
82
+ within first(:css, 'td.active-filter') do
83
+ expect(page).to have_content('Ultimate Website')
84
+ end
85
+ end
86
+
87
+ delete_all_saved_queries self
88
+
89
+ select 'yes', from: 'grid_f_archived'
90
+ select 'Ultimate Website', from: 'grid_f_project_id'
91
+
92
+ find(:css, '#grid_submit_grid_icon').click
93
+
94
+ check_saved_query.call
95
+
96
+ fill_in('grid_saved_query_name', with: 'test query 2')
97
+ click_on 'Save the state of filters'
98
+
99
+ expect(page).to have_content('Query saved.')
100
+ expect(page).to have_content('test query 2')
101
+
102
+ find(:css, '#grid_reset_grid_icon').click
103
+ within '.pagination_status' do
104
+ expect(page).to have_content('1-20 / 50')
105
+ end
106
+
107
+ expect(page).to have_content('test query 2')
108
+
109
+ find(:css, '.wice-grid-query-load-link[title="Load query test query 2"]').click
110
+
111
+ check_saved_query.call
112
+
113
+ within '.wice-grid-container' do
114
+ expect(page).to have_content('test query 2')
115
+ end
116
+
117
+ delete_all_saved_queries self
118
+ expect(page).to have_content('Saved query deleted.')
119
+ end
120
+ end
@@ -0,0 +1,1005 @@
1
+ # encoding: utf-8
2
+ shared_examples 'basic task table specs' do
3
+ it 'is present on the page' do
4
+ expect(page).to have_selector('div.wice-grid-container table.wice-grid')
5
+ end
6
+
7
+ it 'should have a show all link' do
8
+ within 'div.wice-grid-container table.wice-grid' do
9
+ expect(page).to have_selector('a.wg-show-all-link')
10
+ end
11
+ end
12
+
13
+ it 'should change pages' do
14
+ within 'ul.pagination' do
15
+ click_link '2'
16
+ end
17
+
18
+ within '.wice-grid li.active' do
19
+ expect(page).to have_content('2')
20
+ end
21
+
22
+ within '.pagination_status' do
23
+ expect(page).to have_content('21-40 / 50')
24
+ end
25
+
26
+ within 'ul.pagination' do
27
+ click_link '3'
28
+ end
29
+
30
+ within '.wice-grid li.active' do
31
+ expect(page).to have_content('3')
32
+ end
33
+
34
+ within '.pagination_status' do
35
+ expect(page).to have_content('41-50 / 50')
36
+ end
37
+ end
38
+
39
+ it 'should have a pagination status with page 1 as the current page' do
40
+ within 'div.wice-grid-container table.wice-grid' do
41
+ expect(page).to have_selector('div.pagination')
42
+
43
+ within 'div.pagination' do
44
+ expect(page).to have_selector('li.active')
45
+ within 'li.active' do
46
+ expect(page).to have_content('1')
47
+ end
48
+
49
+ expect(page).to have_content('2')
50
+ expect(page).to have_content('3')
51
+ expect(page).to have_no_content('4')
52
+ end
53
+ end
54
+ end
55
+ end
56
+
57
+ shared_examples 'show all and back' do
58
+ it 'should show all records when asked' do
59
+ click_on 'show all'
60
+
61
+ within 'div.wice-grid-container table.wice-grid' do
62
+ expect(page).to have_selector('a.wg-back-to-pagination-link')
63
+ end
64
+
65
+ within '.pagination_status' do
66
+ expect(page).to have_content('1-50 / 50')
67
+ end
68
+
69
+ click_on 'back to paginated view'
70
+
71
+ within '.pagination_status' do
72
+ expect(page).to have_content('1-20 / 50')
73
+ end
74
+ end
75
+ end
76
+
77
+ shared_examples 'names of columns' do
78
+ it 'should have names of columns' do
79
+ within 'div.wice-grid-container table.wice-grid thead' do
80
+ expect(page).to have_content('ID')
81
+ expect(page).to have_content('Title')
82
+ expect(page).to have_content('Description')
83
+ expect(page).to have_content('Archived')
84
+ expect(page).to have_content('Added')
85
+ end
86
+ end
87
+ end
88
+
89
+ shared_examples 'sorting ID' do
90
+ it 'should sort column ID' do
91
+ within 'div.wice-grid-container table.wice-grid thead' do
92
+ click_on 'ID'
93
+ end
94
+
95
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.desc' do
96
+ expect(page).to have_content('ID')
97
+ end
98
+
99
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
100
+ expect(page).to have_content('556')
101
+ end
102
+
103
+ within 'div.wice-grid-container table.wice-grid thead' do
104
+ click_on 'ID'
105
+ end
106
+
107
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.asc' do
108
+ expect(page).to have_content('ID')
109
+ end
110
+
111
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
112
+ expect(page).to have_content('507')
113
+ end
114
+
115
+ within 'ul.pagination' do
116
+ click_link '2'
117
+ end
118
+
119
+ within '.wice-grid li.active' do
120
+ expect(page).to have_content('2')
121
+ end
122
+
123
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.asc' do
124
+ expect(page).to have_content('ID')
125
+ end
126
+
127
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
128
+ expect(page).to have_content('527')
129
+ end
130
+ end
131
+ end
132
+
133
+ shared_examples 'sorting Title' do
134
+ it 'should sort column Title' do
135
+ within 'div.wice-grid-container table.wice-grid thead' do
136
+ click_on 'Title'
137
+ end
138
+
139
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.asc' do
140
+ expect(page).to have_content('Title')
141
+ end
142
+
143
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
144
+ expect(page).to have_content('ab')
145
+ end
146
+
147
+ within 'div.wice-grid-container table.wice-grid thead' do
148
+ click_on 'Title'
149
+ end
150
+
151
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.desc' do
152
+ expect(page).to have_content('Title')
153
+ end
154
+
155
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
156
+ expect(page).to have_content('voluptatum non')
157
+ end
158
+
159
+ within 'ul.pagination' do
160
+ click_link '2'
161
+ end
162
+
163
+ within '.wice-grid li.active' do
164
+ expect(page).to have_content('2')
165
+ end
166
+
167
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.desc' do
168
+ expect(page).to have_content('Title')
169
+ end
170
+
171
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
172
+ expect(page).to have_content('quia dignissimos maiores')
173
+ end
174
+ end
175
+ end
176
+
177
+ shared_examples 'sorting Description' do
178
+ it 'should sort column Description' do
179
+ within 'div.wice-grid-container table.wice-grid thead' do
180
+ click_on 'Description'
181
+ end
182
+
183
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.asc' do
184
+ expect(page).to have_content('Description')
185
+ end
186
+
187
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
188
+ expect(page).to have_content('Accusamus voluptas sunt deleniti iusto dolorem repudiandae.')
189
+ end
190
+
191
+ within 'div.wice-grid-container table.wice-grid thead' do
192
+ click_on 'Description'
193
+ end
194
+
195
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.desc' do
196
+ expect(page).to have_content('Description')
197
+ end
198
+
199
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
200
+ expect(page).to have_content('Voluptate occaecati quisquam in et qui nostrum eos minus.')
201
+ end
202
+
203
+ within 'ul.pagination' do
204
+ click_link '2'
205
+ end
206
+
207
+ within '.wice-grid li.active' do
208
+ expect(page).to have_content('2')
209
+ end
210
+
211
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.desc' do
212
+ expect(page).to have_content('Description')
213
+ end
214
+
215
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
216
+ expect(page).to have_content('Iure tenetur cum aut optio et quia similique debitis.')
217
+ end
218
+ end
219
+ end
220
+
221
+ shared_examples 'sorting Archived' do
222
+ it 'should sort column Archived' do
223
+ within 'div.wice-grid-container table.wice-grid thead' do
224
+ click_on 'Archived'
225
+ end
226
+
227
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.asc' do
228
+ expect(page).to have_content('Archived')
229
+ end
230
+
231
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
232
+ expect(page).to have_content('No')
233
+ end
234
+
235
+ within 'div.wice-grid-container table.wice-grid thead' do
236
+ click_on 'Archived'
237
+ end
238
+
239
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.desc' do
240
+ expect(page).to have_content('Archived')
241
+ end
242
+
243
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
244
+ expect(page).to have_content('Yes')
245
+ end
246
+
247
+ within 'ul.pagination' do
248
+ click_link '2'
249
+ end
250
+
251
+ within '.wice-grid li.active' do
252
+ expect(page).to have_content('2')
253
+ end
254
+
255
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.desc' do
256
+ expect(page).to have_content('Archived')
257
+ end
258
+
259
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
260
+ expect(page).to have_content('No')
261
+ end
262
+ end
263
+ end
264
+
265
+ shared_examples 'sorting Due Date' do
266
+ it 'should sort column Due Date' do
267
+ within 'div.wice-grid-container table.wice-grid thead' do
268
+ click_on 'Due Date'
269
+ end
270
+
271
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.asc' do
272
+ expect(page).to have_content('Due Date')
273
+ end
274
+
275
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
276
+ expect(page).to have_content('2012-06-12')
277
+ end
278
+
279
+ within 'div.wice-grid-container table.wice-grid thead' do
280
+ click_on 'Due Date'
281
+ end
282
+
283
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.desc' do
284
+ expect(page).to have_content('Due Date')
285
+ end
286
+
287
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
288
+ expect(page).to have_content('2013-03-30')
289
+ end
290
+
291
+ within 'ul.pagination' do
292
+ click_link '2'
293
+ end
294
+
295
+ within '.wice-grid li.active' do
296
+ expect(page).to have_content('2')
297
+ end
298
+
299
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.desc' do
300
+ expect(page).to have_content('Due Date')
301
+ end
302
+
303
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
304
+ expect(page).to have_content('2012-12-13')
305
+ end
306
+ end
307
+ end
308
+
309
+ shared_examples 'sorting ID in all records mode' do
310
+ it 'should sort column ID' do
311
+ click_on 'show all'
312
+
313
+ within '.pagination_status' do
314
+ expect(page).to have_content('1-50 / 50')
315
+ end
316
+
317
+ within 'div.wice-grid-container table.wice-grid thead' do
318
+ click_on 'ID'
319
+ end
320
+
321
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.desc' do
322
+ expect(page).to have_content('ID')
323
+ end
324
+
325
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
326
+ expect(page).to have_content('556')
327
+ end
328
+
329
+ within 'div.wice-grid-container table.wice-grid thead' do
330
+ click_on 'ID'
331
+ end
332
+
333
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.asc' do
334
+ expect(page).to have_content('ID')
335
+ end
336
+
337
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
338
+ expect(page).to have_content('507')
339
+ end
340
+ end
341
+ end
342
+
343
+ shared_examples 'sorting Title in all records mode' do
344
+ it 'should sort column Title' do
345
+ click_on 'show all'
346
+
347
+ within '.pagination_status' do
348
+ expect(page).to have_content('1-50 / 50')
349
+ end
350
+
351
+ within 'div.wice-grid-container table.wice-grid thead' do
352
+ click_on 'Title'
353
+ end
354
+
355
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.asc' do
356
+ expect(page).to have_content('Title')
357
+ end
358
+
359
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
360
+ expect(page).to have_content('ab')
361
+ end
362
+
363
+ within 'div.wice-grid-container table.wice-grid thead' do
364
+ click_on 'Title'
365
+ end
366
+
367
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.desc' do
368
+ expect(page).to have_content('Title')
369
+ end
370
+
371
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
372
+ expect(page).to have_content('voluptatum non')
373
+ end
374
+ end
375
+ end
376
+
377
+ shared_examples 'sorting Description in all records mode' do
378
+ it 'should sort column Description' do
379
+ click_on 'show all'
380
+
381
+ within '.pagination_status' do
382
+ expect(page).to have_content('1-50 / 50')
383
+ end
384
+
385
+ within 'div.wice-grid-container table.wice-grid thead' do
386
+ click_on 'Description'
387
+ end
388
+
389
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.asc' do
390
+ expect(page).to have_content('Description')
391
+ end
392
+
393
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
394
+ expect(page).to have_content('Accusamus voluptas sunt deleniti iusto dolorem repudiandae.')
395
+ end
396
+
397
+ within 'div.wice-grid-container table.wice-grid thead' do
398
+ click_on 'Description'
399
+ end
400
+
401
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.desc' do
402
+ expect(page).to have_content('Description')
403
+ end
404
+
405
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
406
+ expect(page).to have_content('Voluptate occaecati quisquam in et qui nostrum eos minus.')
407
+ end
408
+ end
409
+ end
410
+
411
+ shared_examples 'sorting Archived in all records mode' do
412
+ it 'should sort column Archived' do
413
+ click_on 'show all'
414
+
415
+ within '.pagination_status' do
416
+ expect(page).to have_content('back to paginated view')
417
+ expect(page).to have_content('1-50 / 50')
418
+ end
419
+
420
+ within 'div.wice-grid-container table.wice-grid thead' do
421
+ click_on 'Archived'
422
+ end
423
+
424
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.asc' do
425
+ expect(page).to have_content('Archived')
426
+ end
427
+
428
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
429
+ expect(page).to have_content('No')
430
+ end
431
+
432
+ within 'div.wice-grid-container table.wice-grid thead' do
433
+ click_on 'Archived'
434
+ end
435
+
436
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.desc' do
437
+ expect(page).to have_content('Archived')
438
+ end
439
+
440
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
441
+ expect(page).to have_content('Yes')
442
+ end
443
+ end
444
+ end
445
+
446
+ shared_examples 'sorting Due Date in all records mode' do
447
+ it 'should sort column Due Date' do
448
+ click_on 'show all'
449
+
450
+ within '.pagination_status' do
451
+ expect(page).to have_content('1-50 / 50')
452
+ end
453
+
454
+ within 'div.wice-grid-container table.wice-grid thead' do
455
+ click_on 'Due Date'
456
+ end
457
+
458
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.asc' do
459
+ expect(page).to have_content('Due Date')
460
+ end
461
+
462
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
463
+ expect(page).to have_content('2012-06-12')
464
+ end
465
+
466
+ within 'div.wice-grid-container table.wice-grid thead' do
467
+ click_on 'Due Date'
468
+ end
469
+
470
+ within 'div.wice-grid-container table.wice-grid thead th.sorted a.desc' do
471
+ expect(page).to have_content('Due Date')
472
+ end
473
+
474
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
475
+ expect(page).to have_content('2013-03-30')
476
+ end
477
+ end
478
+ end
479
+
480
+ MONTH_NAMES = %w(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec)
481
+
482
+
483
+ def set_datepicker(context, picker, year, month, day)
484
+ context.find(:css, "##{picker} .ui-datepicker-trigger").click
485
+
486
+ year_select = context.find(:css, '.ui-datepicker-year')
487
+
488
+ year_select.select(year.to_s)
489
+
490
+ month_select = context.find(:css, '.ui-datepicker-month')
491
+ month_select.select(MONTH_NAMES[month])
492
+
493
+ context.within '.ui-datepicker-calendar' do
494
+ context.click_on(day.to_s)
495
+ end
496
+ end
497
+
498
+ shared_examples 'Due Date datepicker filtering' do
499
+ it 'should filter by Due Date' do
500
+ set_datepicker(self, 'grid_f_due_date_fr_date_placeholder', 2012, 0, 1)
501
+
502
+ set_datepicker(self, 'grid_f_due_date_to_date_placeholder', 2013, 0, 1)
503
+
504
+ find(:css, '#grid_submit_grid_icon').click
505
+
506
+ within '.pagination_status' do
507
+ expect(page).to have_content('1-20 / 35')
508
+ end
509
+
510
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
511
+ expect(page).to have_content('2012-07-29')
512
+ end
513
+
514
+ within 'div.wice-grid-container table.wice-grid thead' do
515
+ click_on 'ID'
516
+ end
517
+
518
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
519
+ expect(page).to have_content('2012-10-02')
520
+ end
521
+
522
+ within '.pagination_status' do
523
+ expect(page).to have_content('1-20 / 35')
524
+ end
525
+
526
+ within 'ul.pagination' do
527
+ click_link '2'
528
+ end
529
+
530
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
531
+ expect(page).to have_content('2012-07-02')
532
+ end
533
+
534
+ set_datepicker(self, 'grid_f_due_date_fr_date_placeholder', 2012, 6, 28)
535
+
536
+ set_datepicker(self, 'grid_f_due_date_to_date_placeholder', 2012, 6, 31)
537
+
538
+ find(:css, '#grid_submit_grid_icon').click
539
+
540
+ within '.pagination_status' do
541
+ expect(page).to have_content('1-1 / 1')
542
+ end
543
+
544
+ find(:css, '#grid_f_due_date_fr_date_view').click
545
+
546
+ find(:css, '#grid_submit_grid_icon').click
547
+
548
+ within '.pagination_status' do
549
+ expect(page).to have_content('1-10 / 10')
550
+ end
551
+
552
+ find(:css, '#grid_f_due_date_to_date_view').click
553
+
554
+ find(:css, '#grid_submit_grid_icon').click
555
+
556
+ within '.pagination_status' do
557
+ expect(page).to have_content('1-20 / 50')
558
+ end
559
+ end
560
+ end
561
+
562
+ shared_examples 'Added datepicker filtering' do
563
+ it 'should filter by Added' do
564
+ set_datepicker(self, 'grid_f_created_at_fr_date_placeholder', 2011, 5, 1)
565
+
566
+ set_datepicker(self, 'grid_f_created_at_to_date_placeholder', 2011, 9, 1)
567
+
568
+ find(:css, '#grid_submit_grid_icon').click
569
+
570
+ within '.pagination_status' do
571
+ expect(page).to have_content('1-20 / 29')
572
+ end
573
+
574
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
575
+ expect(page).to have_content('2011-09-13 22:11:12')
576
+ end
577
+
578
+ within 'div.wice-grid-container table.wice-grid thead' do
579
+ click_on 'ID'
580
+ end
581
+
582
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
583
+ expect(page).to have_content('2011-09-29 22:11:12')
584
+ end
585
+
586
+ within '.pagination_status' do
587
+ expect(page).to have_content('1-20 / 29')
588
+ end
589
+
590
+ within 'ul.pagination' do
591
+ click_link '2'
592
+ end
593
+
594
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
595
+ expect(page).to have_content('2011-09-22 22:11:12')
596
+ end
597
+
598
+ find(:css, '#grid_reset_grid_icon').click
599
+
600
+ within '.pagination_status' do
601
+ expect(page).to have_content('1-20 / 50')
602
+ end
603
+ end
604
+ end
605
+
606
+ # !!!
607
+ shared_examples 'Due Date standard filtering' do
608
+ it 'should filter by Due Date (standard filter)' do
609
+ select '2011', from: 'grid_f_created_at_fr_year'
610
+ select 'February', from: 'grid_f_created_at_fr_month'
611
+ select '8', from: 'grid_f_created_at_fr_day'
612
+ select '00', from: 'grid_f_created_at_fr_hour'
613
+ select '00', from: 'grid_f_created_at_fr_minute'
614
+
615
+ select '2011', from: 'grid_f_created_at_to_year'
616
+ select 'September', from: 'grid_f_created_at_to_month'
617
+ select '10', from: 'grid_f_created_at_to_day'
618
+ select '00', from: 'grid_f_created_at_to_hour'
619
+ select '00', from: 'grid_f_created_at_to_minute'
620
+
621
+ find(:css, '#grid_submit_grid_icon').click
622
+
623
+ within '.pagination_status' do
624
+ expect(page).to have_content('1-16 / 16')
625
+ end
626
+
627
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
628
+ expect(page).to have_content('13 Aug 22:11')
629
+ end
630
+
631
+ within 'div.wice-grid-container table.wice-grid thead' do
632
+ click_on 'ID'
633
+ end
634
+
635
+ within '.pagination_status' do
636
+ expect(page).to have_content('1-16 / 16')
637
+ end
638
+
639
+ find(:css, '#grid_reset_grid_icon').click
640
+ within '.pagination_status' do
641
+ expect(page).to have_content('1-20 / 50')
642
+ end
643
+ end
644
+ end
645
+
646
+ shared_examples 'Created At standard filtering' do
647
+ it 'should filter by created_at' do
648
+ select '2011', from: 'grid_f_updated_at_fr_year'
649
+ select 'January', from: 'grid_f_updated_at_fr_month'
650
+ select '8', from: 'grid_f_updated_at_fr_day'
651
+ select '00', from: 'grid_f_updated_at_fr_hour'
652
+ select '00', from: 'grid_f_updated_at_fr_minute'
653
+
654
+ select '2011', from: 'grid_f_updated_at_to_year'
655
+ select 'December', from: 'grid_f_updated_at_to_month'
656
+ select '10', from: 'grid_f_updated_at_to_day'
657
+ select '00', from: 'grid_f_updated_at_to_hour'
658
+ select '00', from: 'grid_f_updated_at_to_minute'
659
+
660
+ find(:css, '#grid_submit_grid_icon').click
661
+
662
+ within '.pagination_status' do
663
+ expect(page).to have_content('1-14 / 14')
664
+ end
665
+
666
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
667
+ expect(page).to have_content('2011-11-26 22:11:12')
668
+ end
669
+
670
+ within 'div.wice-grid-container table.wice-grid thead' do
671
+ click_on 'ID'
672
+ end
673
+
674
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
675
+ expect(page).to have_content('2011-12-07 22:11:12')
676
+ end
677
+
678
+ within '.pagination_status' do
679
+ expect(page).to have_content('1-14 / 14')
680
+ end
681
+
682
+ find(:css, '#grid_reset_grid_icon').click
683
+
684
+ within '.pagination_status' do
685
+ expect(page).to have_content('1-20 / 50')
686
+ end
687
+ end
688
+ end
689
+
690
+ shared_examples 'Description filtering' do
691
+ it 'should filter by Description' do
692
+ fill_in('grid_f_description', with: 've')
693
+
694
+ find(:css, '#grid_submit_grid_icon').click
695
+
696
+ within '.pagination_status' do
697
+ expect(page).to have_content('1-12 / 12')
698
+ end
699
+
700
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
701
+ expect(page).to have_content('Velit atque sapiente aspernatur sint fuga.')
702
+ end
703
+
704
+ expect(page).to have_content('Vero sit voluptate sed tempora et provident sequi nihil.')
705
+
706
+ within 'div.wice-grid-container table.wice-grid thead' do
707
+ click_on 'Description'
708
+ end
709
+
710
+ within '.pagination_status' do
711
+ expect(page).to have_content('1-12 / 12')
712
+ end
713
+
714
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
715
+ expect(page).to have_content('Ad sunt vel maxime labore temporibus incidunt quidem.')
716
+ end
717
+
718
+ expect(page).to have_content('Adipisci voluptate sed esse velit.')
719
+
720
+ within 'div.wice-grid-container table.wice-grid thead' do
721
+ click_on 'ID'
722
+ end
723
+
724
+ within '.pagination_status' do
725
+ expect(page).to have_content('1-12 / 12')
726
+ end
727
+
728
+ expect(page).to have_content('Adipisci voluptate sed esse velit.')
729
+ expect(page).to have_content('Ad sunt vel maxime labore temporibus incidunt quidem.')
730
+
731
+ find(:css, '#grid_reset_grid_icon').click
732
+ within '.pagination_status' do
733
+ expect(page).to have_content('1-20 / 50')
734
+ end
735
+ end
736
+ end
737
+
738
+ shared_examples 'ID filtering' do
739
+ it 'should filter by ID, one limit' do
740
+ fill_in('grid_f_id_eq', with: 550)
741
+
742
+ find(:css, '#grid_submit_grid_icon').click
743
+
744
+ within '.pagination_status' do
745
+ expect(page).to have_content('1-1 / 1')
746
+ end
747
+
748
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
749
+ expect(page).to have_content('550')
750
+ end
751
+ end
752
+ end
753
+
754
+ shared_examples 'ID filtering, range' do
755
+ it 'should filter by ID, one limit' do
756
+ fill_in('grid_f_id_fr', with: 550)
757
+
758
+ find(:css, '#grid_submit_grid_icon').click
759
+
760
+ within '.pagination_status' do
761
+ expect(page).to have_content('1-7 / 7')
762
+ end
763
+
764
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
765
+ expect(page).to have_content('550')
766
+ end
767
+
768
+ 551.upto(556) do |i|
769
+ expect(page).to have_content(i)
770
+ end
771
+
772
+ within 'div.wice-grid-container table.wice-grid thead' do
773
+ click_on 'ID'
774
+ end
775
+
776
+ within '.pagination_status' do
777
+ expect(page).to have_content('1-7 / 7')
778
+ end
779
+
780
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted.active-filter' do
781
+ expect(page).to have_content('550')
782
+ end
783
+
784
+ 551.upto(556) do |i|
785
+ expect(page).to have_content(i)
786
+ end
787
+
788
+ within 'div.wice-grid-container table.wice-grid thead' do
789
+ click_on 'ID'
790
+ end
791
+
792
+ within '.pagination_status' do
793
+ expect(page).to have_content('1-7 / 7')
794
+ end
795
+
796
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
797
+ expect(page).to have_content('556')
798
+ end
799
+
800
+ within 'div.wice-grid-container table.wice-grid thead' do
801
+ click_on 'Title'
802
+ end
803
+
804
+ within '.pagination_status' do
805
+ expect(page).to have_content('1-7 / 7')
806
+ end
807
+
808
+ 550.upto(556) do |i|
809
+ expect(page).to have_content(i)
810
+ end
811
+
812
+ find(:css, '#grid_reset_grid_icon').click
813
+ within '.pagination_status' do
814
+ expect(page).to have_content('1-20 / 50')
815
+ end
816
+ end
817
+ end
818
+
819
+ shared_examples 'ID two limits filtering' do
820
+ it 'should filter by ID, two limits' do
821
+ fill_in('grid_f_id_fr', with: 507)
822
+ fill_in('grid_f_id_to', with: 509)
823
+
824
+ find(:css, '#grid_submit_grid_icon').click
825
+
826
+ within '.pagination_status' do
827
+ expect(page).to have_content('1-3 / 3')
828
+ end
829
+
830
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
831
+ expect(page).to have_content('507')
832
+ end
833
+
834
+ expect(page).to have_content('508')
835
+ expect(page).to have_content('509')
836
+
837
+ within 'div.wice-grid-container table.wice-grid thead' do
838
+ click_on 'ID'
839
+ end
840
+
841
+ within '.pagination_status' do
842
+ expect(page).to have_content('1-3 / 3')
843
+ end
844
+
845
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted.active-filter' do
846
+ expect(page).to have_content('507')
847
+ end
848
+
849
+ expect(page).to have_content('508')
850
+ expect(page).to have_content('509')
851
+
852
+ within 'div.wice-grid-container table.wice-grid thead' do
853
+ click_on 'ID'
854
+ end
855
+
856
+ within '.pagination_status' do
857
+ expect(page).to have_content('1-3 / 3')
858
+ end
859
+
860
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.sorted' do
861
+ expect(page).to have_content('509')
862
+ end
863
+
864
+ within 'div.wice-grid-container table.wice-grid thead' do
865
+ click_on 'Title'
866
+ end
867
+
868
+ within '.pagination_status' do
869
+ expect(page).to have_content('1-3 / 3')
870
+ end
871
+
872
+ expect(page).to have_content('507')
873
+ expect(page).to have_content('508')
874
+ expect(page).to have_content('509')
875
+
876
+ find(:css, '#grid_reset_grid_icon').click
877
+ within '.pagination_status' do
878
+ expect(page).to have_content('1-20 / 50')
879
+ end
880
+ end
881
+ end
882
+
883
+ shared_examples 'Description and Title filtering' do
884
+ it 'should filter by multiple columns' do
885
+ fill_in('grid_f_description', with: 'v')
886
+ fill_in('grid_f_title', with: 's')
887
+ select 'no', from: 'grid_f_archived'
888
+
889
+ find(:css, '#grid_submit_grid_icon').click
890
+
891
+ within '.pagination_status' do
892
+ expect(page).to have_content('1-11 / 11')
893
+ end
894
+
895
+ expect(page).to have_content('Inventore iure eos labore ipsum.')
896
+ expect(page).to have_content('Velit atque sapiente aspernatur sint fuga.')
897
+
898
+ within 'div.wice-grid-container table.wice-grid thead' do
899
+ click_on 'Description'
900
+ end
901
+
902
+ within '.pagination_status' do
903
+ expect(page).to have_content('1-11 / 11')
904
+ end
905
+
906
+ expect(page).to have_content('Inventore iure eos labore ipsum.')
907
+ expect(page).to have_content('Velit atque sapiente aspernatur sint fuga.')
908
+
909
+ find(:css, '#grid_reset_grid_icon').click
910
+ within '.pagination_status' do
911
+ expect(page).to have_content('1-20 / 50')
912
+ end
913
+ end
914
+ end
915
+
916
+ shared_examples 'Archived filtering' do
917
+ it 'should filter by Archived' do
918
+ select 'yes', from: 'grid_f_archived'
919
+ find(:css, '#grid_submit_grid_icon').click
920
+
921
+ within '.pagination_status' do
922
+ expect(page).to have_content('1-4 / 4')
923
+ end
924
+
925
+ within first(:css, 'td.active-filter') do
926
+ expect(page).to have_content('Yes')
927
+ end
928
+
929
+ select 'no', from: 'grid_f_archived'
930
+ find(:css, '#grid_submit_grid_icon').click
931
+
932
+ within '.pagination_status' do
933
+ expect(page).to have_content('1-20 / 46')
934
+ end
935
+
936
+ within first(:css, 'td.active-filter') do
937
+ expect(page).to have_content('No')
938
+ end
939
+
940
+ within 'ul.pagination' do
941
+ click_link '2'
942
+ end
943
+
944
+ within '.pagination_status' do
945
+ expect(page).to have_content('21-40 / 46')
946
+ end
947
+
948
+ within(first(:css, 'td.active-filter')) do
949
+ expect(page).to have_content('No')
950
+ end
951
+
952
+ find(:css, '#grid_reset_grid_icon').click
953
+ within '.pagination_status' do
954
+ expect(page).to have_content('1-20 / 50')
955
+ end
956
+ end
957
+ end
958
+
959
+ shared_examples 'Title filtering' do
960
+ it 'should filter by Title' do
961
+ fill_in('grid_f_title', with: 'ed')
962
+
963
+ find(:css, '#grid_submit_grid_icon').click
964
+
965
+ within '.pagination_status' do
966
+ expect(page).to have_content('1-2 / 2')
967
+ end
968
+
969
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
970
+ expect(page).to have_content('sed impedit iste')
971
+ end
972
+
973
+ expect(page).to have_content('corporis expedita vel')
974
+
975
+ within 'div.wice-grid-container table.wice-grid thead' do
976
+ click_on 'Title'
977
+ end
978
+
979
+ within '.pagination_status' do
980
+ expect(page).to have_content('1-2 / 2')
981
+ end
982
+
983
+ within 'div.wice-grid-container table.wice-grid tbody tr:first-child td.active-filter' do
984
+ expect(page).to have_content('corporis expedita vel')
985
+ end
986
+
987
+ expect(page).to have_content('sed impedit iste')
988
+
989
+ within 'div.wice-grid-container table.wice-grid thead' do
990
+ click_on 'ID'
991
+ end
992
+
993
+ within '.pagination_status' do
994
+ expect(page).to have_content('1-2 / 2')
995
+ end
996
+
997
+ expect(page).to have_content('corporis expedita vel')
998
+ expect(page).to have_content('sed impedit iste')
999
+
1000
+ find(:css, '#grid_reset_grid_icon').click
1001
+ within '.pagination_status' do
1002
+ expect(page).to have_content('1-20 / 50')
1003
+ end
1004
+ end
1005
+ end