rabl 0.14.3 → 0.14.4

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 (560) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +6 -0
  3. data/lib/rabl/version.rb +1 -1
  4. metadata +2 -558
  5. data/.gitignore +0 -8
  6. data/.travis.yml +0 -18
  7. data/Gemfile +0 -29
  8. data/Rakefile +0 -63
  9. data/examples/base.json.rabl +0 -8
  10. data/examples/demo.json.rabl +0 -42
  11. data/examples/inherited.json.rabl +0 -11
  12. data/fixtures/ashared/NOTES +0 -100
  13. data/fixtures/ashared/README +0 -39
  14. data/fixtures/ashared/controllers_rails_5/posts_controller.rb +0 -17
  15. data/fixtures/ashared/controllers_rails_5/users_controller.rb +0 -11
  16. data/fixtures/ashared/helpers/application_helper.rb +0 -5
  17. data/fixtures/ashared/migrate/20111002092016_create_users.rb +0 -15
  18. data/fixtures/ashared/migrate/20111002092019_create_posts.rb +0 -14
  19. data/fixtures/ashared/migrate/20111002092024_create_phone_numbers.rb +0 -16
  20. data/fixtures/ashared/models/phone_number.rb +0 -7
  21. data/fixtures/ashared/models/post.rb +0 -3
  22. data/fixtures/ashared/models/user.rb +0 -3
  23. data/fixtures/ashared/views/layouts/application.html.erb +0 -9
  24. data/fixtures/ashared/views/posts/_show_footer_script.js.erb +0 -1
  25. data/fixtures/ashared/views/posts/date.rabl +0 -3
  26. data/fixtures/ashared/views/posts/index.rabl +0 -12
  27. data/fixtures/ashared/views/posts/show.rabl +0 -17
  28. data/fixtures/ashared/views/users/index.json.rabl +0 -3
  29. data/fixtures/ashared/views/users/phone_number.json.rabl +0 -6
  30. data/fixtures/ashared/views/users/show.json.rabl +0 -16
  31. data/fixtures/ashared/views_rails_3/layouts/application.html.erb +0 -13
  32. data/fixtures/ashared/views_rails_3/posts/_show_footer_script.js.erb +0 -1
  33. data/fixtures/ashared/views_rails_3/posts/date.rabl +0 -3
  34. data/fixtures/ashared/views_rails_3/posts/index.html.erb +0 -3
  35. data/fixtures/ashared/views_rails_3/posts/index.rabl +0 -12
  36. data/fixtures/ashared/views_rails_3/posts/renderer.rabl +0 -8
  37. data/fixtures/ashared/views_rails_3/posts/renderer_partial.rabl +0 -4
  38. data/fixtures/ashared/views_rails_3/posts/show.html.erb +0 -3
  39. data/fixtures/ashared/views_rails_3/posts/show.rabl +0 -25
  40. data/fixtures/ashared/views_rails_3/posts/show.rabl_test_v1.rabl +0 -7
  41. data/fixtures/ashared/views_rails_3/users/index.json.rabl +0 -3
  42. data/fixtures/ashared/views_rails_3/users/phone_number.json.rabl +0 -8
  43. data/fixtures/ashared/views_rails_3/users/phone_number.xml.rabl +0 -1
  44. data/fixtures/ashared/views_rails_3/users/show.json.rabl +0 -16
  45. data/fixtures/ashared/views_rails_3/users/show.rabl_test_v1.rabl +0 -3
  46. data/fixtures/ashared/views_rails_6/layouts/application.html.erb +0 -13
  47. data/fixtures/ashared/views_rails_6/posts/_show_footer_script.js.erb +0 -1
  48. data/fixtures/ashared/views_rails_6/posts/date.rabl +0 -3
  49. data/fixtures/ashared/views_rails_6/posts/index.html.erb +0 -3
  50. data/fixtures/ashared/views_rails_6/posts/index.rabl +0 -12
  51. data/fixtures/ashared/views_rails_6/posts/renderer.rabl +0 -8
  52. data/fixtures/ashared/views_rails_6/posts/renderer_partial.rabl +0 -4
  53. data/fixtures/ashared/views_rails_6/posts/show.html.erb +0 -3
  54. data/fixtures/ashared/views_rails_6/posts/show.rabl +0 -25
  55. data/fixtures/ashared/views_rails_6/posts/show.rabl_test_v1.rabl +0 -7
  56. data/fixtures/ashared/views_rails_6/users/index.json.rabl +0 -3
  57. data/fixtures/ashared/views_rails_6/users/phone_number.json.rabl +0 -8
  58. data/fixtures/ashared/views_rails_6/users/phone_number.xml.rabl +0 -1
  59. data/fixtures/ashared/views_rails_6/users/show.json.rabl +0 -16
  60. data/fixtures/ashared/views_rails_6/users/show.rabl_test_v1.rabl +0 -3
  61. data/fixtures/padrino_test/.components +0 -7
  62. data/fixtures/padrino_test/.gitignore +0 -7
  63. data/fixtures/padrino_test/Gemfile +0 -17
  64. data/fixtures/padrino_test/Rakefile +0 -3
  65. data/fixtures/padrino_test/app/app.rb +0 -31
  66. data/fixtures/padrino_test/app/controllers/posts.rb +0 -11
  67. data/fixtures/padrino_test/app/controllers/users.rb +0 -11
  68. data/fixtures/padrino_test/app/helpers/posts_helper.rb +0 -7
  69. data/fixtures/padrino_test/app/helpers/users_helper.rb +0 -7
  70. data/fixtures/padrino_test/app/views +0 -1
  71. data/fixtures/padrino_test/config.ru +0 -9
  72. data/fixtures/padrino_test/config/apps.rb +0 -34
  73. data/fixtures/padrino_test/config/boot.rb +0 -29
  74. data/fixtures/padrino_test/config/database.rb +0 -43
  75. data/fixtures/padrino_test/db/migrate +0 -1
  76. data/fixtures/padrino_test/db/schema.rb +0 -42
  77. data/fixtures/padrino_test/models +0 -1
  78. data/fixtures/padrino_test/public/favicon.ico +0 -0
  79. data/fixtures/padrino_test/test/app/controllers/posts_controller_test.rb +0 -1
  80. data/fixtures/padrino_test/test/app/controllers/users_controller_test.rb +0 -1
  81. data/fixtures/padrino_test/test/test.rake +0 -18
  82. data/fixtures/padrino_test/test/test_config.rb +0 -18
  83. data/fixtures/rails2/.gitignore +0 -1
  84. data/fixtures/rails2/Gemfile +0 -10
  85. data/fixtures/rails2/Rakefile +0 -14
  86. data/fixtures/rails2/app/controllers/application_controller.rb +0 -10
  87. data/fixtures/rails2/app/controllers/posts_controller.rb +0 -15
  88. data/fixtures/rails2/app/controllers/users_controller.rb +0 -15
  89. data/fixtures/rails2/app/helpers/application_helper.rb +0 -2
  90. data/fixtures/rails2/app/helpers/posts_helper.rb +0 -2
  91. data/fixtures/rails2/app/helpers/users_helper.rb +0 -2
  92. data/fixtures/rails2/app/models +0 -1
  93. data/fixtures/rails2/app/views +0 -1
  94. data/fixtures/rails2/config/boot.rb +0 -129
  95. data/fixtures/rails2/config/database.yml +0 -16
  96. data/fixtures/rails2/config/environment.rb +0 -64
  97. data/fixtures/rails2/config/environments/development.rb +0 -17
  98. data/fixtures/rails2/config/environments/production.rb +0 -28
  99. data/fixtures/rails2/config/environments/test.rb +0 -28
  100. data/fixtures/rails2/config/initializers/backtrace_silencers.rb +0 -7
  101. data/fixtures/rails2/config/initializers/cookie_verification_secret.rb +0 -7
  102. data/fixtures/rails2/config/initializers/inflections.rb +0 -10
  103. data/fixtures/rails2/config/initializers/mime_types.rb +0 -5
  104. data/fixtures/rails2/config/initializers/new_rails_defaults.rb +0 -21
  105. data/fixtures/rails2/config/initializers/session_store.rb +0 -15
  106. data/fixtures/rails2/config/locales/en.yml +0 -5
  107. data/fixtures/rails2/config/preinitializer.rb +0 -20
  108. data/fixtures/rails2/config/routes.rb +0 -45
  109. data/fixtures/rails2/db/migrate +0 -1
  110. data/fixtures/rails2/db/schema.rb +0 -40
  111. data/fixtures/rails2/db/seeds.rb +0 -7
  112. data/fixtures/rails2/public/404.html +0 -30
  113. data/fixtures/rails2/public/422.html +0 -30
  114. data/fixtures/rails2/public/500.html +0 -30
  115. data/fixtures/rails2/public/favicon.ico +0 -0
  116. data/fixtures/rails2/public/images/rails.png +0 -0
  117. data/fixtures/rails2/public/index.html +0 -275
  118. data/fixtures/rails2/public/robots.txt +0 -5
  119. data/fixtures/rails2/script/about +0 -4
  120. data/fixtures/rails2/script/console +0 -3
  121. data/fixtures/rails2/script/dbconsole +0 -3
  122. data/fixtures/rails2/script/destroy +0 -3
  123. data/fixtures/rails2/script/generate +0 -3
  124. data/fixtures/rails2/script/performance/benchmarker +0 -3
  125. data/fixtures/rails2/script/performance/profiler +0 -3
  126. data/fixtures/rails2/script/plugin +0 -3
  127. data/fixtures/rails2/script/runner +0 -3
  128. data/fixtures/rails2/script/server +0 -3
  129. data/fixtures/rails2/test/functionals/posts_controller_test.rb +0 -1
  130. data/fixtures/rails2/test/functionals/users_controller_test.rb +0 -1
  131. data/fixtures/rails2/test/test_helper.rb +0 -33
  132. data/fixtures/rails3/.gitignore +0 -4
  133. data/fixtures/rails3/Gemfile +0 -37
  134. data/fixtures/rails3/Rakefile +0 -12
  135. data/fixtures/rails3/app/controllers/application_controller.rb +0 -14
  136. data/fixtures/rails3/app/controllers/posts_controller.rb +0 -11
  137. data/fixtures/rails3/app/controllers/users_controller.rb +0 -11
  138. data/fixtures/rails3/app/models +0 -1
  139. data/fixtures/rails3/app/views +0 -1
  140. data/fixtures/rails3/config.ru +0 -4
  141. data/fixtures/rails3/config/application.rb +0 -42
  142. data/fixtures/rails3/config/boot.rb +0 -6
  143. data/fixtures/rails3/config/database.yml +0 -22
  144. data/fixtures/rails3/config/environment.rb +0 -5
  145. data/fixtures/rails3/config/environments/development.rb +0 -26
  146. data/fixtures/rails3/config/environments/production.rb +0 -49
  147. data/fixtures/rails3/config/environments/test.rb +0 -35
  148. data/fixtures/rails3/config/initializers/backtrace_silencers.rb +0 -7
  149. data/fixtures/rails3/config/initializers/inflections.rb +0 -10
  150. data/fixtures/rails3/config/initializers/mime_types.rb +0 -5
  151. data/fixtures/rails3/config/initializers/secret_token.rb +0 -7
  152. data/fixtures/rails3/config/initializers/session_store.rb +0 -8
  153. data/fixtures/rails3/config/locales/en.yml +0 -5
  154. data/fixtures/rails3/config/routes.rb +0 -61
  155. data/fixtures/rails3/db/migrate +0 -1
  156. data/fixtures/rails3/db/schema.rb +0 -42
  157. data/fixtures/rails3/db/seeds.rb +0 -7
  158. data/fixtures/rails3/lib/tasks/.gitkeep +0 -0
  159. data/fixtures/rails3/public/404.html +0 -26
  160. data/fixtures/rails3/public/422.html +0 -26
  161. data/fixtures/rails3/public/500.html +0 -26
  162. data/fixtures/rails3/public/favicon.ico +0 -0
  163. data/fixtures/rails3/public/images/rails.png +0 -0
  164. data/fixtures/rails3/public/index.html +0 -239
  165. data/fixtures/rails3/public/robots.txt +0 -5
  166. data/fixtures/rails3/public/stylesheets/.gitkeep +0 -0
  167. data/fixtures/rails3/script/rails +0 -6
  168. data/fixtures/rails3/test/functional/posts_controller_test.rb +0 -1
  169. data/fixtures/rails3/test/functional/users_controller_test.rb +0 -1
  170. data/fixtures/rails3/test/test_helper.rb +0 -26
  171. data/fixtures/rails3_2/.gitignore +0 -15
  172. data/fixtures/rails3_2/Gemfile +0 -40
  173. data/fixtures/rails3_2/README.rdoc +0 -261
  174. data/fixtures/rails3_2/Rakefile +0 -12
  175. data/fixtures/rails3_2/app/assets/images/rails.png +0 -0
  176. data/fixtures/rails3_2/app/assets/javascripts/application.js +0 -15
  177. data/fixtures/rails3_2/app/assets/javascripts/posts.js.coffee +0 -3
  178. data/fixtures/rails3_2/app/assets/javascripts/users.js.coffee +0 -3
  179. data/fixtures/rails3_2/app/assets/stylesheets/application.css +0 -13
  180. data/fixtures/rails3_2/app/assets/stylesheets/posts.css.scss +0 -3
  181. data/fixtures/rails3_2/app/assets/stylesheets/users.css.scss +0 -3
  182. data/fixtures/rails3_2/app/controllers/application_controller.rb +0 -14
  183. data/fixtures/rails3_2/app/controllers/posts_controller.rb +0 -16
  184. data/fixtures/rails3_2/app/controllers/users_controller.rb +0 -11
  185. data/fixtures/rails3_2/app/helpers/application_helper.rb +0 -5
  186. data/fixtures/rails3_2/app/helpers/posts_helper.rb +0 -2
  187. data/fixtures/rails3_2/app/helpers/users_helper.rb +0 -2
  188. data/fixtures/rails3_2/app/mailers/.gitkeep +0 -0
  189. data/fixtures/rails3_2/app/models +0 -1
  190. data/fixtures/rails3_2/app/views +0 -1
  191. data/fixtures/rails3_2/config.ru +0 -4
  192. data/fixtures/rails3_2/config/application.rb +0 -59
  193. data/fixtures/rails3_2/config/boot.rb +0 -6
  194. data/fixtures/rails3_2/config/database.yml +0 -25
  195. data/fixtures/rails3_2/config/environment.rb +0 -5
  196. data/fixtures/rails3_2/config/environments/development.rb +0 -37
  197. data/fixtures/rails3_2/config/environments/production.rb +0 -67
  198. data/fixtures/rails3_2/config/environments/test.rb +0 -37
  199. data/fixtures/rails3_2/config/initializers/backtrace_silencers.rb +0 -7
  200. data/fixtures/rails3_2/config/initializers/inflections.rb +0 -15
  201. data/fixtures/rails3_2/config/initializers/mime_types.rb +0 -7
  202. data/fixtures/rails3_2/config/initializers/secret_token.rb +0 -7
  203. data/fixtures/rails3_2/config/initializers/session_store.rb +0 -8
  204. data/fixtures/rails3_2/config/initializers/wrap_parameters.rb +0 -14
  205. data/fixtures/rails3_2/config/locales/en.yml +0 -5
  206. data/fixtures/rails3_2/config/routes.rb +0 -64
  207. data/fixtures/rails3_2/db/migrate +0 -1
  208. data/fixtures/rails3_2/db/schema.rb +0 -42
  209. data/fixtures/rails3_2/db/seeds.rb +0 -7
  210. data/fixtures/rails3_2/doc/README_FOR_APP +0 -2
  211. data/fixtures/rails3_2/lib/assets/.gitkeep +0 -0
  212. data/fixtures/rails3_2/lib/tasks/.gitkeep +0 -0
  213. data/fixtures/rails3_2/log/.gitkeep +0 -0
  214. data/fixtures/rails3_2/public/404.html +0 -26
  215. data/fixtures/rails3_2/public/422.html +0 -26
  216. data/fixtures/rails3_2/public/500.html +0 -25
  217. data/fixtures/rails3_2/public/favicon.ico +0 -0
  218. data/fixtures/rails3_2/public/index.html +0 -241
  219. data/fixtures/rails3_2/public/robots.txt +0 -5
  220. data/fixtures/rails3_2/script/rails +0 -6
  221. data/fixtures/rails3_2/test/fixtures/phone_numbers.yml +0 -11
  222. data/fixtures/rails3_2/test/fixtures/posts.yml +0 -11
  223. data/fixtures/rails3_2/test/fixtures/users.yml +0 -11
  224. data/fixtures/rails3_2/test/functional/posts_controller_test.rb +0 -1
  225. data/fixtures/rails3_2/test/functional/users_controller_test.rb +0 -1
  226. data/fixtures/rails3_2/test/integration/.gitkeep +0 -0
  227. data/fixtures/rails3_2/test/performance/browsing_test.rb +0 -12
  228. data/fixtures/rails3_2/test/test_helper.rb +0 -26
  229. data/fixtures/rails3_2/test/unit/helpers/posts_helper_test.rb +0 -4
  230. data/fixtures/rails3_2/test/unit/helpers/users_helper_test.rb +0 -4
  231. data/fixtures/rails3_2/test/unit/phone_number_test.rb +0 -7
  232. data/fixtures/rails3_2/test/unit/post_test.rb +0 -7
  233. data/fixtures/rails3_2/test/unit/user_test.rb +0 -7
  234. data/fixtures/rails3_2/vendor/assets/javascripts/.gitkeep +0 -0
  235. data/fixtures/rails3_2/vendor/assets/stylesheets/.gitkeep +0 -0
  236. data/fixtures/rails3_2/vendor/plugins/.gitkeep +0 -0
  237. data/fixtures/rails4/.gitignore +0 -16
  238. data/fixtures/rails4/Gemfile +0 -53
  239. data/fixtures/rails4/README.rdoc +0 -28
  240. data/fixtures/rails4/Rakefile +0 -11
  241. data/fixtures/rails4/app/assets/javascripts/application.js +0 -16
  242. data/fixtures/rails4/app/assets/stylesheets/application.css +0 -13
  243. data/fixtures/rails4/app/controllers/application_controller.rb +0 -5
  244. data/fixtures/rails4/app/controllers/concerns/.keep +0 -0
  245. data/fixtures/rails4/app/controllers/posts_controller.rb +0 -16
  246. data/fixtures/rails4/app/controllers/users_controller.rb +0 -11
  247. data/fixtures/rails4/app/helpers/application_helper.rb +0 -5
  248. data/fixtures/rails4/app/mailers/.keep +0 -0
  249. data/fixtures/rails4/app/models +0 -1
  250. data/fixtures/rails4/app/views +0 -1
  251. data/fixtures/rails4/bin/bundle +0 -3
  252. data/fixtures/rails4/bin/rails +0 -4
  253. data/fixtures/rails4/bin/rake +0 -4
  254. data/fixtures/rails4/config.ru +0 -4
  255. data/fixtures/rails4/config/application.rb +0 -23
  256. data/fixtures/rails4/config/boot.rb +0 -4
  257. data/fixtures/rails4/config/database.yml +0 -25
  258. data/fixtures/rails4/config/environment.rb +0 -5
  259. data/fixtures/rails4/config/environments/development.rb +0 -29
  260. data/fixtures/rails4/config/environments/production.rb +0 -80
  261. data/fixtures/rails4/config/environments/test.rb +0 -39
  262. data/fixtures/rails4/config/initializers/backtrace_silencers.rb +0 -7
  263. data/fixtures/rails4/config/initializers/filter_parameter_logging.rb +0 -4
  264. data/fixtures/rails4/config/initializers/inflections.rb +0 -16
  265. data/fixtures/rails4/config/initializers/mime_types.rb +0 -7
  266. data/fixtures/rails4/config/initializers/secret_token.rb +0 -12
  267. data/fixtures/rails4/config/initializers/session_store.rb +0 -3
  268. data/fixtures/rails4/config/initializers/wrap_parameters.rb +0 -14
  269. data/fixtures/rails4/config/locales/en.yml +0 -23
  270. data/fixtures/rails4/config/routes.rb +0 -55
  271. data/fixtures/rails4/db/migrate +0 -1
  272. data/fixtures/rails4/db/schema.rb +0 -42
  273. data/fixtures/rails4/db/seeds.rb +0 -7
  274. data/fixtures/rails4/lib/assets/.keep +0 -0
  275. data/fixtures/rails4/lib/tasks/.keep +0 -0
  276. data/fixtures/rails4/log/.keep +0 -0
  277. data/fixtures/rails4/public/404.html +0 -58
  278. data/fixtures/rails4/public/422.html +0 -58
  279. data/fixtures/rails4/public/500.html +0 -57
  280. data/fixtures/rails4/public/favicon.ico +0 -0
  281. data/fixtures/rails4/public/robots.txt +0 -5
  282. data/fixtures/rails4/test/controllers/.keep +0 -0
  283. data/fixtures/rails4/test/fixtures/.keep +0 -0
  284. data/fixtures/rails4/test/functional/posts_controller_test.rb +0 -1
  285. data/fixtures/rails4/test/functional/users_controller_test.rb +0 -1
  286. data/fixtures/rails4/test/helpers/.keep +0 -0
  287. data/fixtures/rails4/test/integration/.keep +0 -0
  288. data/fixtures/rails4/test/mailers/.keep +0 -0
  289. data/fixtures/rails4/test/models/.keep +0 -0
  290. data/fixtures/rails4/test/test_helper.rb +0 -26
  291. data/fixtures/rails4/vendor/assets/javascripts/.keep +0 -0
  292. data/fixtures/rails4/vendor/assets/stylesheets/.keep +0 -0
  293. data/fixtures/rails5/.gitignore +0 -21
  294. data/fixtures/rails5/Gemfile +0 -53
  295. data/fixtures/rails5/README.md +0 -24
  296. data/fixtures/rails5/Rakefile +0 -13
  297. data/fixtures/rails5/app/assets/config/manifest.js +0 -3
  298. data/fixtures/rails5/app/assets/images/.keep +0 -0
  299. data/fixtures/rails5/app/assets/javascripts/application.js +0 -16
  300. data/fixtures/rails5/app/assets/javascripts/cable.js +0 -13
  301. data/fixtures/rails5/app/assets/javascripts/channels/.keep +0 -0
  302. data/fixtures/rails5/app/assets/stylesheets/application.css +0 -15
  303. data/fixtures/rails5/app/channels/application_cable/channel.rb +0 -4
  304. data/fixtures/rails5/app/channels/application_cable/connection.rb +0 -4
  305. data/fixtures/rails5/app/controllers/application_controller.rb +0 -3
  306. data/fixtures/rails5/app/controllers/concerns/.keep +0 -0
  307. data/fixtures/rails5/app/controllers/posts_controller.rb +0 -1
  308. data/fixtures/rails5/app/controllers/users_controller.rb +0 -1
  309. data/fixtures/rails5/app/helpers +0 -1
  310. data/fixtures/rails5/app/jobs/application_job.rb +0 -2
  311. data/fixtures/rails5/app/mailers/application_mailer.rb +0 -4
  312. data/fixtures/rails5/app/models +0 -1
  313. data/fixtures/rails5/app/views +0 -1
  314. data/fixtures/rails5/bin/bundle +0 -3
  315. data/fixtures/rails5/bin/rails +0 -9
  316. data/fixtures/rails5/bin/rake +0 -9
  317. data/fixtures/rails5/bin/setup +0 -34
  318. data/fixtures/rails5/bin/spring +0 -15
  319. data/fixtures/rails5/bin/update +0 -29
  320. data/fixtures/rails5/config.ru +0 -5
  321. data/fixtures/rails5/config/application.rb +0 -15
  322. data/fixtures/rails5/config/boot.rb +0 -3
  323. data/fixtures/rails5/config/cable.yml +0 -9
  324. data/fixtures/rails5/config/database.yml +0 -25
  325. data/fixtures/rails5/config/environment.rb +0 -5
  326. data/fixtures/rails5/config/environments/development.rb +0 -54
  327. data/fixtures/rails5/config/environments/production.rb +0 -86
  328. data/fixtures/rails5/config/environments/test.rb +0 -42
  329. data/fixtures/rails5/config/initializers/application_controller_renderer.rb +0 -6
  330. data/fixtures/rails5/config/initializers/assets.rb +0 -11
  331. data/fixtures/rails5/config/initializers/backtrace_silencers.rb +0 -7
  332. data/fixtures/rails5/config/initializers/cookies_serializer.rb +0 -5
  333. data/fixtures/rails5/config/initializers/filter_parameter_logging.rb +0 -4
  334. data/fixtures/rails5/config/initializers/inflections.rb +0 -16
  335. data/fixtures/rails5/config/initializers/mime_types.rb +0 -6
  336. data/fixtures/rails5/config/initializers/new_framework_defaults.rb +0 -24
  337. data/fixtures/rails5/config/initializers/session_store.rb +0 -3
  338. data/fixtures/rails5/config/initializers/wrap_parameters.rb +0 -14
  339. data/fixtures/rails5/config/locales/en.yml +0 -23
  340. data/fixtures/rails5/config/puma.rb +0 -47
  341. data/fixtures/rails5/config/routes.rb +0 -8
  342. data/fixtures/rails5/config/secrets.yml +0 -22
  343. data/fixtures/rails5/config/spring.rb +0 -6
  344. data/fixtures/rails5/db/migrate +0 -1
  345. data/fixtures/rails5/db/schema.rb +0 -41
  346. data/fixtures/rails5/db/seeds.rb +0 -7
  347. data/fixtures/rails5/lib/assets/.keep +0 -0
  348. data/fixtures/rails5/lib/tasks/.keep +0 -0
  349. data/fixtures/rails5/log/.keep +0 -0
  350. data/fixtures/rails5/public/404.html +0 -67
  351. data/fixtures/rails5/public/422.html +0 -67
  352. data/fixtures/rails5/public/500.html +0 -66
  353. data/fixtures/rails5/public/apple-touch-icon-precomposed.png +0 -0
  354. data/fixtures/rails5/public/apple-touch-icon.png +0 -0
  355. data/fixtures/rails5/public/favicon.ico +0 -0
  356. data/fixtures/rails5/public/robots.txt +0 -5
  357. data/fixtures/rails5/test/controllers/.keep +0 -0
  358. data/fixtures/rails5/test/fixtures/.keep +0 -0
  359. data/fixtures/rails5/test/fixtures/files/.keep +0 -0
  360. data/fixtures/rails5/test/functional/posts_controller_test.rb +0 -1
  361. data/fixtures/rails5/test/functional/users_controller_test.rb +0 -1
  362. data/fixtures/rails5/test/helpers/.keep +0 -0
  363. data/fixtures/rails5/test/integration/.keep +0 -0
  364. data/fixtures/rails5/test/mailers/.keep +0 -0
  365. data/fixtures/rails5/test/models/.keep +0 -0
  366. data/fixtures/rails5/test/test_helper.rb +0 -26
  367. data/fixtures/rails5/tmp/.keep +0 -0
  368. data/fixtures/rails5/vendor/assets/javascripts/.keep +0 -0
  369. data/fixtures/rails5/vendor/assets/stylesheets/.keep +0 -0
  370. data/fixtures/rails5_api/.gitignore +0 -21
  371. data/fixtures/rails5_api/Gemfile +0 -46
  372. data/fixtures/rails5_api/README.md +0 -24
  373. data/fixtures/rails5_api/Rakefile +0 -13
  374. data/fixtures/rails5_api/app/channels/application_cable/channel.rb +0 -4
  375. data/fixtures/rails5_api/app/channels/application_cable/connection.rb +0 -4
  376. data/fixtures/rails5_api/app/controllers/application_controller.rb +0 -2
  377. data/fixtures/rails5_api/app/controllers/concerns/.keep +0 -0
  378. data/fixtures/rails5_api/app/controllers/posts_controller.rb +0 -1
  379. data/fixtures/rails5_api/app/controllers/users_controller.rb +0 -1
  380. data/fixtures/rails5_api/app/helpers +0 -1
  381. data/fixtures/rails5_api/app/jobs/application_job.rb +0 -2
  382. data/fixtures/rails5_api/app/mailers/application_mailer.rb +0 -4
  383. data/fixtures/rails5_api/app/models +0 -1
  384. data/fixtures/rails5_api/app/views +0 -1
  385. data/fixtures/rails5_api/bin/bundle +0 -3
  386. data/fixtures/rails5_api/bin/rails +0 -9
  387. data/fixtures/rails5_api/bin/rake +0 -9
  388. data/fixtures/rails5_api/bin/setup +0 -34
  389. data/fixtures/rails5_api/bin/spring +0 -17
  390. data/fixtures/rails5_api/bin/update +0 -29
  391. data/fixtures/rails5_api/config.ru +0 -5
  392. data/fixtures/rails5_api/config/application.rb +0 -30
  393. data/fixtures/rails5_api/config/boot.rb +0 -3
  394. data/fixtures/rails5_api/config/cable.yml +0 -9
  395. data/fixtures/rails5_api/config/database.yml +0 -25
  396. data/fixtures/rails5_api/config/environment.rb +0 -5
  397. data/fixtures/rails5_api/config/environments/development.rb +0 -47
  398. data/fixtures/rails5_api/config/environments/production.rb +0 -78
  399. data/fixtures/rails5_api/config/environments/test.rb +0 -42
  400. data/fixtures/rails5_api/config/initializers/application_controller_renderer.rb +0 -6
  401. data/fixtures/rails5_api/config/initializers/backtrace_silencers.rb +0 -7
  402. data/fixtures/rails5_api/config/initializers/cors.rb +0 -16
  403. data/fixtures/rails5_api/config/initializers/filter_parameter_logging.rb +0 -4
  404. data/fixtures/rails5_api/config/initializers/inflections.rb +0 -16
  405. data/fixtures/rails5_api/config/initializers/mime_types.rb +0 -5
  406. data/fixtures/rails5_api/config/initializers/new_framework_defaults.rb +0 -18
  407. data/fixtures/rails5_api/config/initializers/wrap_parameters.rb +0 -14
  408. data/fixtures/rails5_api/config/locales/en.yml +0 -23
  409. data/fixtures/rails5_api/config/puma.rb +0 -47
  410. data/fixtures/rails5_api/config/routes.rb +0 -8
  411. data/fixtures/rails5_api/config/secrets.yml +0 -22
  412. data/fixtures/rails5_api/config/spring.rb +0 -6
  413. data/fixtures/rails5_api/db/migrate +0 -1
  414. data/fixtures/rails5_api/db/schema.rb +0 -41
  415. data/fixtures/rails5_api/db/seeds.rb +0 -7
  416. data/fixtures/rails5_api/lib/tasks/.keep +0 -0
  417. data/fixtures/rails5_api/log/.keep +0 -0
  418. data/fixtures/rails5_api/public/robots.txt +0 -5
  419. data/fixtures/rails5_api/test/controllers/.keep +0 -0
  420. data/fixtures/rails5_api/test/fixtures/.keep +0 -0
  421. data/fixtures/rails5_api/test/fixtures/files/.keep +0 -0
  422. data/fixtures/rails5_api/test/functional/posts_controller_test.rb +0 -1
  423. data/fixtures/rails5_api/test/functional/users_controller_test.rb +0 -1
  424. data/fixtures/rails5_api/test/integration/.keep +0 -0
  425. data/fixtures/rails5_api/test/mailers/.keep +0 -0
  426. data/fixtures/rails5_api/test/models/.keep +0 -0
  427. data/fixtures/rails5_api/test/test_helper.rb +0 -39
  428. data/fixtures/rails5_api/tmp/.keep +0 -0
  429. data/fixtures/rails6/.gitignore +0 -35
  430. data/fixtures/rails6/Gemfile +0 -58
  431. data/fixtures/rails6/README.md +0 -24
  432. data/fixtures/rails6/Rakefile +0 -14
  433. data/fixtures/rails6/app/assets/config/manifest.js +0 -2
  434. data/fixtures/rails6/app/assets/images/.keep +0 -0
  435. data/fixtures/rails6/app/assets/stylesheets/application.css +0 -15
  436. data/fixtures/rails6/app/channels/application_cable/channel.rb +0 -4
  437. data/fixtures/rails6/app/channels/application_cable/connection.rb +0 -4
  438. data/fixtures/rails6/app/controllers/application_controller.rb +0 -2
  439. data/fixtures/rails6/app/controllers/concerns/.keep +0 -0
  440. data/fixtures/rails6/app/controllers/posts_controller.rb +0 -17
  441. data/fixtures/rails6/app/controllers/users_controller.rb +0 -11
  442. data/fixtures/rails6/app/helpers +0 -1
  443. data/fixtures/rails6/app/javascript/channels/consumer.js +0 -6
  444. data/fixtures/rails6/app/javascript/channels/index.js +0 -5
  445. data/fixtures/rails6/app/javascript/packs/application.js +0 -17
  446. data/fixtures/rails6/app/jobs/application_job.rb +0 -7
  447. data/fixtures/rails6/app/mailers/application_mailer.rb +0 -4
  448. data/fixtures/rails6/app/models +0 -1
  449. data/fixtures/rails6/app/views +0 -1
  450. data/fixtures/rails6/babel.config.js +0 -72
  451. data/fixtures/rails6/bin/bundle +0 -105
  452. data/fixtures/rails6/bin/rails +0 -9
  453. data/fixtures/rails6/bin/rake +0 -9
  454. data/fixtures/rails6/bin/setup +0 -36
  455. data/fixtures/rails6/bin/spring +0 -17
  456. data/fixtures/rails6/bin/webpack +0 -19
  457. data/fixtures/rails6/bin/webpack-dev-server +0 -19
  458. data/fixtures/rails6/bin/yarn +0 -11
  459. data/fixtures/rails6/config.ru +0 -5
  460. data/fixtures/rails6/config/application.rb +0 -19
  461. data/fixtures/rails6/config/boot.rb +0 -4
  462. data/fixtures/rails6/config/cable.yml +0 -10
  463. data/fixtures/rails6/config/credentials.yml.enc +0 -1
  464. data/fixtures/rails6/config/database.yml +0 -25
  465. data/fixtures/rails6/config/environment.rb +0 -5
  466. data/fixtures/rails6/config/environments/development.rb +0 -62
  467. data/fixtures/rails6/config/environments/production.rb +0 -112
  468. data/fixtures/rails6/config/environments/test.rb +0 -48
  469. data/fixtures/rails6/config/initializers/application_controller_renderer.rb +0 -8
  470. data/fixtures/rails6/config/initializers/assets.rb +0 -14
  471. data/fixtures/rails6/config/initializers/backtrace_silencers.rb +0 -7
  472. data/fixtures/rails6/config/initializers/content_security_policy.rb +0 -27
  473. data/fixtures/rails6/config/initializers/cookies_serializer.rb +0 -5
  474. data/fixtures/rails6/config/initializers/filter_parameter_logging.rb +0 -4
  475. data/fixtures/rails6/config/initializers/inflections.rb +0 -16
  476. data/fixtures/rails6/config/initializers/mime_types.rb +0 -6
  477. data/fixtures/rails6/config/initializers/wrap_parameters.rb +0 -14
  478. data/fixtures/rails6/config/locales/en.yml +0 -33
  479. data/fixtures/rails6/config/puma.rb +0 -35
  480. data/fixtures/rails6/config/routes.rb +0 -8
  481. data/fixtures/rails6/config/spring.rb +0 -6
  482. data/fixtures/rails6/config/storage.yml +0 -34
  483. data/fixtures/rails6/config/webpack/development.js +0 -5
  484. data/fixtures/rails6/config/webpack/environment.js +0 -3
  485. data/fixtures/rails6/config/webpack/production.js +0 -5
  486. data/fixtures/rails6/config/webpack/test.js +0 -5
  487. data/fixtures/rails6/config/webpacker.yml +0 -95
  488. data/fixtures/rails6/db/migrate/20111002092016_create_users.rb +0 -11
  489. data/fixtures/rails6/db/migrate/20111002092019_create_posts.rb +0 -10
  490. data/fixtures/rails6/db/migrate/20111002092024_create_phone_numbers.rb +0 -12
  491. data/fixtures/rails6/db/schema.rb +0 -41
  492. data/fixtures/rails6/db/seeds.rb +0 -7
  493. data/fixtures/rails6/lib/assets/.keep +0 -0
  494. data/fixtures/rails6/lib/tasks/.keep +0 -0
  495. data/fixtures/rails6/log/.keep +0 -0
  496. data/fixtures/rails6/package.json +0 -15
  497. data/fixtures/rails6/postcss.config.js +0 -12
  498. data/fixtures/rails6/public/404.html +0 -67
  499. data/fixtures/rails6/public/422.html +0 -67
  500. data/fixtures/rails6/public/500.html +0 -66
  501. data/fixtures/rails6/public/apple-touch-icon-precomposed.png +0 -0
  502. data/fixtures/rails6/public/apple-touch-icon.png +0 -0
  503. data/fixtures/rails6/public/favicon.ico +0 -0
  504. data/fixtures/rails6/public/robots.txt +0 -1
  505. data/fixtures/rails6/storage/.keep +0 -0
  506. data/fixtures/rails6/test/application_system_test_case.rb +0 -5
  507. data/fixtures/rails6/test/channels/application_cable/connection_test.rb +0 -11
  508. data/fixtures/rails6/test/controllers/.keep +0 -0
  509. data/fixtures/rails6/test/fixtures/.keep +0 -0
  510. data/fixtures/rails6/test/fixtures/files/.keep +0 -0
  511. data/fixtures/rails6/test/functional/posts_controller_test.rb +0 -1
  512. data/fixtures/rails6/test/functional/users_controller_test.rb +0 -1
  513. data/fixtures/rails6/test/helpers/.keep +0 -0
  514. data/fixtures/rails6/test/integration/.keep +0 -0
  515. data/fixtures/rails6/test/mailers/.keep +0 -0
  516. data/fixtures/rails6/test/models/.keep +0 -0
  517. data/fixtures/rails6/test/system/.keep +0 -0
  518. data/fixtures/rails6/test/test_helper.rb +0 -27
  519. data/fixtures/rails6/tmp/.keep +0 -0
  520. data/fixtures/rails6/vendor/.keep +0 -0
  521. data/fixtures/rails6/yarn.lock +0 -7201
  522. data/fixtures/sinatra_test/Gemfile +0 -13
  523. data/fixtures/sinatra_test/Rakefile +0 -6
  524. data/fixtures/sinatra_test/app.rb +0 -55
  525. data/fixtures/sinatra_test/config.ru +0 -7
  526. data/fixtures/sinatra_test/db/migrate +0 -1
  527. data/fixtures/sinatra_test/models +0 -1
  528. data/fixtures/sinatra_test/test/functional/posts_controller_test.rb +0 -1
  529. data/fixtures/sinatra_test/test/functional/users_controller_test.rb +0 -1
  530. data/fixtures/sinatra_test/test/test_helper.rb +0 -19
  531. data/fixtures/sinatra_test/views +0 -1
  532. data/rabl.gemspec +0 -34
  533. data/test.watchr +0 -47
  534. data/test/bson_engine_test.rb +0 -310
  535. data/test/builder_test.rb +0 -388
  536. data/test/configuration_test.rb +0 -91
  537. data/test/engine_test.rb +0 -841
  538. data/test/helpers_test.rb +0 -146
  539. data/test/integration/posts_controller_test.rb +0 -108
  540. data/test/integration/rails3_2/posts_controller_test.rb +0 -263
  541. data/test/integration/rails3_2/users_controller_test.rb +0 -87
  542. data/test/integration/rails4/posts_controller_test.rb +0 -248
  543. data/test/integration/rails4/users_controller_test.rb +0 -87
  544. data/test/integration/rails5/posts_controller_test.rb +0 -251
  545. data/test/integration/rails5/users_controller_test.rb +0 -87
  546. data/test/integration/rails6/posts_controller_test.rb +0 -185
  547. data/test/integration/rails6/users_controller_test.rb +0 -87
  548. data/test/integration/test_init.rb +0 -36
  549. data/test/integration/users_controller_test.rb +0 -87
  550. data/test/models/ormless.rb +0 -3
  551. data/test/models/user.rb +0 -35
  552. data/test/msgpack_engine_test.rb +0 -312
  553. data/test/multi_builder_test.rb +0 -69
  554. data/test/partials_test.rb +0 -205
  555. data/test/plist_engine_test.rb +0 -308
  556. data/test/renderer_test.rb +0 -390
  557. data/test/silence.rb +0 -23
  558. data/test/template_test.rb +0 -63
  559. data/test/teststrap.rb +0 -42
  560. data/test/xml_test.rb +0 -297
@@ -1,3 +0,0 @@
1
- class Ormless
2
- # Nothing here
3
- end
data/test/models/user.rb DELETED
@@ -1,35 +0,0 @@
1
- unless defined?(User)
2
- class User
3
- attr_accessor :age, :city, :name, :first, :float, :hobbies, :twitter, :first_pets_name
4
-
5
- DEFAULT_AGE = 24
6
- DEFAULT_CITY = 'irvine'
7
- DEFAULT_NAME = 'rabl'
8
- DEFAULT_FIRST = 'bob'
9
- DEFAULT_FLOAT = 1234.56
10
- DEFAULT_HOBBIES = ['Photography']
11
- DEFAULT_TWITTER = 'rablgem'
12
- DEFAULT_FIRST_PETS_NAME = 'jack'
13
-
14
- def initialize(attributes = {})
15
- %w(age city name first float hobbies twitter first_pets_name).each do |attr|
16
- self.send "#{attr}=", (attributes.has_key?(attr.to_sym) ? attributes[attr.to_sym] : self.class.const_get("DEFAULT_#{attr.upcase}"))
17
- end
18
- self.hobbies = self.hobbies.map { |h| Hobby.new(h) }
19
- end
20
- end
21
-
22
- class Hobby
23
- attr_accessor :name
24
- def initialize(name); @name = name; end
25
- end
26
- end
27
-
28
- unless defined?(NestedScope::User)
29
- module NestedScope
30
- class User
31
- def controller; self; end
32
- def controller_name; self.class.name.downcase; end
33
- end
34
- end
35
- end
@@ -1,312 +0,0 @@
1
- # encoding: iso-8859-1
2
-
3
- require File.expand_path('../teststrap', __FILE__)
4
- require 'rabl/template'
5
-
6
- context "Rabl::Engine" do
7
- helper(:rabl) { |t| RablTemplate.new("code", :format => 'msgpack') { t } }
8
-
9
- context "with msgpack defaults" do
10
- setup do
11
- Rabl.configure do |config|
12
- # Comment this line out because include_msgpack_root is default.
13
- #config.include_msgpack_root = true
14
- end
15
- end
16
-
17
- context "#object" do
18
- asserts "that it sets data source" do
19
- template = rabl %q{
20
- object @user
21
- }
22
- scope = Object.new
23
- scope.instance_variable_set :@user, User.new
24
- char_split template.render(scope)
25
- end.equals char_split("\x81\xA4user\x80")
26
-
27
- asserts "that it can set root node" do
28
- template = rabl %q{
29
- object @user => :person
30
- }
31
- scope = Object.new
32
- scope.instance_variable_set :@user, User.new
33
- char_split template.render(scope)
34
- end.equals char_split("\x81\xA6person\x80")
35
- end
36
-
37
- context "#collection" do
38
- asserts "that it sets object to be casted as a simple array" do
39
- template = rabl %{
40
- collection @users
41
- }
42
- scope = Object.new
43
- scope.instance_variable_set :@users, [User.new, User.new]
44
- char_split template.render(scope)
45
- end.equals char_split("\x92\x81\xA4user\x80\x81\xA4user\x80")
46
-
47
- asserts "that it sets root node for objects" do
48
- template = rabl %{
49
- collection @users => :person
50
- }
51
- scope = Object.new
52
- scope.instance_variable_set :@users, [User.new, User.new]
53
- char_split template.render(scope)
54
- end.equals char_split("\x81\xA6person\x92\x81\xA6person\x80\x81\xA6person\x80")
55
- end
56
-
57
- context "#attribute" do
58
- asserts "that it adds an attribute or method to be included in output" do
59
- template = rabl %{
60
- object @user
61
- attribute :name
62
- }
63
- scope = Object.new
64
- scope.instance_variable_set :@user, User.new(:name => 'irvine')
65
- char_split template.render(scope)
66
- end.equals char_split("\x81\xA4user\x81\xA4name\xA6irvine")
67
-
68
- asserts "that it can add attribute under a different key name through :as" do
69
- template = rabl %{
70
- object @user
71
- attribute :name, :as => 'city'
72
- }
73
- scope = Object.new
74
- scope.instance_variable_set :@user, User.new(:name => 'irvine')
75
- char_split template.render(scope)
76
- end.equals char_split("\x81\xA4user\x81\xA4city\xA6irvine")
77
-
78
- asserts "that it can add attribute under a different key name through hash" do
79
- template = rabl %{
80
- object @user
81
- attribute :name => :city
82
- }
83
- scope = Object.new
84
- scope.instance_variable_set :@user, User.new(:name => 'irvine')
85
- char_split template.render(scope)
86
- end.equals char_split("\x81\xA4user\x81\xA4city\xA6irvine")
87
- end
88
-
89
- context "#code" do
90
- asserts "that it can create an arbitraty code node" do
91
- template = rabl %{
92
- code(:foo) { 'bar' }
93
- }
94
- char_split template.render(Object.new)
95
- end.equals char_split("\x81\xA3foo\xA3bar")
96
-
97
- asserts "that it can be passed conditionals" do
98
- template = rabl %{
99
- code(:foo, :if => lambda { |i| false }) { 'bar' }
100
- }
101
- char_split template.render(Object.new)
102
- end.equals char_split("\x80")
103
- end
104
-
105
- context "#child" do
106
- asserts "that it can create a child node" do
107
- template = rabl %{
108
- object @user
109
- attribute :name
110
- child(@user) { attribute :city }
111
- }
112
- scope = Object.new
113
- scope.instance_variable_set :@user, User.new(:name => 'leo', :city => 'LA')
114
- char_split template.render(scope)
115
- end.equals char_split("\x81\xA4user\x82\xA4name\xA3leo\xA4user\x81\xA4city\xA2LA")
116
-
117
- asserts "that it can create a child node with different key" do
118
- template = rabl %{
119
- object @user
120
- attribute :name
121
- child(@user => :person) { attribute :city }
122
- }
123
- scope = Object.new
124
- scope.instance_variable_set :@user, User.new(:name => 'leo', :city => 'LA')
125
- char_split template.render(scope)
126
- end.equals char_split("\x81\xA4user\x82\xA4name\xA3leo\xA6person\x81\xA4city\xA2LA")
127
- end
128
-
129
- context "#glue" do
130
- asserts "that it glues data from a child node" do
131
- template = rabl %{
132
- object @user
133
- attribute :name
134
- glue(@user) { attribute :city }
135
- glue(@user) { attribute :age }
136
- }
137
- scope = Object.new
138
- scope.instance_variable_set :@user, User.new(:name => 'leo', :city => 'LA', :age => 12)
139
- char_split template.render(scope)
140
- end.equals char_split("\x81\xA4user\x83\xA4name\xA3leo\xA4city\xA2LA\xA3age\f")
141
- end
142
-
143
- teardown do
144
- Rabl.reset_configuration!
145
- end
146
- end
147
-
148
- context "with msgpack_engine" do
149
- setup do
150
- class CustomEncodeEngine
151
- def self.pack string
152
- 42
153
- end
154
- end
155
-
156
- Rabl.configure do |config|
157
- config.msgpack_engine = CustomEncodeEngine
158
- end
159
- end
160
-
161
- asserts 'that it returns process by custom to_json' do
162
- template = rabl %q{
163
- object @user
164
- }
165
- scope = Object.new
166
- scope.instance_variable_set :@user, User.new
167
- template.render(scope)
168
- end.equals 42
169
-
170
- teardown do
171
- Rabl.reset_configuration!
172
- end
173
- end
174
-
175
- context "without msgpack root" do
176
- setup do
177
- Rabl.configure do |config|
178
- config.include_msgpack_root = false
179
- end
180
- end
181
-
182
- context "#object" do
183
- asserts "that it sets data source" do
184
- template = rabl %q{
185
- object @user
186
- }
187
- scope = Object.new
188
- scope.instance_variable_set :@user, User.new
189
- char_split template.render(scope)
190
- end.equals char_split("\x80")
191
-
192
- asserts "that it can set root node" do
193
- template = rabl %q{
194
- object @user => :person
195
- }
196
- scope = Object.new
197
- scope.instance_variable_set :@user, User.new
198
- char_split template.render(scope)
199
- end.equals char_split("\x80")
200
- end
201
-
202
- context "#collection" do
203
- asserts "that it sets object to be casted as a simple array" do
204
- template = rabl %{
205
- collection @users
206
- }
207
- scope = Object.new
208
- scope.instance_variable_set :@users, [User.new, User.new]
209
- char_split template.render(scope)
210
- end.equals char_split("\x92\x80\x80")
211
-
212
- asserts "that it sets root node for objects" do
213
- template = rabl %{
214
- collection @users => :person
215
- }
216
- scope = Object.new
217
- scope.instance_variable_set :@users, [User.new, User.new]
218
- char_split template.render(scope)
219
- end.equals char_split("\x81\xA6person\x92\x80\x80")
220
- end
221
-
222
- context "#attribute" do
223
- asserts "that it adds an attribute or method to be included in output" do
224
- template = rabl %{
225
- object @user
226
- attribute :name
227
- }
228
- scope = Object.new
229
- scope.instance_variable_set :@user, User.new(:name => 'irvine')
230
- char_split template.render(scope)
231
- end.equals char_split("\x81\xA4name\xA6irvine")
232
-
233
- asserts "that it can add attribute under a different key name through :as" do
234
- template = rabl %{
235
- object @user
236
- attribute :name, :as => 'city'
237
- }
238
- scope = Object.new
239
- scope.instance_variable_set :@user, User.new(:name => 'irvine')
240
- char_split template.render(scope)
241
- end.equals char_split("\x81\xA4city\xA6irvine")
242
-
243
- asserts "that it can add attribute under a different key name through hash" do
244
- template = rabl %{
245
- object @user
246
- attribute :name => :city
247
- }
248
- scope = Object.new
249
- scope.instance_variable_set :@user, User.new(:name => 'irvine')
250
- char_split template.render(scope)
251
- end.equals char_split("\x81\xA4city\xA6irvine")
252
- end
253
-
254
- context "#code" do
255
- asserts "that it can create an arbitraty code node" do
256
- template = rabl %{
257
- code(:foo) { 'bar' }
258
- }
259
- char_split template.render(Object.new)
260
- end.equals char_split("\x81\xA3foo\xA3bar")
261
-
262
- asserts "that it can be passed conditionals" do
263
- template = rabl %{
264
- code(:foo, :if => lambda { |i| false }) { 'bar' }
265
- }
266
- char_split template.render(Object.new)
267
- end.equals char_split("\x80")
268
- end
269
-
270
- context "#child" do
271
- asserts "that it can create a child node" do
272
- template = rabl %{
273
- object @user
274
- attribute :name
275
- child(@user) { attribute :city }
276
- }
277
- scope = Object.new
278
- scope.instance_variable_set :@user, User.new(:name => 'leo', :city => 'LA')
279
- char_split template.render(scope)
280
- end.equals char_split("\x82\xA4name\xA3leo\xA4user\x81\xA4city\xA2LA")
281
-
282
- asserts "that it can create a child node with different key" do
283
- template = rabl %{
284
- object @user
285
- attribute :name
286
- child(@user => :person) { attribute :city }
287
- }
288
- scope = Object.new
289
- scope.instance_variable_set :@user, User.new(:name => 'leo', :city => 'LA')
290
- char_split template.render(scope)
291
- end.equals char_split("\x82\xA4name\xA3leo\xA6person\x81\xA4city\xA2LA")
292
- end
293
-
294
- context "#glue" do
295
- asserts "that it glues data from a child node" do
296
- template = rabl %{
297
- object @user
298
- attribute :name
299
- glue(@user) { attribute :city }
300
- glue(@user) { attribute :age }
301
- }
302
- scope = Object.new
303
- scope.instance_variable_set :@user, User.new(:name => 'leo', :city => 'LA', :age => 12)
304
- char_split template.render(scope)
305
- end.equals char_split("\x83\xA4name\xA3leo\xA4city\xA2LA\xA3age\f")
306
- end
307
-
308
- teardown do
309
- Rabl.reset_configuration!
310
- end
311
- end
312
- end
@@ -1,69 +0,0 @@
1
- require 'json'
2
- require File.expand_path('../teststrap', __FILE__)
3
- require 'rabl/template'
4
- require File.expand_path('../models/ormless', __FILE__)
5
-
6
- context "Rabl::MultiBuilder" do
7
- helper(:multi_builder) { |objects, options| Rabl::MultiBuilder.new(objects, options) }
8
- helper(:builder) { Rabl::Builder.new(nil, {}) }
9
- helper(:engine) { |object| Rabl::Engine.new("").apply(nil, :object => object) }
10
-
11
- context "#initialize" do
12
- setup do
13
- Rabl::MultiBuilder.new([], {})
14
- end
15
-
16
- asserts_topic.assigns :options
17
- asserts_topic.assigns :data
18
- asserts_topic.assigns :engine_to_builder
19
- asserts_topic.assigns :cache_key_to_engine
20
- end
21
-
22
- context "#to_a" do
23
- setup do
24
- Rabl::MultiBuilder.new([], {})
25
- end
26
-
27
- asserts "returns an array" do
28
- topic.to_a
29
- end.is_a?(Array)
30
- end
31
-
32
- context "#map_cache_key_to_engine" do
33
- asserts "maps the cache keys to the engines" do
34
- mb = multi_builder [], {}
35
- e = engine User.new
36
- mock(e).cache_key.returns(['cache key'])
37
- mb.send(:map_cache_key_to_engine, e)
38
- mb.instance_variable_get('@cache_key_to_engine').values.include?(e)
39
- end.equals(true)
40
- end
41
-
42
- context "#read_cache_results" do
43
- setup do
44
- mb = multi_builder [], {}
45
- mb.instance_variable_set('@cache_key_to_engine', { 'cache_key' => engine(User.new) })
46
- mb
47
- end
48
-
49
- asserts "uses read_multi to find all of the cached values with keys" do
50
- mock(Rabl.configuration.cache_engine).read_multi('cache_key').returns({})
51
- topic.send(:read_cache_results)
52
- end
53
- end
54
-
55
- context "replace_engines_with_cache_results" do
56
- asserts "replaces the builders' engines with the cache results" do
57
- mb = multi_builder [], {}
58
- e = engine User.new
59
- b = builder
60
- mb.instance_variable_set('@cache_key_to_engine', { 'cache_key' => e })
61
- mb.instance_variable_set('@engine_to_builder', { e => b })
62
- b.instance_variable_set('@_engines', [e])
63
- mb.instance_variable_set('@cache_results', { 'cache_key' => '{}' })
64
-
65
- mock(b).replace_engine(e, '{}')
66
- mb.send(:replace_engines_with_cache_results)
67
- end
68
- end
69
- end
@@ -1,205 +0,0 @@
1
- require 'tmpdir'
2
- require 'pathname'
3
- require File.expand_path('../teststrap', __FILE__)
4
-
5
- class TestPartial
6
- include Rabl::Partials
7
- end
8
-
9
- context "Rabl::Partials" do
10
- context "fetch_source with json" do
11
- helper(:tmp_path) { @tmp_path ||= Pathname.new(Dir.mktmpdir) }
12
-
13
- setup do
14
- ::Sinatra = stub(Class.new)
15
- File.open(tmp_path + "test.json.rabl", "w") do |f|
16
- f.puts "content"
17
- end
18
- File.open(tmp_path + "test_v1.json.rabl", "w") do |f|
19
- f.puts "content_v1"
20
- end
21
- FileUtils.touch tmp_path + "test_v2.json.rabl"
22
- [TestPartial.new.fetch_source('test', :view_path => tmp_path.to_s),
23
- TestPartial.new.fetch_source('test_v1', :view_path => tmp_path.to_s)]
24
- end
25
-
26
- asserts(:first).equals {["content\n", (tmp_path + "test.json.rabl").to_s ]}
27
- asserts(:last).equals {["content_v1\n", (tmp_path + "test_v1.json.rabl").to_s ]}
28
- teardown { Object.send(:remove_const, :Sinatra) }
29
- end
30
-
31
- context "fetch_source with rabl" do
32
- helper(:tmp_path) { @tmp_path ||= Pathname.new(Dir.mktmpdir) }
33
-
34
- setup do
35
- ::Sinatra = stub(Class.new)
36
- File.open(tmp_path + "test.rabl", "w") do |f|
37
- f.puts "content"
38
- end
39
- TestPartial.new.fetch_source('test', :view_path => tmp_path.to_s)
40
- end
41
- asserts('detects file.rabl') { topic }.equals do
42
- ["content\n", (tmp_path + 'test.rabl').to_s]
43
- end
44
- teardown { Object.send(:remove_const, :Sinatra) }
45
- end
46
-
47
- context "fetch_source with view_path" do
48
- helper(:tmp_path) { @tmp_path ||= Pathname.new(Dir.mktmpdir) }
49
-
50
- setup do
51
- ::Sinatra = stub(Class.new)
52
- File.open(tmp_path + "test.rabl", "w") do |f|
53
- f.puts "content"
54
- end
55
- File.open(tmp_path + "test.json.rabl", "w") do |f|
56
- f.puts "content2"
57
- end
58
- TestPartial.new.fetch_source('test', :view_path => tmp_path.to_s)
59
- end
60
- asserts('detects file.json.rabl first') { topic }.equals do
61
- ["content2\n", (tmp_path + 'test.json.rabl').to_s]
62
- end
63
- teardown { Object.send(:remove_const, :Sinatra) }
64
- end
65
-
66
- context "fetch source using configured view paths" do
67
- helper(:tmp_path) { @tmp_path ||= Pathname.new(Dir.mktmpdir) }
68
-
69
- setup do
70
- Rabl.configure do |config|
71
- config.view_paths = tmp_path
72
- end
73
-
74
- ::Sinatra = stub(Class.new)
75
- File.open(tmp_path + "test.rabl", "w") do |f|
76
- f.puts "content"
77
- end
78
- File.open(tmp_path + "test.json.rabl", "w") do |f|
79
- f.puts "content2"
80
- end
81
- TestPartial.new.fetch_source('test')
82
- end
83
- asserts('detects file.json.rabl first') { topic }.equals do
84
- ["content2\n", (tmp_path + 'test.json.rabl').to_s]
85
- end
86
- teardown do
87
- Object.send(:remove_const, :Sinatra)
88
- Rabl.configuration.view_paths = []
89
- end
90
- end
91
-
92
- context "partial_as_engine using configured view paths" do
93
- helper(:tmp_path) { @tmp_path ||= Pathname.new(Dir.mktmpdir) }
94
-
95
- setup do
96
- File.open(tmp_path + "_test.rabl", "w")
97
- Rabl::Engine.new('', :view_path => tmp_path)
98
- end
99
-
100
- asserts('returns new engine with given view_path') do
101
- topic.partial_as_engine('test', :object => {}).view_path
102
- end.equals do
103
- tmp_path
104
- end
105
-
106
- teardown do
107
- Rabl.configuration.view_paths = []
108
- end
109
- end
110
-
111
-
112
- context "fetch source with custom scope" do
113
- context "when Padrino is defined" do
114
- helper(:tmp_path) { @tmp_path ||= Pathname.new(Dir.mktmpdir) }
115
-
116
- setup do
117
- ::Padrino = stub(Class.new)
118
- Rabl.configuration.cache_sources = false
119
- @it = TestPartial.new
120
-
121
- def @it.context_scope; @context_scope ||= Object.new; end
122
- context_scope = @it.context_scope
123
- def context_scope.settings; end
124
-
125
- File.open(tmp_path + "test.json.rabl", "w") { |f| f.puts "content" }
126
- end
127
-
128
- asserts('Padrino constant dont break manual lookup') do
129
- @it.fetch_source('test', :view_path => tmp_path.to_s)
130
- end.equals do
131
- ["content\n", (tmp_path + "test.json.rabl").to_s ]
132
- end
133
-
134
- teardown { Object.send(:remove_const, :Padrino) }
135
- end
136
-
137
- context "when Sinatra is defined" do
138
- helper(:tmp_path) { @tmp_path ||= Pathname.new(Dir.mktmpdir) }
139
-
140
- setup do
141
- ::Sinatra = stub(Class.new)
142
- Rabl.configuration.cache_sources = false
143
- @it = TestPartial.new
144
-
145
- def @it.context_scope; @context_scope ||= Object.new; end
146
- context_scope = @it.context_scope
147
- def context_scope.settings; @settings ||= Object.new end
148
-
149
- File.open(tmp_path + "test.json.rabl", "w") { |f| f.puts "content" }
150
- end
151
-
152
- asserts('Sinatra constant dont break manual lookup') do
153
- @it.fetch_source((tmp_path + "test").to_s)
154
- end.equals do
155
- ["content\n", "/" + (tmp_path + "test.json.rabl").to_s ]
156
- end
157
-
158
- teardown { Object.send(:remove_const, :Sinatra) }
159
- end
160
- end
161
-
162
- context "fetch source with Rails" do
163
- context "and :view_path" do
164
- helper(:tmp_path) { @tmp_path ||= Pathname.new(Dir.mktmpdir) }
165
-
166
- setup do
167
- ::Rails = stub(Class.new)
168
- ::ActionPack = Module.new
169
- ::ActionPack::VERSION = Module.new
170
- ::ActionPack::VERSION::MAJOR = 3
171
- ::ActionPack::VERSION::MINOR = 2
172
- @it = TestPartial.new
173
-
174
- def @it.context_scope; @context_scope ||= Object.new; end
175
- def @it.request_format; :json; end
176
- context_scope = @it.context_scope
177
-
178
- def context_scope.view_paths; []; end
179
- def context_scope.lookup_context; @lookup_context ||= Object.new; end
180
- lookup_context = context_scope.lookup_context
181
-
182
- def lookup_context.rendered_format; :json; end
183
- def lookup_context.find(*args)
184
- raise RuntimeError, 'Something happen with Rails lookup'
185
- end
186
-
187
- File.open(tmp_path + "test.json.rabl", "w") { |f| f.puts "content" }
188
-
189
- @it
190
- end
191
-
192
- asserts('rails lookups dont break manual') do
193
- @it.fetch_source('test', :view_path => tmp_path.to_s)
194
- end.equals do
195
- ["content\n", (tmp_path + "test.json.rabl").to_s ]
196
- end
197
-
198
- teardown do
199
- Object.send(:remove_const, :Rails)
200
- Object.send(:remove_const, :ActionPack)
201
- Rabl.configuration.view_paths = []
202
- end
203
- end
204
- end # Rails
205
- end # Rabl::Partials