browsercms 3.1.5 → 3.3.0.beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (425) hide show
  1. data/app/controllers/cms/base_controller.rb +3 -3
  2. data/app/controllers/cms/content_block_controller.rb +2 -2
  3. data/app/controllers/cms/content_controller.rb +5 -4
  4. data/app/controllers/cms/error_handling.rb +1 -1
  5. data/app/controllers/cms/routes_controller.rb +4 -5
  6. data/app/controllers/cms/section_nodes_controller.rb +1 -6
  7. data/app/controllers/cms/sections_controller.rb +2 -3
  8. data/app/controllers/cms/tasks_controller.rb +3 -0
  9. data/app/controllers/cms/users_controller.rb +1 -1
  10. data/app/helpers/cms/application_helper.rb +137 -34
  11. data/app/helpers/cms/form_builder.rb +33 -21
  12. data/app/helpers/cms/page_helper.rb +43 -10
  13. data/app/helpers/cms/path_helper.rb +1 -1
  14. data/app/helpers/cms/rendering_helper.rb +3 -4
  15. data/app/helpers/cms/section_nodes_helper.rb +5 -43
  16. data/app/models/abstract_file_block.rb +1 -16
  17. data/app/models/attachment.rb +57 -22
  18. data/app/models/category.rb +4 -4
  19. data/app/models/category_type.rb +2 -2
  20. data/app/models/cms/view_context.rb +46 -0
  21. data/app/models/connector.rb +7 -6
  22. data/app/models/content_type.rb +3 -3
  23. data/app/models/dynamic_view.rb +1 -1
  24. data/app/models/email_message.rb +2 -2
  25. data/app/models/file_block.rb +12 -0
  26. data/app/models/group.rb +4 -4
  27. data/app/models/group_type.rb +4 -4
  28. data/app/models/html_block.rb +1 -1
  29. data/app/models/image_block.rb +12 -0
  30. data/app/models/link.rb +22 -5
  31. data/app/models/page.rb +87 -46
  32. data/app/models/page_route.rb +61 -6
  33. data/app/models/permission.rb +1 -1
  34. data/app/models/portlet.rb +14 -4
  35. data/app/models/section.rb +48 -86
  36. data/app/models/section_node.rb +25 -40
  37. data/app/models/site.rb +1 -1
  38. data/app/models/tag.rb +1 -1
  39. data/app/models/task.rb +8 -7
  40. data/app/models/user.rb +2 -7
  41. data/app/portlets/forgot_password_portlet.rb +6 -2
  42. data/app/portlets/reset_password_portlet.rb +1 -1
  43. data/app/views/cms/blocks/_toolbar.html.erb +1 -1
  44. data/app/views/cms/blocks/_toolbar_for_collection.html.erb +3 -6
  45. data/app/views/cms/blocks/_toolbar_for_member.html.erb +3 -5
  46. data/app/views/cms/blocks/edit.html.erb +4 -4
  47. data/app/views/cms/blocks/index.html.erb +7 -7
  48. data/app/views/cms/blocks/new.html.erb +4 -4
  49. data/app/views/cms/blocks/show.html.erb +2 -2
  50. data/app/views/cms/blocks/usages.html.erb +2 -2
  51. data/app/views/cms/blocks/versions.html.erb +4 -4
  52. data/app/views/cms/cache/show.html.erb +2 -2
  53. data/app/views/cms/categories/_form.html.erb +2 -2
  54. data/app/views/cms/connectors/new.html.erb +6 -8
  55. data/app/views/cms/content/no_page.html.erb +1 -1
  56. data/app/views/cms/content/show.html.erb +2 -7
  57. data/app/views/cms/dashboard/_page_drafts.html.erb +1 -1
  58. data/app/views/cms/dashboard/_tasks.html.erb +1 -1
  59. data/app/views/cms/dashboard/index.html.erb +1 -1
  60. data/app/views/cms/dynamic_views/_form.html.erb +2 -2
  61. data/app/views/cms/dynamic_views/index.html.erb +7 -10
  62. data/app/views/cms/email_messages/show.html.erb +2 -2
  63. data/app/views/cms/file_blocks/_form.html.erb +4 -4
  64. data/app/views/cms/form_builder/_cms_fancy_drop_down.html.erb +2 -2
  65. data/app/views/cms/form_builder/_cms_file_field.html.erb +2 -2
  66. data/app/views/cms/form_builder/_cms_tag_list.html.erb +2 -2
  67. data/app/views/cms/form_builder/_cms_text_editor.html.erb +2 -2
  68. data/app/views/cms/groups/_form.html.erb +5 -5
  69. data/app/views/cms/groups/_permissions.html.erb +4 -4
  70. data/app/views/cms/groups/_sections.html.erb +1 -2
  71. data/app/views/cms/groups/index.html.erb +1 -1
  72. data/app/views/cms/html_blocks/render.html.erb +1 -1
  73. data/app/views/cms/image_blocks/_form.html.erb +4 -5
  74. data/app/views/cms/links/_form.html.erb +1 -1
  75. data/app/views/cms/links/edit.html.erb +2 -2
  76. data/app/views/cms/links/new.html.erb +2 -2
  77. data/app/views/cms/page_routes/_form.html.erb +2 -2
  78. data/app/views/cms/page_routes/index.html.erb +6 -9
  79. data/app/views/cms/page_routes/show.html.erb +5 -8
  80. data/app/views/cms/pages/_edit_connector.html.erb +1 -1
  81. data/app/views/cms/pages/_form.html.erb +3 -3
  82. data/app/views/cms/pages/edit.html.erb +2 -2
  83. data/app/views/cms/pages/new.html.erb +7 -7
  84. data/app/views/cms/pages/versions.html.erb +4 -4
  85. data/app/views/cms/redirects/_form.html.erb +2 -2
  86. data/app/views/cms/redirects/index.html.erb +8 -7
  87. data/app/views/cms/routes/index.html.erb +2 -2
  88. data/app/views/cms/section_nodes/_link.html.erb +3 -6
  89. data/app/views/cms/section_nodes/_node.html.erb +4 -13
  90. data/app/views/cms/section_nodes/_page.html.erb +7 -13
  91. data/app/views/cms/section_nodes/_section.html.erb +8 -24
  92. data/app/views/cms/section_nodes/_section_node.html.erb +10 -0
  93. data/app/views/cms/section_nodes/index.html.erb +18 -30
  94. data/app/views/cms/sections/_form.html.erb +4 -6
  95. data/app/views/cms/sections/edit.html.erb +2 -2
  96. data/app/views/cms/sections/index.html.erb +3 -3
  97. data/app/views/cms/sections/new.html.erb +3 -3
  98. data/app/views/cms/sessions/new.html.erb +3 -3
  99. data/app/views/cms/shared/_pagination.html.erb +1 -1
  100. data/app/views/cms/shared/error.html.erb +1 -1
  101. data/app/views/cms/tags/render.html.erb +2 -2
  102. data/app/views/cms/tasks/new.html.erb +4 -4
  103. data/app/views/cms/users/_form.html.erb +3 -3
  104. data/app/views/cms/users/_toolbar.html.erb +3 -3
  105. data/app/views/cms/users/change_password.html.erb +5 -5
  106. data/app/views/cms/users/edit.html.erb +2 -2
  107. data/app/views/cms/users/index.html.erb +4 -4
  108. data/app/views/cms/users/new.html.erb +2 -2
  109. data/app/views/cms/users/show.html.erb +16 -16
  110. data/app/views/layouts/_cms_toolbar.html.erb +5 -5
  111. data/app/views/layouts/_page_toolbar.html.erb +11 -11
  112. data/app/views/layouts/cms/_footer.erb +1 -1
  113. data/app/views/layouts/cms/_head.html.erb +2 -6
  114. data/app/views/layouts/cms/administration.html.erb +32 -32
  115. data/app/views/layouts/cms/content_library.html.erb +5 -5
  116. data/app/views/layouts/cms/toolbar.html.erb +1 -1
  117. data/app/views/portlets/email_page/render.html.erb +2 -2
  118. data/app/views/portlets/forgot_password/render.html.erb +1 -1
  119. data/app/views/portlets/login/render.html.erb +4 -2
  120. data/app/views/portlets/reset_password/render.html.erb +1 -1
  121. data/app/views/tests/pretend/open_with_layout.html.erb +1 -1
  122. data/bin/bcms +0 -0
  123. data/bin/bcms-upgrade +232 -0
  124. data/bin/browsercms +2 -2
  125. data/browsercms.gemspec +16 -14
  126. data/db/migrate/20100705083859_browsercms_3_3_0.rb +56 -0
  127. data/db/seeds.rb +58 -0
  128. data/doc/guides/html/authentication.html +448 -192
  129. data/doc/guides/html/build_it_yourself.html +454 -175
  130. data/doc/guides/html/building_modules.html +451 -220
  131. data/doc/guides/html/building_templates.html +448 -498
  132. data/doc/guides/html/content_blocks.html +450 -470
  133. data/doc/guides/html/customizing_browsercms.html +453 -169
  134. data/doc/guides/html/deployment_guide.html +443 -82
  135. data/doc/guides/html/files/bcmsorg.js +28 -0
  136. data/doc/guides/html/files/clearfix.css +8 -0
  137. data/doc/guides/html/files/cufon.js +7 -0
  138. data/doc/guides/html/files/global.css +190 -0
  139. data/doc/guides/html/files/helvetica.js +91 -0
  140. data/doc/guides/html/files/jquery.js +11 -0
  141. data/doc/guides/html/getting_started.html +454 -213
  142. data/doc/guides/html/index.html +454 -174
  143. data/doc/guides/html/installing_modules.html +454 -186
  144. data/doc/guides/html/portlets.html +451 -232
  145. data/doc/guides/html/user_guide.html +452 -270
  146. data/doc/guides/html/writing_guides.html +454 -161
  147. data/lib/acts_as_list.rb +1 -1
  148. data/lib/browsercms.rb +10 -6
  149. data/lib/cms/acts.rb +7 -0
  150. data/lib/cms/authentication.rb +4 -0
  151. data/lib/cms/authentication/controller.rb +1 -1
  152. data/lib/cms/behaviors.rb +1 -1
  153. data/lib/cms/behaviors/archiving.rb +2 -2
  154. data/lib/cms/behaviors/attaching.rb +28 -43
  155. data/lib/cms/behaviors/categorizing.rb +1 -1
  156. data/lib/cms/behaviors/connecting.rb +27 -12
  157. data/lib/cms/behaviors/dynamic_attributes.rb +8 -5
  158. data/lib/cms/behaviors/hiding.rb +2 -2
  159. data/lib/cms/behaviors/publishing.rb +32 -22
  160. data/lib/cms/behaviors/rendering.rb +41 -18
  161. data/lib/cms/behaviors/searching.rb +1 -1
  162. data/lib/cms/behaviors/soft_deleting.rb +58 -29
  163. data/lib/cms/behaviors/taggable.rb +1 -1
  164. data/lib/cms/behaviors/userstamping.rb +5 -4
  165. data/lib/cms/behaviors/versioning.rb +192 -111
  166. data/lib/cms/content_rendering_support.rb +3 -3
  167. data/lib/cms/date_picker.rb +23 -0
  168. data/lib/cms/engine.rb +46 -0
  169. data/lib/cms/extensions.rb +1 -1
  170. data/lib/cms/extensions/active_record/errors.rb +2 -2
  171. data/lib/cms/extensions/hash.rb +4 -2
  172. data/lib/cms/extensions/string.rb +7 -2
  173. data/lib/cms/init.rb +32 -21
  174. data/lib/cms/module.rb +22 -0
  175. data/lib/cms/module_installation.rb +38 -0
  176. data/lib/cms/routes.rb +127 -115
  177. data/lib/cms/version.rb +2 -2
  178. data/lib/generators/browser_cms.rb +12 -0
  179. data/lib/generators/browser_cms/cms/USAGE +2 -0
  180. data/lib/generators/browser_cms/cms/cms_generator.rb +36 -0
  181. data/{rails_generators/browser_cms → lib/generators/browser_cms/cms}/templates/README +0 -0
  182. data/{rails_generators/browser_cms_demo_site → lib/generators/browser_cms/demo_site}/USAGE +0 -0
  183. data/lib/generators/browser_cms/demo_site/demo_site_generator.rb +138 -0
  184. data/lib/generators/browser_cms/demo_site/templates/demo_site.rake +11 -0
  185. data/{rails_generators/browser_cms_demo_site/templates/migration.rb → lib/generators/browser_cms/demo_site/templates/migration.erb} +2 -8
  186. data/lib/generators/cms/content_block/USAGE +22 -0
  187. data/lib/generators/cms/content_block/content_block_generator.rb +55 -0
  188. data/{rails_generators → lib/generators/cms}/content_block/templates/_form.html.erb +0 -0
  189. data/{rails_generators → lib/generators/cms}/content_block/templates/content_block.rb +0 -0
  190. data/{rails_generators → lib/generators/cms}/content_block/templates/controller.rb +0 -0
  191. data/{rails_generators → lib/generators/cms}/content_block/templates/functional_test.erb +0 -0
  192. data/{rails_generators/content_block/templates/migration.rb → lib/generators/cms/content_block/templates/migration.erb} +1 -1
  193. data/{rails_generators → lib/generators/cms}/content_block/templates/render.html.erb +0 -0
  194. data/{rails_generators → lib/generators/cms}/content_block/templates/unit_test.erb +0 -0
  195. data/lib/generators/cms/install/USAGE +8 -0
  196. data/lib/generators/cms/install/install_generator.rb +20 -0
  197. data/{rails_generators → lib/generators/cms}/portlet/USAGE +3 -16
  198. data/lib/generators/cms/portlet/portlet_generator.rb +38 -0
  199. data/{rails_generators → lib/generators/cms}/portlet/templates/_form.html.erb +0 -0
  200. data/{rails_generators → lib/generators/cms}/portlet/templates/portlet.rb +0 -0
  201. data/{rails_generators → lib/generators/cms}/portlet/templates/portlet_helper.rb +0 -0
  202. data/{rails_generators → lib/generators/cms}/portlet/templates/render.html.erb +0 -0
  203. data/{rails_generators → lib/generators/cms}/portlet/templates/unit_test.erb +0 -0
  204. data/{rails_generators → lib/generators/cms}/template/USAGE +1 -1
  205. data/lib/generators/cms/template/template_generator.rb +18 -0
  206. data/lib/generators/cms/template/templates/template.erb +2 -0
  207. data/lib/generators/cms/upgrade_module/README.txt +3 -0
  208. data/lib/generators/cms/upgrade_module/templates/20100705083859_browsercms_3_3_0.rb +56 -0
  209. data/lib/generators/cms/upgrade_module/templates/README +1 -0
  210. data/lib/generators/cms/upgrade_module/templates/USAGE.erb +10 -0
  211. data/lib/generators/cms/upgrade_module/templates/build_gem.rake +5 -0
  212. data/lib/generators/cms/upgrade_module/templates/engine.erb +7 -0
  213. data/lib/generators/cms/upgrade_module/templates/gemspec.erb +25 -0
  214. data/lib/generators/cms/upgrade_module/templates/gitignore.erb +11 -0
  215. data/lib/generators/cms/upgrade_module/templates/install.erb +9 -0
  216. data/lib/generators/cms/upgrade_module/templates/module_file.erb +3 -0
  217. data/lib/generators/cms/upgrade_module/templates/routes.erb +7 -0
  218. data/lib/generators/cms/upgrade_module/upgrade_module_generator.rb +61 -0
  219. data/lib/tasks/build_gem.rake +1 -0
  220. data/lib/tasks/cms.rake +34 -6
  221. data/lib/tasks/cucumber.rake +53 -0
  222. data/lib/tasks/db.rake +2 -2
  223. data/public/javascripts/cms/application.js +144 -135
  224. data/public/javascripts/cms/sitemap.js +383 -357
  225. data/public/javascripts/jquery-ui.js +782 -591
  226. data/public/javascripts/jquery.cookie.js +38 -43
  227. data/public/javascripts/jquery.js +13 -8
  228. data/public/javascripts/jquery.taglist.js +7 -0
  229. data/public/stylesheets/cms/date_picker.css +49 -40
  230. data/rails/init.rb +2 -3
  231. data/templates/blank.rb +13 -7
  232. data/templates/demo.rb +15 -7
  233. data/templates/module.rb +12 -75
  234. metadata +87 -407
  235. data/app/helpers/cms/content_block_helper.rb +0 -27
  236. data/app/views/layouts/cms/thickbox.html.erb +0 -24
  237. data/db/migrate/20120117144039_browsercms315.rb +0 -94
  238. data/db/migrate/20121114172307_load_seeds.rb +0 -70
  239. data/lib/cms/addressable.rb +0 -83
  240. data/lib/cms/error_pages.rb +0 -8
  241. data/public/images/cms/thickbox/loadingAnimation.gif +0 -0
  242. data/public/images/cms/thickbox/macFFBgHack.png +0 -0
  243. data/public/javascripts/jquery.contextMenu.js +0 -211
  244. data/public/javascripts/jquery.dimensions.js +0 -119
  245. data/public/javascripts/jquery.thickbox.js +0 -10
  246. data/public/stylesheets/cms/jquery.contextMenu.css +0 -61
  247. data/public/stylesheets/cms/thickbox.css +0 -163
  248. data/rails_generators/browser_cms/USAGE +0 -2
  249. data/rails_generators/browser_cms/browser_cms_generator.rb +0 -35
  250. data/rails_generators/browser_cms_demo_site/browser_cms_demo_site_generator.rb +0 -63
  251. data/rails_generators/content_block/USAGE +0 -32
  252. data/rails_generators/content_block/content_block_generator.rb +0 -69
  253. data/rails_generators/portlet/portlet_generator.rb +0 -35
  254. data/rails_generators/template/template_generator.rb +0 -18
  255. data/rails_generators/template/templates/template.erb +0 -3
  256. data/test/custom_assertions.rb +0 -74
  257. data/test/factories.rb +0 -111
  258. data/test/factories/sitemap_factories.rb +0 -28
  259. data/test/fixtures/connectors.yml +0 -97
  260. data/test/fixtures/content_type_groups.yml +0 -13
  261. data/test/fixtures/content_types.yml +0 -50
  262. data/test/fixtures/dynamic_view_versions.yml +0 -26
  263. data/test/fixtures/dynamic_views.yml +0 -26
  264. data/test/fixtures/group_permissions.yml +0 -16
  265. data/test/fixtures/group_sections.yml +0 -31
  266. data/test/fixtures/group_type_permissions.yml +0 -11
  267. data/test/fixtures/group_types.yml +0 -25
  268. data/test/fixtures/groups.yml +0 -25
  269. data/test/fixtures/html_block_versions.yml +0 -67
  270. data/test/fixtures/html_blocks.yml +0 -63
  271. data/test/fixtures/page_versions.yml +0 -265
  272. data/test/fixtures/pages.yml +0 -85
  273. data/test/fixtures/permissions.yml +0 -28
  274. data/test/fixtures/section_nodes.yml +0 -46
  275. data/test/fixtures/sections.yml +0 -19
  276. data/test/fixtures/sites.yml +0 -9
  277. data/test/fixtures/user_group_memberships.yml +0 -11
  278. data/test/fixtures/users.yml +0 -15
  279. data/test/functional/cms/cache_controller_test.rb +0 -14
  280. data/test/functional/cms/categories_controller_test.rb +0 -25
  281. data/test/functional/cms/connectors_controller_test.rb +0 -60
  282. data/test/functional/cms/content_block_controller_test.rb +0 -120
  283. data/test/functional/cms/content_controller_test.rb +0 -439
  284. data/test/functional/cms/content_types_controller_test.rb +0 -18
  285. data/test/functional/cms/dashboard_controller_test.rb +0 -16
  286. data/test/functional/cms/dynamic_views_controller_test.rb +0 -52
  287. data/test/functional/cms/file_blocks_controller_test.rb +0 -52
  288. data/test/functional/cms/groups_controller_test.rb +0 -50
  289. data/test/functional/cms/home_controller_test.rb +0 -156
  290. data/test/functional/cms/html_blocks_controller_test.rb +0 -164
  291. data/test/functional/cms/image_blocks_controller_test.rb +0 -82
  292. data/test/functional/cms/links_controller_test.rb +0 -148
  293. data/test/functional/cms/pages_controller_test.rb +0 -227
  294. data/test/functional/cms/portlets_controller_test.rb +0 -67
  295. data/test/functional/cms/section_nodes_controller_test.rb +0 -112
  296. data/test/functional/cms/sections_controller_test.rb +0 -227
  297. data/test/functional/cms/sessions_controller_test.rb +0 -76
  298. data/test/functional/cms/toolbar_controller_test.rb +0 -64
  299. data/test/functional/cms/users_controller_test.rb +0 -231
  300. data/test/functional/tests/pretend_controller_test.rb +0 -57
  301. data/test/integration/cms/ckeditor_test.rb +0 -30
  302. data/test/integration/cms/password_management_test.rb +0 -56
  303. data/test/integration/login_test.rb +0 -14
  304. data/test/integration/sitemap_performance_test.rb +0 -26
  305. data/test/selenium-core/Blank.html +0 -7
  306. data/test/selenium-core/InjectedRemoteRunner.html +0 -8
  307. data/test/selenium-core/RemoteRunner.html +0 -110
  308. data/test/selenium-core/SeleniumLog.html +0 -109
  309. data/test/selenium-core/TestPrompt.html +0 -145
  310. data/test/selenium-core/TestRunner-splash.html +0 -55
  311. data/test/selenium-core/TestRunner.hta +0 -176
  312. data/test/selenium-core/TestRunner.html +0 -176
  313. data/test/selenium-core/domviewer/butmin.gif +0 -0
  314. data/test/selenium-core/domviewer/butplus.gif +0 -0
  315. data/test/selenium-core/domviewer/domviewer.css +0 -298
  316. data/test/selenium-core/domviewer/domviewer.html +0 -16
  317. data/test/selenium-core/domviewer/selenium-domviewer.js +0 -205
  318. data/test/selenium-core/icons/all.png +0 -0
  319. data/test/selenium-core/icons/continue.png +0 -0
  320. data/test/selenium-core/icons/continue_disabled.png +0 -0
  321. data/test/selenium-core/icons/pause.png +0 -0
  322. data/test/selenium-core/icons/pause_disabled.png +0 -0
  323. data/test/selenium-core/icons/selected.png +0 -0
  324. data/test/selenium-core/icons/step.png +0 -0
  325. data/test/selenium-core/icons/step_disabled.png +0 -0
  326. data/test/selenium-core/iedoc-core.xml +0 -1515
  327. data/test/selenium-core/iedoc.xml +0 -1469
  328. data/test/selenium-core/lib/cssQuery/cssQuery-p.js +0 -6
  329. data/test/selenium-core/lib/cssQuery/src/cssQuery-level2.js +0 -142
  330. data/test/selenium-core/lib/cssQuery/src/cssQuery-level3.js +0 -150
  331. data/test/selenium-core/lib/cssQuery/src/cssQuery-standard.js +0 -53
  332. data/test/selenium-core/lib/cssQuery/src/cssQuery.js +0 -356
  333. data/test/selenium-core/lib/prototype.js +0 -2006
  334. data/test/selenium-core/lib/scriptaculous/builder.js +0 -101
  335. data/test/selenium-core/lib/scriptaculous/controls.js +0 -815
  336. data/test/selenium-core/lib/scriptaculous/dragdrop.js +0 -915
  337. data/test/selenium-core/lib/scriptaculous/effects.js +0 -958
  338. data/test/selenium-core/lib/scriptaculous/scriptaculous.js +0 -47
  339. data/test/selenium-core/lib/scriptaculous/slider.js +0 -283
  340. data/test/selenium-core/lib/scriptaculous/unittest.js +0 -383
  341. data/test/selenium-core/scripts/find_matching_child.js +0 -69
  342. data/test/selenium-core/scripts/htmlutils.js +0 -894
  343. data/test/selenium-core/scripts/injection.html +0 -72
  344. data/test/selenium-core/scripts/js2html.js +0 -70
  345. data/test/selenium-core/scripts/narcissus-defs.js +0 -175
  346. data/test/selenium-core/scripts/narcissus-exec.js +0 -1054
  347. data/test/selenium-core/scripts/narcissus-parse.js +0 -1003
  348. data/test/selenium-core/scripts/se2html.js +0 -63
  349. data/test/selenium-core/scripts/selenium-api.js +0 -2409
  350. data/test/selenium-core/scripts/selenium-browserbot.js +0 -2203
  351. data/test/selenium-core/scripts/selenium-browserdetect.js +0 -150
  352. data/test/selenium-core/scripts/selenium-commandhandlers.js +0 -377
  353. data/test/selenium-core/scripts/selenium-executionloop.js +0 -175
  354. data/test/selenium-core/scripts/selenium-logging.js +0 -147
  355. data/test/selenium-core/scripts/selenium-remoterunner.js +0 -571
  356. data/test/selenium-core/scripts/selenium-testrunner.js +0 -1333
  357. data/test/selenium-core/scripts/selenium-version.js +0 -5
  358. data/test/selenium-core/scripts/user-extensions.js +0 -3
  359. data/test/selenium-core/scripts/user-extensions.js.sample +0 -75
  360. data/test/selenium-core/scripts/xmlextras.js +0 -153
  361. data/test/selenium-core/selenium-logo.png +0 -0
  362. data/test/selenium-core/selenium-test.css +0 -43
  363. data/test/selenium-core/selenium.css +0 -299
  364. data/test/selenium-core/xpath/dom.js +0 -428
  365. data/test/selenium-core/xpath/misc.js +0 -252
  366. data/test/selenium-core/xpath/xpath.js +0 -2223
  367. data/test/selenium/_login_as_cmsadmin.rsel +0 -4
  368. data/test/selenium/dashboard.rsel +0 -5
  369. data/test/selenium/html_blocks.rsel +0 -4
  370. data/test/selenium/login/failed_login.rsel +0 -8
  371. data/test/selenium/login/successful_login.rsel +0 -9
  372. data/test/selenium/page_templates.rsel +0 -12
  373. data/test/selenium/pages/edit_properties.rsel +0 -5
  374. data/test/selenium/site/view_home_page.rsel +0 -4
  375. data/test/selenium/sitemap/move_page.rsel +0 -9
  376. data/test/selenium/sitemap/open_section.rsel +0 -6
  377. data/test/selenium/sitemap/select_page.rsel +0 -12
  378. data/test/selenium/sitemap/select_section.rsel +0 -17
  379. data/test/test_helper.rb +0 -193
  380. data/test/test_logging.rb +0 -67
  381. data/test/unit/behaviors/attaching_test.rb +0 -357
  382. data/test/unit/behaviors/connectable_test.rb +0 -29
  383. data/test/unit/behaviors/dynamic_attributes_test.rb +0 -38
  384. data/test/unit/behaviors/publishable_test.rb +0 -84
  385. data/test/unit/behaviors/searching_test.rb +0 -102
  386. data/test/unit/behaviors/taggable_test.rb +0 -109
  387. data/test/unit/behaviors/versioning_test.rb +0 -36
  388. data/test/unit/extensions/active_record/base_test.rb +0 -10
  389. data/test/unit/extensions/hash_test.rb +0 -17
  390. data/test/unit/extensions/integer_test.rb +0 -10
  391. data/test/unit/helpers/application_helper_test.rb +0 -77
  392. data/test/unit/helpers/form_builder_test.rb +0 -36
  393. data/test/unit/helpers/menu_helper_test.rb +0 -242
  394. data/test/unit/helpers/page_helper_test.rb +0 -67
  395. data/test/unit/helpers/path_helper_test.rb +0 -57
  396. data/test/unit/lib/acts_as_content_page_test.rb +0 -72
  397. data/test/unit/lib/cms/authentication/controller_test.rb +0 -20
  398. data/test/unit/lib/cms/sitemap_test.rb +0 -206
  399. data/test/unit/lib/cms_domain_support_test.rb +0 -43
  400. data/test/unit/lib/command_line_test.rb +0 -70
  401. data/test/unit/lib/content_block_test.rb +0 -203
  402. data/test/unit/lib/content_rendering_support_test.rb +0 -40
  403. data/test/unit/lib/generators_test.rb +0 -40
  404. data/test/unit/lib/routes_test.rb +0 -57
  405. data/test/unit/models/attachment_test.rb +0 -116
  406. data/test/unit/models/category_test.rb +0 -40
  407. data/test/unit/models/category_type_test.rb +0 -8
  408. data/test/unit/models/connector_test.rb +0 -152
  409. data/test/unit/models/content_type_test.rb +0 -56
  410. data/test/unit/models/email_page_portlet_test.rb +0 -14
  411. data/test/unit/models/file_block_test.rb +0 -230
  412. data/test/unit/models/group_test.rb +0 -13
  413. data/test/unit/models/html_block_test.rb +0 -102
  414. data/test/unit/models/link_test.rb +0 -52
  415. data/test/unit/models/page_partial_test.rb +0 -29
  416. data/test/unit/models/page_route_test.rb +0 -29
  417. data/test/unit/models/page_template_test.rb +0 -40
  418. data/test/unit/models/page_test.rb +0 -792
  419. data/test/unit/models/permission_test.rb +0 -10
  420. data/test/unit/models/portlet_test.rb +0 -69
  421. data/test/unit/models/sections_test.rb +0 -264
  422. data/test/unit/models/site_test.rb +0 -50
  423. data/test/unit/models/task_test.rb +0 -141
  424. data/test/unit/models/user_test.rb +0 -352
  425. data/test/unit/schema_statements_test.rb +0 -41
@@ -1,56 +0,0 @@
1
- require File.join(File.dirname(__FILE__), '/../../test_helper')
2
-
3
- # Sample Model for testing naming/model classes
4
- class Kindness < ActiveRecord::Base
5
- acts_as_content_block
6
- end
7
-
8
- class ReallyLongNameClass < ActiveRecord::Base
9
- acts_as_content_block
10
-
11
- def self.display_name
12
- "Short"
13
- end
14
-
15
- def self.display_name_plural
16
- "Shorteez"
17
- end
18
- end
19
-
20
- class ContentTypeTest < ActiveSupport::TestCase
21
- def setup
22
- @c = ContentType.new(:name => "ReallyLongNameClass")
23
- end
24
-
25
- def test_model_class
26
- assert_equal ReallyLongNameClass, @c.model_class
27
- end
28
-
29
- test "creating self.display_name on content block will set display_name on content type" do
30
- assert_equal "Short", @c.display_name
31
- end
32
-
33
- test "creating self.display_name_plural on content block will set display_name_plural on content type" do
34
- assert_equal "Shorteez", @c.display_name_plural
35
- end
36
-
37
- def test_content_block_type
38
- assert_equal "really_long_name_classes", @c.content_block_type
39
- end
40
-
41
- test "find_by_key handles names that end with s correctly" do
42
- ContentType.create!(:name => "Kindness", :group_name => "Anything")
43
-
44
- ct = ContentType.find_by_key("kindness")
45
- assert_not_nil ct
46
- assert_equal "Kindness", ct.display_name
47
- end
48
-
49
- test "calculate the model_class name with s" do
50
- ct = ContentType.new(:name=>"Kindness")
51
- assert_equal Kindness, ct.model_class
52
- end
53
-
54
-
55
- end
56
-
@@ -1,14 +0,0 @@
1
- require File.join(File.dirname(__FILE__), '/../../test_helper')
2
-
3
- class EmailPagePortletTest < ActiveSupport::TestCase
4
-
5
- def test_default_template_path
6
- assert_equal "portlets/email_page/render", EmailPagePortlet.default_template_path
7
- end
8
-
9
- def test_default_template
10
- assert_equal File.read(File.join(Rails.root, "app/views/portlets/email_page/render.html.erb")), EmailPagePortlet.default_template
11
- end
12
-
13
- end
14
-
@@ -1,230 +0,0 @@
1
- require File.join(File.dirname(__FILE__), '/../../test_helper')
2
-
3
- class FileBlockTest < ActiveSupport::TestCase
4
-
5
- def setup
6
- @root = Factory :root_section
7
- #@file is a mock of the object that Rails wraps file uploads in
8
- @file = file_upload_object(:original_filename => "foo.jpg",
9
- :content_type => "image/jpeg", :rewind => true,
10
- :size => "99", :read => "01010010101010101")
11
- @file_block = Factory.build(:file_block, :attachment_file => @file, :attachment_section => @root, :attachment_file_path => "/test.jpg", :publish_on_save => true)
12
- end
13
-
14
- def test_attachment_is_required
15
- @file_block.attachment_file = nil
16
- assert !@file_block.valid?
17
- assert_equal "You must upload a file", @file_block.errors.on(:attachment_file)
18
- end
19
-
20
- def test_attachment_file_path_is_required
21
- @file_block.attachment_file_path = nil
22
- assert !@file_block.valid?
23
- assert_equal "File Name is required for attachment", @file_block.errors.on(:attachment_file_path)
24
- end
25
-
26
- def test_no_leading_slash_in_file_path
27
- @file_block.attachment_file_path = "test.jpg"
28
- assert @file_block.save
29
- assert_equal "/test.jpg", @file_block.path
30
- end
31
-
32
- def test_create_attachment
33
- assert @file_block.save
34
- assert !@file_block.attachment.nil?
35
- assert "image/jpeg", @file_block.attachment.file_type
36
- assert_equal "/test.jpg", @file_block.path
37
- assert_equal 1, @file_block.attachment_version
38
- assert_equal @root, @file_block.attachment.section
39
- end
40
-
41
- def test_reverting
42
- assert @file_block.save
43
- assert "/test.jpg", @file_block.attachment_file_path
44
- assert "01010010101010101", File.read(@file_block.attachment.full_file_location)
45
-
46
- attachment_id = @file_block.attachment_id
47
- new_file = file_upload_object(:original_filename => "foo.jpg",
48
- :content_type => "image/jpeg", :rewind => true,
49
- :size => "99", :read => "10100101010101010")
50
-
51
- @file_block.update_attributes(:attachment_file => new_file, :publish_on_save => true)
52
- reset(:file_block)
53
-
54
- assert @file_block.save
55
- assert 2, @file_block.version
56
- assert attachment_id, @file_block.attachment_id
57
- assert 2, @file_block.attachment_version
58
- assert "/test.jpg", @file_block.attachment_file_path
59
- assert "10100101010101010", File.read(@file_block.attachment.full_file_location)
60
-
61
- @file_block.revert_to(1)
62
- reset(:file_block)
63
-
64
- assert 2, @file_block.version
65
- assert 3, @file_block.draft.version
66
- assert attachment_id, @file_block.attachment_id
67
- assert 2, @file_block.attachment_version
68
- assert 3, @file_block.draft.attachment_version
69
- assert "/test.jpg", @file_block.attachment_file_path
70
- assert "01010010101010101", File.read(@file_block.attachment.full_file_location)
71
- assert "10100101010101010", File.read(@file_block.as_of_draft_version.attachment.full_file_location)
72
-
73
- end
74
-
75
- end
76
-
77
- class UpdatingFileBlockTest < ActiveSupport::TestCase
78
- def setup
79
- @file_block = Factory(:file_block,
80
- :attachment_section => root_section,
81
- :attachment_file_path => "/test.jpg",
82
- :attachment_file => mock_file(:read => "original"),
83
- :name => "Test",
84
- :publish_on_save => true)
85
- reset(:file_block)
86
- @attachment = @file_block.attachment
87
- end
88
-
89
- def test_change_attachment_file_name
90
- attachment_version = @attachment.version
91
- file_attachment_version = @file_block.attachment_version
92
- attachment_version_count = Attachment::Version.count
93
-
94
- assert @file_block.update_attributes(
95
- :attachment_file_path => "test_new.jpg",
96
- :attachment_file => nil,
97
- :publish_on_save => true)
98
-
99
- assert_incremented attachment_version, @attachment.reload.version
100
- assert_incremented file_attachment_version, @file_block.attachment_version
101
- assert_incremented attachment_version_count, Attachment::Version.count
102
- end
103
-
104
- def test_change_attachment_section
105
- attachment_version_count = Attachment::Version.count
106
- file_block_version = @file_block.version
107
-
108
- @section = Factory(:section, :parent => root_section, :name => "New")
109
- @file_block.update_attributes!(:attachment_section => @section, :publish_on_save => true)
110
-
111
- assert_incremented file_block_version, @file_block.reload.version
112
- assert_incremented attachment_version_count, Attachment::Version.count
113
- assert_equal @section, @file_block.attachment_section
114
- assert_equal "/test.jpg", @file_block.attachment.file_path
115
- assert_equal "test.jpg", @file_block.attachment.file_name
116
- end
117
-
118
- def test_change_attachment_data_with_save
119
- attachment_count = Attachment.count
120
- attachment_version_count = Attachment::Version.count
121
- file_block_version = @file_block.draft.version
122
-
123
- @section = Factory(:section, :parent => root_section, :name => "New")
124
- @file_block.update_attributes!(:attachment_file => mock_file(:read => "new"))
125
-
126
- assert_equal attachment_count, Attachment.count
127
- assert_incremented attachment_version_count, Attachment::Version.count
128
- assert_incremented file_block_version, @file_block.draft.version
129
- assert_equal "new", open(@file_block.as_of_draft_version.attachment.full_file_location) { |f| f.read }
130
- assert !@file_block.live?
131
- assert !@file_block.attachment.live?
132
- end
133
-
134
- def test_change_attachment_data_with_save_and_publish
135
- attachment_count = Attachment.count
136
- attachment_version_count = Attachment::Version.count
137
- file_block_version = @file_block.version
138
-
139
- @section = Factory(:section, :parent => root_section, :name => "New")
140
- @file_block.update_attributes!(:attachment_file => mock_file(:read => "new"), :publish_on_save => true)
141
-
142
- assert_equal attachment_count, Attachment.count
143
- assert_incremented attachment_version_count, Attachment::Version.count
144
- assert_incremented file_block_version, @file_block.reload.version
145
- assert_equal "new", open(@file_block.attachment.full_file_location) { |f| f.read }
146
- assert @file_block.published?
147
- assert @file_block.attachment.published?
148
- end
149
-
150
- def test_no_changes_to_the_attachment
151
- attachment_count = Attachment.count
152
- attachment_version_count = Attachment::Version.count
153
- file_block_version = @file_block.version
154
-
155
- @file_block.update_attributes!(:name => "Test 2", :publish_on_save => true)
156
-
157
- assert_equal attachment_count, Attachment.count
158
- assert_equal attachment_version_count, Attachment::Version.count
159
- assert_incremented file_block_version, @file_block.reload.version
160
- assert_equal "Test 2", @file_block.name
161
- end
162
-
163
- end
164
-
165
- class ViewingOlderVersionOfFileTest < ActiveSupport::TestCase
166
-
167
- def test_that_it_shows_the_correct_content
168
- @file1 = mock_file(:content_type => "text/plain", :read => "v1")
169
- @file2 = mock_file(:content_type => "text/plain", :read => "v2")
170
- @file_block = Factory(:file_block, :attachment_file => @file1, :attachment_file_path => "/test.txt", :attachment_section => root_section)
171
- @file_block.update_attributes(:attachment_file => @file2)
172
- #reset(:file_block)
173
- assert_equal "v1", open(@file_block.as_of_version(1).attachment.full_file_location) { |f| f.read }
174
- end
175
-
176
- end
177
-
178
- class ExistingFileBlockTest < ActiveSupport::TestCase
179
- def setup
180
- @file_block = Factory(:file_block, :attachment_file => mock_file, :attachment_file_path => "/test.txt", :attachment_section => Factory(:root_section))
181
- end
182
-
183
- def test_archiving
184
- assert @file_block.update_attributes!(:archived => true)
185
- assert @file_block.attachment.archived?
186
- end
187
-
188
- def test_destroy
189
- @file_block.destroy
190
- assert_nil Attachment.find_live_by_file_path("/test.txt")
191
- end
192
- end
193
-
194
- class ExistingFileBlocksTest < ActiveSupport::TestCase
195
- def setup
196
- @one = Factory(:file_block, :attachment_file => mock_file, :attachment_file_path => "/one.txt", :attachment_section => root_section, :name=>"One")
197
- @two = Factory(:file_block, :attachment_file => mock_file, :attachment_file_path => "/two.txt", :attachment_section => root_section)
198
- @section = Factory(:section, :name => "A")
199
- @a1 = Factory(:file_block, :attachment_file => mock_file, :attachment_file_path => "/a/1.txt", :attachment_section => @section)
200
- @a2 = Factory(:file_block, :attachment_file => mock_file, :attachment_file_path => "/2.txt", :attachment_section => @section)
201
- #reset(:one, :two, :a1, :a2)
202
- end
203
-
204
- def test_find_blocks_in_root_section
205
- assert_equal [@one, @two], FileBlock.by_section(root_section).all(:order => "file_blocks.id")
206
- end
207
-
208
- def test_find_blocks_in_sub_section
209
- assert_equal [@a1, @a2], FileBlock.by_section(@section).all(:order => "file_blocks.id")
210
- end
211
-
212
- test "searchable?" do
213
- assert FileBlock.searchable?
214
- end
215
-
216
- test "search by name" do
217
- assert_equal [@one], FileBlock.search("one")
218
- end
219
-
220
- test "search by section" do
221
- options = {}
222
- options[:page] = 1
223
- options[:include] = { :attachment => :section_node }
224
- options[:conditions] = ["section_nodes.ancestry = ?", root_section.ancestry_path]
225
-
226
- assert_equal [@one, @two], FileBlock.search("").paginate(options)
227
- end
228
- end
229
-
230
-
@@ -1,13 +0,0 @@
1
- require File.join(File.dirname(__FILE__), '/../../test_helper')
2
-
3
- class GroupTest < ActiveSupport::TestCase
4
- def test_valid
5
- assert Factory.build(:group).valid?
6
- end
7
-
8
- test "Find guest group via method" do
9
- expected = Group.find_by_code(Group::GUEST_CODE)
10
- assert_not_nil expected, "Validates that our fixture code is loading a guest user into the database."
11
- assert_equal expected, Group.guest
12
- end
13
- end
@@ -1,102 +0,0 @@
1
- require File.join(File.dirname(__FILE__), '/../../test_helper')
2
-
3
- class HtmlBlockTest < ActiveSupport::TestCase
4
- def test_create
5
- @page = Factory(:page)
6
- @html_block = Factory(:html_block, :connect_to_page_id => @page.id, :connect_to_container => "test")
7
- assert_equal 1, @page.reload.connectors.count
8
- assert_equal @page, @html_block.connected_page
9
- assert_equal @page.id, @html_block.connect_to_page_id
10
- assert_equal "test", @html_block.connect_to_container
11
- end
12
-
13
- def test_versioning
14
- assert HtmlBlock.versioned?
15
-
16
- @html_block = Factory(:html_block, :name => "Original Value")
17
- assert_equal @html_block, @html_block.versions.last.html_block
18
-
19
- # Updates should make a new version
20
- assert @html_block.update_attributes(:name => "Something Different")
21
- assert_equal @html_block, @html_block.versions.last.html_block
22
- assert_equal "Something Different", @html_block.versions.last.name
23
- assert_equal "Something Different", @html_block.name
24
- assert_equal "Original Value", @html_block.versions.first.name
25
-
26
- # Updating with no changes should not generate a new version
27
- html_block_version_count = @html_block.versions.count
28
- @html_block.update_attributes(:name => "Something Different")
29
- assert_equal html_block_version_count, @html_block.versions.count
30
-
31
- # deleting should create a new version
32
- html_block_count = HtmlBlock.count_with_deleted
33
- html_block_version_count = @html_block.versions.count
34
- assert !@html_block.deleted?
35
-
36
- @html_block.destroy
37
-
38
- assert_equal html_block_count, HtmlBlock.count_with_deleted
39
- assert_incremented html_block_version_count, @html_block.versions.count
40
- assert @html_block.deleted?
41
-
42
- end
43
-
44
- def test_reverting
45
- # We need a block with a version that was created in the past
46
- @v1_created_at = Time.zone.now - 5.days
47
- @html_block = Factory(:html_block, :name => "Version One", :created_at => @v1_created_at)
48
-
49
- # Make the version be created in the past as well
50
- v1 = @html_block.versions.last
51
- v1.created_at = @v1_created_at
52
- v1.save
53
-
54
- # Make a new version
55
- @html_block.update_attributes(:name => "Version Two")
56
- @v2_created_at = @html_block.versions.last.created_at
57
-
58
- assert_equal "Version Two", @html_block.name
59
- assert_equal @v1_created_at.to_i, @html_block.find_version(1).created_at.to_i
60
- assert_equal @v2_created_at.to_i, @html_block.find_version(2).created_at.to_i
61
-
62
- @html_block.revert_to 1
63
- @html_block.reload
64
-
65
- assert_equal 3, @html_block.draft.version
66
- assert_equal "Version One", @html_block.name
67
- assert_equal @v1_created_at.to_i, @html_block.find_version(1).created_at.to_i
68
- assert_equal @v2_created_at.to_i, @html_block.find_version(2).created_at.to_i
69
- assert @html_block.find_version(3).created_at.to_i >= @v2_created_at.to_i
70
- assert @v1_created_at.to_i, @html_block.created_at.to_i
71
-
72
- # version is required for revert_to
73
- html_block_version_count = HtmlBlock::Version.count
74
- assert_raise "Version parameter missing" do
75
- @html_block.revert_to nil
76
- end
77
- assert_equal html_block_version_count, HtmlBlock::Version.count
78
-
79
- html_block_version_count = HtmlBlock::Version.count
80
- assert_raise "Could not find version 42" do
81
- @html_block.revert_to 42
82
- end
83
- assert_equal html_block_version_count, HtmlBlock::Version.count
84
- end
85
-
86
- def test_previous_version
87
- @html_block = Factory(:html_block, :name => "V1")
88
- @html_block.update_attributes(:name => "V2")
89
- @version = @html_block.as_of_version 1
90
-
91
- assert_equal HtmlBlock, @version.class
92
- assert_equal "V1", @version.name
93
- assert_equal 1, @version.version
94
- assert_equal @html_block.id, @version.id
95
-
96
- # We can't freeze the version because we need to be able to load assocations
97
- assert !@version.frozen?
98
- assert !@version.live?
99
- assert !@html_block.live?
100
- end
101
-
102
- end
@@ -1,52 +0,0 @@
1
- require File.join(File.dirname(__FILE__), '/../../test_helper')
2
-
3
- class LinkTest < ActiveSupport::TestCase
4
-
5
- def setup
6
- @link = Factory(:link)
7
- @another_link = Factory(:link)
8
- end
9
-
10
- def test_create
11
- assert Factory.build(:link).valid?
12
- assert !Factory.build(:link, :name => "").valid?
13
- end
14
-
15
- test "draft_version is stored on pages" do
16
- assert_equal 1, @link.version
17
- assert_equal 1, @link.latest_version
18
- end
19
-
20
- test "#update increments the latest_version" do
21
- @link.name = "New"
22
- @link.save!
23
- @link.reload
24
-
25
- assert_equal 1, @link.version
26
- assert_equal 2, @link.latest_version
27
-
28
- assert_equal 1, @another_link.reload.latest_version, "Should only update its own version, not other tables"
29
- end
30
-
31
- test "live?" do
32
- assert @link.live?
33
- end
34
-
35
- test "updating makes it not live" do
36
- @link.update_attributes(:name => "New")
37
- @link.reload
38
- refute @link.live?
39
-
40
- @link.publish!
41
- @link.reload
42
- assert @link.live?
43
- end
44
-
45
- test "live? as_of_version" do
46
- @link.update_attributes(:name => "New")
47
- @link.publish!
48
-
49
- v1 = @link.as_of_version(1)
50
- assert v1.live?
51
- end
52
- end