lizarb 1.0.4 → 1.0.5

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 (441) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +34 -7
  3. data/Gemfile.lock +176 -14
  4. data/README.md +53 -9
  5. data/app/dev/commands/color_command.rb +29 -0
  6. data/app/dev/commands/color_command_test.rb +10 -0
  7. data/app/dev/commands/stick_command.rb +102 -0
  8. data/app/dev/commands/stick_command_test.rb +19 -0
  9. data/app/dev_box.rb +49 -17
  10. data/app/happy_box.rb +3 -2
  11. data/app/net/databases/redis_db.rb +1 -1
  12. data/app/net/databases/redis_db_test.rb +5 -5
  13. data/app/net/databases/sqlite_db.rb +1 -1
  14. data/app/net/databases/sqlite_db_test.rb +5 -5
  15. data/app/net/records/app_record.rb +1 -1
  16. data/app/net/records/app_record_test.rb +1 -1
  17. data/app/net/records/post_record_test.rb +1 -1
  18. data/app/net/records/user_record_test.rb +1 -1
  19. data/app/net_box.rb +29 -6
  20. data/app/web/requests/app_request.rb +1 -1
  21. data/app/web/requests/app_request_test.rb +1 -1
  22. data/app/web/requests/foo_request.rb +26 -0
  23. data/app/web/requests/foo_request_test.rb +7 -0
  24. data/app/web_box.rb +16 -8
  25. data/app.rb +38 -6
  26. data/app_global.gemfile.rb +1 -1
  27. data/app_global.gemfile.rb.lock +25 -3
  28. data/app_global.rb +1 -0
  29. data/{app_new → examples/bench/app}/dev/benches/loops_bench.rb +10 -3
  30. data/{app_new → examples/bench/app}/dev/benches/loops_bench_test.rb +1 -2
  31. data/examples/bench/app/dev/benches/objects_bench.rb +48 -0
  32. data/{app_new → examples/bench/app}/dev/benches/objects_bench_test.rb +1 -2
  33. data/{app_new → examples/bench/app}/dev/benches/sorted_bench.rb +28 -8
  34. data/examples/bench/app/dev/benches/sorted_bench_test.rb +11 -0
  35. data/{app_new → examples/bench/app}/dev/benches/variables_bench.rb +8 -2
  36. data/{app_new → examples/bench/app}/dev/benches/variables_bench_test.rb +1 -2
  37. data/examples/client/app/net/clients/news_client.rb +42 -0
  38. data/examples/client/app/net/clients/news_client_test.rb +24 -0
  39. data/{app_new → examples/command/app}/dev/commands/calculator_command.rb +1 -1
  40. data/{app_new → examples/command/app}/dev/commands/calculator_command_test.rb +1 -2
  41. data/{app_new → examples/command/app}/dev/commands/circle_command.rb +1 -1
  42. data/{app_new → examples/command/app}/dev/commands/circle_command_test.rb +1 -2
  43. data/{app_new → examples/command/app}/dev/commands/narrative_method_command.rb +3 -3
  44. data/{app_new → examples/command/app}/dev/commands/narrative_method_command_test.rb +2 -3
  45. data/{app_new → examples/command/app}/dev/commands/quadratic_command.rb +1 -1
  46. data/{app_new → examples/command/app}/dev/commands/quadratic_command_test.rb +1 -2
  47. data/examples/command/app/dev_box.rb +3 -0
  48. data/examples/log/app/dev/logs/logger_log.rb +8 -0
  49. data/examples/log/app/dev/logs/logger_log_test.rb +16 -0
  50. data/examples/new/app/dev_box.rb +67 -0
  51. data/examples/new/app.rb +41 -0
  52. data/examples/shell/app/dev/shells/bash_adapter_shell.rb +25 -0
  53. data/examples/shell/app/dev/shells/bash_adapter_shell_test.rb +23 -0
  54. data/examples/shell/app/dev/shells/business_logic_shell.rb +42 -0
  55. data/examples/shell/app/dev/shells/business_logic_shell_test.rb +39 -0
  56. data/examples/shell/app/dev/shells/gem_adapter_shell.rb +33 -0
  57. data/examples/shell/app/dev/shells/gem_adapter_shell_test.rb +23 -0
  58. data/exe/liza +6 -1
  59. data/exe/lizarb +1 -1
  60. data/lib/app.rb +71 -74
  61. data/lib/art_system/art_box.rb +5 -0
  62. data/lib/art_system/art_box_test.rb +8 -0
  63. data/lib/art_system.rb +8 -0
  64. data/lib/crypto_system/crypto_box.rb +5 -0
  65. data/lib/crypto_system/crypto_box_test.rb +8 -0
  66. data/lib/crypto_system.rb +8 -0
  67. data/lib/deep_system/deep_box.rb +5 -0
  68. data/lib/deep_system/deep_box_test.rb +8 -0
  69. data/lib/deep_system.rb +8 -0
  70. data/lib/desk_system/commands/glimmer_command.rb +26 -0
  71. data/lib/desk_system/commands/glimmer_command_test.rb +10 -0
  72. data/lib/desk_system/desk_box.rb +5 -0
  73. data/lib/desk_system/desk_box_test.rb +8 -0
  74. data/lib/desk_system.rb +8 -0
  75. data/lib/dev_system/{dev/controllers/command → commands}/test_command.rb +32 -4
  76. data/lib/dev_system/{dev/controllers/command → commands}/test_command_test.rb +1 -2
  77. data/lib/dev_system/dev_box.rb +79 -0
  78. data/lib/dev_system/dev_box_test.rb +33 -0
  79. data/lib/dev_system/generators/env_generator.rb +87 -0
  80. data/lib/dev_system/generators/env_generator_test.rb +11 -0
  81. data/lib/dev_system/generators/gemfile_generator.rb +47 -0
  82. data/lib/dev_system/generators/gemfile_generator_test.rb +11 -0
  83. data/lib/dev_system/generators/system_generator.rb +70 -0
  84. data/lib/dev_system/generators/system_generator_test.rb +11 -0
  85. data/lib/dev_system/{dev/controllers → sub/bench}/bench.rb +4 -0
  86. data/lib/dev_system/{dev/panels → sub/bench}/bench_panel_test.rb +6 -2
  87. data/lib/dev_system/sub/bench/bench_test.rb +24 -0
  88. data/lib/dev_system/{dev/controllers/bench → sub/bench/benches}/not_found_bench.rb +1 -2
  89. data/lib/dev_system/{dev/controllers/bench → sub/bench/benches}/not_found_bench_test.rb +1 -2
  90. data/lib/dev_system/{dev/controllers/command → sub/bench/commands}/bench_command.rb +1 -5
  91. data/lib/dev_system/{dev/controllers/command → sub/bench/commands}/bench_command_test.rb +1 -2
  92. data/lib/dev_system/sub/bench/generators/bench_generator.rb +70 -0
  93. data/lib/dev_system/sub/bench/generators/bench_generator_test.rb +10 -0
  94. data/lib/dev_system/sub/command/command.rb +28 -0
  95. data/lib/dev_system/sub/command/command_panel.rb +151 -0
  96. data/lib/dev_system/sub/command/command_panel_test.rb +78 -0
  97. data/lib/dev_system/{dev/controllers → sub/command}/command_test.rb +6 -2
  98. data/lib/dev_system/sub/command/commands/base_command.rb +48 -0
  99. data/lib/dev_system/sub/command/commands/base_command_test.rb +11 -0
  100. data/lib/dev_system/{dev/controllers/terminal/irb_terminal.rb → sub/command/commands/irb_command.rb} +3 -7
  101. data/lib/dev_system/sub/command/commands/irb_command_test.rb +11 -0
  102. data/lib/dev_system/sub/command/commands/not_found_command.rb +156 -0
  103. data/lib/dev_system/sub/command/commands/not_found_command_test.rb +11 -0
  104. data/lib/dev_system/{dev/controllers/terminal/pry_terminal.rb → sub/command/commands/pry_command.rb} +2 -2
  105. data/lib/dev_system/sub/command/commands/pry_command_test.rb +11 -0
  106. data/lib/dev_system/sub/command/commands/simple_command.rb +143 -0
  107. data/lib/dev_system/sub/command/commands/simple_command_test.rb +11 -0
  108. data/lib/dev_system/sub/command/generators/command_generator.rb +90 -0
  109. data/lib/dev_system/sub/command/generators/command_generator_test.rb +11 -0
  110. data/lib/dev_system/sub/command/input_commands/highline_input_command.rb +17 -0
  111. data/lib/dev_system/sub/command/input_commands/highline_input_command_test.rb +19 -0
  112. data/lib/dev_system/sub/command/input_commands/input_command.rb +20 -0
  113. data/lib/dev_system/sub/command/input_commands/input_command_test.rb +19 -0
  114. data/lib/dev_system/sub/command/input_commands/tty_input_command.rb +55 -0
  115. data/lib/dev_system/sub/command/input_commands/tty_input_command_test.rb +19 -0
  116. data/lib/dev_system/sub/generator/commands/generate_command.rb +9 -0
  117. data/lib/dev_system/sub/generator/commands/generate_command_test.rb +11 -0
  118. data/lib/dev_system/sub/generator/commands/new_command.rb +10 -0
  119. data/lib/dev_system/{dev/controllers/command → sub/generator/commands}/new_command_test.rb +1 -1
  120. data/lib/dev_system/sub/generator/generator.rb +19 -0
  121. data/lib/dev_system/sub/generator/generator_panel.rb +98 -0
  122. data/lib/dev_system/sub/generator/generator_panel_test.rb +79 -0
  123. data/lib/dev_system/{dev/controllers → sub/generator}/generator_test.rb +6 -2
  124. data/lib/dev_system/sub/generator/generators/base_generator.rb +64 -0
  125. data/lib/dev_system/sub/generator/generators/base_generator_test.rb +11 -0
  126. data/lib/dev_system/sub/generator/generators/generator_generator.rb +71 -0
  127. data/lib/dev_system/sub/generator/generators/generator_generator_test.rb +11 -0
  128. data/lib/dev_system/sub/generator/generators/new_generator.rb +74 -0
  129. data/lib/dev_system/sub/generator/generators/new_generator_test.rb +11 -0
  130. data/lib/dev_system/sub/generator/generators/not_found_generator.rb +155 -0
  131. data/lib/dev_system/sub/generator/generators/not_found_generator_test.rb +11 -0
  132. data/lib/dev_system/sub/generator/generators/simple_generator.rb +257 -0
  133. data/lib/dev_system/sub/generator/generators/simple_generator_test.rb +38 -0
  134. data/lib/dev_system/sub/log/commands/log_command.rb +11 -0
  135. data/lib/dev_system/sub/log/commands/log_command_test.rb +11 -0
  136. data/lib/dev_system/sub/log/generators/log_generator.rb +54 -0
  137. data/lib/dev_system/sub/log/generators/log_generator_test.rb +10 -0
  138. data/lib/dev_system/sub/log/log_panel.rb +47 -0
  139. data/lib/dev_system/sub/log/log_panel_test.rb +50 -0
  140. data/lib/dev_system/{dev/controllers → sub/log}/log_test.rb +6 -2
  141. data/lib/dev_system/sub/log/logs/output_log.rb +74 -0
  142. data/lib/dev_system/sub/log/logs/output_log_test.rb +47 -0
  143. data/lib/dev_system/sub/log/logs/stick_log.rb +79 -0
  144. data/lib/dev_system/sub/log/logs/stick_log_test.rb +88 -0
  145. data/lib/dev_system/sub/shell/commands/convert_command.rb +27 -0
  146. data/lib/dev_system/sub/shell/commands/convert_command_test.rb +10 -0
  147. data/lib/dev_system/sub/shell/commands/format_command.rb +25 -0
  148. data/lib/dev_system/sub/shell/commands/format_command_test.rb +10 -0
  149. data/lib/dev_system/sub/shell/commands/loc_command.rb +211 -0
  150. data/lib/dev_system/sub/shell/commands/loc_command_test.rb +10 -0
  151. data/lib/dev_system/sub/shell/commands/shell_command.rb +45 -0
  152. data/lib/dev_system/sub/shell/commands/shell_command_test.rb +11 -0
  153. data/lib/dev_system/sub/shell/converter_shells/coffee_converter_shell.rb +21 -0
  154. data/lib/dev_system/sub/shell/converter_shells/coffee_converter_shell_test.rb +41 -0
  155. data/lib/dev_system/sub/shell/converter_shells/converter_shell.rb +13 -0
  156. data/lib/dev_system/sub/shell/converter_shells/converter_shell_test.rb +19 -0
  157. data/lib/dev_system/sub/shell/converter_shells/haml_converter_shell.rb +30 -0
  158. data/lib/dev_system/sub/shell/converter_shells/haml_converter_shell_test.rb +34 -0
  159. data/lib/dev_system/sub/shell/converter_shells/md_converter_shell.rb +21 -0
  160. data/lib/dev_system/sub/shell/converter_shells/md_converter_shell_test.rb +38 -0
  161. data/lib/dev_system/sub/shell/converter_shells/scss_converter_shell.rb +59 -0
  162. data/lib/dev_system/sub/shell/converter_shells/scss_converter_shell_test.rb +59 -0
  163. data/lib/dev_system/sub/shell/formatter_shells/formatter_shell.rb +13 -0
  164. data/lib/dev_system/sub/shell/formatter_shells/formatter_shell_test.rb +19 -0
  165. data/lib/dev_system/sub/shell/formatter_shells/html_formatter_shell.rb +20 -0
  166. data/lib/dev_system/sub/shell/formatter_shells/html_formatter_shell_test.rb +51 -0
  167. data/lib/dev_system/sub/shell/generators/shell_generator.rb +68 -0
  168. data/lib/dev_system/sub/shell/generators/shell_generator_test.rb +10 -0
  169. data/lib/dev_system/{dev/controllers → sub/shell}/shell.rb +2 -2
  170. data/lib/dev_system/sub/shell/shell_panel.rb +98 -0
  171. data/lib/dev_system/sub/shell/shell_panel_test.rb +18 -0
  172. data/lib/dev_system/{dev/controllers → sub/shell}/shell_test.rb +9 -5
  173. data/lib/dev_system/sub/shell/shells/app_shell.rb +185 -0
  174. data/lib/dev_system/sub/shell/shells/app_shell_test.rb +26 -0
  175. data/lib/dev_system/{dev/controllers/shell → sub/shell/shells}/bin_shell_test.rb +1 -2
  176. data/lib/dev_system/sub/shell/shells/color_shell.rb +389 -0
  177. data/lib/dev_system/sub/shell/shells/color_shell_test.rb +27 -0
  178. data/lib/dev_system/sub/shell/shells/controller_shell.rb +20 -0
  179. data/lib/dev_system/sub/shell/shells/controller_shell_test.rb +16 -0
  180. data/lib/dev_system/sub/shell/shells/dir_shell.rb +27 -0
  181. data/lib/dev_system/{dev/controllers/shell → sub/shell/shells}/dir_shell_test.rb +1 -5
  182. data/lib/dev_system/{dev/controllers/shell → sub/shell/shells}/file_shell.rb +4 -4
  183. data/lib/dev_system/{dev/controllers/shell → sub/shell/shells}/file_shell_test.rb +1 -2
  184. data/lib/dev_system/sub/shell/shells/gem_shell.rb +21 -0
  185. data/lib/dev_system/sub/shell/shells/gem_shell_test.rb +28 -0
  186. data/lib/dev_system/sub/shell/shells/kernel_shell.rb +22 -0
  187. data/lib/dev_system/sub/shell/shells/kernel_shell_test.rb +10 -0
  188. data/lib/dev_system/sub/shell/shells/line_diff_shell.rb +26 -0
  189. data/lib/dev_system/sub/shell/shells/line_diff_shell_test.rb +11 -0
  190. data/lib/dev_system/sub/shell/shells/line_shell.rb +56 -0
  191. data/lib/dev_system/sub/shell/shells/line_shell_test.rb +70 -0
  192. data/lib/dev_system/sub/shell/shells/method_shell.rb +52 -0
  193. data/lib/dev_system/sub/shell/shells/method_shell_test.rb +34 -0
  194. data/lib/dev_system/sub/shell/shells/text_file_shell.rb +14 -0
  195. data/lib/dev_system/sub/shell/shells/text_file_shell_test.rb +11 -0
  196. data/lib/dev_system/sub/shell/shells/text_shell.rb +65 -0
  197. data/lib/dev_system/{dev/controllers/shell → sub/shell/shells}/text_shell_test.rb +1 -2
  198. data/lib/dev_system.rb +8 -2
  199. data/lib/happy_system/happy_box.rb +9 -0
  200. data/lib/happy_system/happy_box_test.rb +24 -0
  201. data/lib/happy_system/sub/axo/axo.rb +10 -0
  202. data/lib/happy_system/sub/axo/axo_panel.rb +9 -0
  203. data/lib/happy_system/sub/axo/axo_panel_test.rb +16 -0
  204. data/lib/happy_system/sub/axo/axo_test.rb +16 -0
  205. data/lib/happy_system/sub/axo/commands/axo_command.rb +40 -0
  206. data/lib/happy_system/sub/axo/commands/axo_command_test.rb +8 -0
  207. data/lib/happy_system/sub/axo/generators/axo_generator.rb +79 -0
  208. data/lib/happy_system/sub/axo/generators/axo_generator_test.rb +11 -0
  209. data/lib/happy_system.rb +4 -2
  210. data/lib/lab_system/clients/kroki_client.rb +134 -0
  211. data/lib/lab_system/clients/kroki_client_test.rb +32 -0
  212. data/lib/lab_system/clients/liza_kroki_client.rb +176 -0
  213. data/lib/lab_system/clients/liza_kroki_client_test.rb +32 -0
  214. data/lib/lab_system/commands/docker_command.rb +61 -0
  215. data/lib/lab_system/commands/docker_command_test.rb +11 -0
  216. data/lib/lab_system/lab_box.rb +5 -0
  217. data/lib/lab_system/lab_box_test.rb +8 -0
  218. data/lib/lab_system/requests/kroki_request.rb +182 -0
  219. data/lib/lab_system/requests/kroki_request_test.rb +11 -0
  220. data/lib/lab_system/shells/docker_shell.rb +60 -0
  221. data/lib/lab_system/shells/docker_shell_test.rb +61 -0
  222. data/lib/lab_system/shells/kroki_docker_shell.rb +20 -0
  223. data/lib/lab_system/shells/kroki_docker_shell_test.rb +11 -0
  224. data/lib/lab_system.rb +8 -0
  225. data/lib/liza/base/controller.rb +14 -15
  226. data/lib/liza/base/controller_test.rb +28 -2
  227. data/lib/liza/base/panel.rb +48 -6
  228. data/lib/liza/base/panel_test.rb +141 -2
  229. data/lib/liza/base_parts/controller_subsystem_part.rb +93 -0
  230. data/lib/liza/base_parts/panel_rescuer_part.rb +129 -0
  231. data/lib/liza/meta/box.rb +24 -0
  232. data/lib/liza/meta/box_test.rb +20 -0
  233. data/lib/liza/meta/part_test.rb +6 -1
  234. data/lib/liza/meta/system.rb +50 -7
  235. data/lib/liza/meta/system_test.rb +6 -2
  236. data/lib/liza/ruby_tests/app_test.rb +39 -0
  237. data/lib/liza/ruby_tests/class_test.rb +20 -0
  238. data/lib/liza/ruby_tests/module_test.rb +4 -4
  239. data/lib/liza/{ruby_test.rb → ruby_tests/object_test.rb} +1 -1
  240. data/lib/liza/ruby_tests/string_test.rb +3 -1
  241. data/lib/liza/{test → safety}/test.rb +9 -0
  242. data/lib/liza/{test → safety}/test_test.rb +40 -7
  243. data/lib/liza/{test_parts → safety_parts}/test_assertions_advanced_part.rb +1 -1
  244. data/lib/liza/{test_parts → safety_parts}/test_log_part.rb +20 -0
  245. data/lib/liza/{test_parts → safety_parts}/test_subject_part.rb +10 -0
  246. data/lib/liza/safety_parts/test_tree_part.rb +87 -0
  247. data/lib/liza/unit.rb +50 -100
  248. data/lib/liza/unit_parts/unit_classes_part.rb +37 -0
  249. data/lib/liza/unit_parts/unit_classes_part_test.rb +3 -0
  250. data/lib/liza/unit_parts/unit_logging_part.rb +139 -0
  251. data/lib/liza/unit_parts/unit_logging_part_test.rb +3 -0
  252. data/lib/liza/unit_parts/unit_methods_part.rb +35 -0
  253. data/lib/liza/unit_parts/unit_methods_part_test.rb +3 -0
  254. data/lib/liza/unit_parts/unit_procedure_part.rb +2 -2
  255. data/lib/liza/unit_parts/unit_renderer_part.rb +171 -0
  256. data/lib/liza/unit_parts/unit_renderer_part_test.rb +15 -0
  257. data/lib/liza/unit_parts/unit_settings_part.rb +8 -0
  258. data/lib/liza/unit_test.rb +114 -16
  259. data/lib/liza.rb +2 -2
  260. data/lib/lizarb/ruby/class.rb +9 -1
  261. data/lib/lizarb/ruby/string.rb +3 -1
  262. data/lib/lizarb/version.rb +1 -1
  263. data/lib/lizarb.rb +215 -64
  264. data/lib/micro_system/micro_box.rb +5 -0
  265. data/lib/micro_system/micro_box_test.rb +8 -0
  266. data/lib/micro_system.rb +8 -0
  267. data/lib/net_system/net_box.rb +21 -0
  268. data/lib/net_system/{net/net_box_test.rb → net_box_test.rb} +1 -2
  269. data/lib/net_system/{net/panels → sub/client}/client_panel_test.rb +1 -2
  270. data/lib/net_system/{net/controllers → sub/client}/client_test.rb +1 -2
  271. data/lib/net_system/sub/client/generators/client_generator.rb +88 -0
  272. data/lib/net_system/sub/client/generators/client_generator_test.rb +10 -0
  273. data/lib/net_system/sub/database/clients/mongo_client.rb +33 -0
  274. data/lib/net_system/sub/database/clients/mongo_client_test.rb +20 -0
  275. data/lib/net_system/sub/database/clients/mysql_client.rb +29 -0
  276. data/lib/net_system/sub/database/clients/mysql_client_test.rb +23 -0
  277. data/lib/net_system/sub/database/clients/pgsql_client.rb +29 -0
  278. data/lib/net_system/sub/database/clients/pgsql_client_test.rb +25 -0
  279. data/lib/net_system/{net/controllers/client → sub/database/clients}/redis_client.rb +4 -1
  280. data/lib/net_system/{net/controllers/client → sub/database/clients}/redis_client_test.rb +2 -2
  281. data/lib/net_system/{net/controllers/client → sub/database/clients}/sqlite_client.rb +4 -1
  282. data/lib/net_system/{net/controllers/client → sub/database/clients}/sqlite_client_test.rb +2 -2
  283. data/lib/net_system/sub/database/commands/database_command.rb +32 -0
  284. data/lib/net_system/sub/database/commands/database_command_test.rb +11 -0
  285. data/lib/net_system/{net/panels → sub/database}/database_panel_test.rb +1 -2
  286. data/lib/net_system/{net/controllers → sub/database}/database_test.rb +1 -2
  287. data/lib/net_system/sub/database/databases/mongo_db.rb +8 -0
  288. data/lib/net_system/sub/database/databases/mongo_db_test.rb +21 -0
  289. data/lib/net_system/sub/database/databases/mysql_db.rb +8 -0
  290. data/lib/net_system/sub/database/databases/mysql_db_test.rb +21 -0
  291. data/lib/net_system/sub/database/databases/pgsql_db.rb +8 -0
  292. data/lib/net_system/sub/database/databases/pgsql_db_test.rb +21 -0
  293. data/lib/net_system/{net/controllers/database → sub/database/databases}/redis_db_test.rb +1 -1
  294. data/lib/net_system/{net/controllers/database → sub/database/databases}/sqlite_db_test.rb +1 -1
  295. data/lib/net_system/sub/record/generators/record_generator.rb +33 -0
  296. data/lib/net_system/sub/record/generators/record_generator_test.rb +11 -0
  297. data/lib/net_system/sub/record/record_panel.rb +3 -0
  298. data/lib/net_system/sub/record/record_panel_test.rb +11 -0
  299. data/lib/net_system/{net/controllers → sub/record}/record_test.rb +1 -2
  300. data/lib/net_system.rb +8 -1
  301. data/lib/web_system/{dev → sub/rack/commands}/rack_command.rb +7 -5
  302. data/lib/web_system/sub/rack/commands/rack_command_test.rb +11 -0
  303. data/lib/web_system/sub/rack/middle_racks/first_middle_rack.rb +8 -0
  304. data/lib/web_system/sub/rack/middle_racks/first_middle_rack_test.rb +11 -0
  305. data/lib/web_system/sub/rack/middle_racks/last_middle_rack.rb +3 -0
  306. data/lib/web_system/sub/rack/middle_racks/last_middle_rack_test.rb +11 -0
  307. data/lib/web_system/sub/rack/middle_racks/middle_rack.rb +18 -0
  308. data/lib/web_system/sub/rack/middle_racks/middle_rack_test.rb +11 -0
  309. data/lib/web_system/sub/rack/middle_racks/zeitwerk_middle_rack.rb +11 -0
  310. data/lib/web_system/sub/rack/middle_racks/zeitwerk_middle_rack_test.rb +11 -0
  311. data/lib/web_system/sub/rack/rack_panel.rb +52 -0
  312. data/lib/web_system/{web/panels → sub/rack}/rack_panel_test.rb +1 -2
  313. data/lib/web_system/{web/controllers → sub/rack}/rack_test.rb +1 -2
  314. data/lib/web_system/sub/rack/server_racks/agoo_server_rack.rb +53 -0
  315. data/lib/web_system/sub/rack/server_racks/agoo_server_rack_test.rb +11 -0
  316. data/lib/web_system/sub/rack/server_racks/falcon_server_rack.rb +46 -0
  317. data/lib/web_system/sub/rack/server_racks/falcon_server_rack_test.rb +11 -0
  318. data/lib/web_system/sub/rack/server_racks/iodine_server_rack.rb +47 -0
  319. data/lib/web_system/sub/rack/server_racks/iodine_server_rack_test.rb +11 -0
  320. data/lib/web_system/sub/rack/server_racks/puma_server_rack.rb +48 -0
  321. data/lib/web_system/sub/rack/server_racks/puma_server_rack_test.rb +11 -0
  322. data/lib/web_system/sub/rack/server_racks/server_rack.rb +12 -0
  323. data/lib/web_system/sub/rack/server_racks/server_rack_test.rb +11 -0
  324. data/lib/web_system/sub/rack/server_racks/thin_server_rack.rb +85 -0
  325. data/lib/web_system/sub/rack/server_racks/thin_server_rack_test.rb +11 -0
  326. data/lib/web_system/sub/request/commands/request_command.rb +125 -0
  327. data/lib/web_system/sub/request/commands/request_command_test.rb +11 -0
  328. data/lib/web_system/sub/request/generators/request_generator.rb +96 -0
  329. data/lib/web_system/sub/request/generators/request_generator_test.rb +11 -0
  330. data/lib/web_system/sub/request/request_panel.rb +69 -0
  331. data/lib/web_system/sub/request/request_panel_test.rb +54 -0
  332. data/lib/web_system/{web/controllers → sub/request}/request_test.rb +1 -2
  333. data/lib/web_system/sub/request/requests/simple_request.rb +95 -0
  334. data/lib/web_system/sub/request/requests/simple_request_test.rb +11 -0
  335. data/lib/web_system/sub/request/router_requests/router_request.rb +7 -0
  336. data/lib/web_system/sub/request/router_requests/router_request_test.rb +11 -0
  337. data/lib/web_system/sub/request/router_requests/simple_router_request.rb +24 -0
  338. data/lib/web_system/sub/request/router_requests/simple_router_request_test.rb +11 -0
  339. data/lib/web_system/web_box.rb +17 -0
  340. data/lib/web_system/{web/web_box_test.rb → web_box_test.rb} +1 -2
  341. data/lib/web_system.rb +9 -3
  342. data/lib/work_system/work_box.rb +5 -0
  343. data/lib/work_system/work_box_test.rb +8 -0
  344. data/lib/work_system.rb +8 -0
  345. data/lizarb.gemspec +13 -7
  346. metadata +369 -167
  347. data/app/happy/axos/axo.rb +0 -50
  348. data/app_new/dev/benches/objects_bench.rb +0 -83
  349. data/app_new/dev/benches/sorted_bench_test.rb +0 -12
  350. data/app_new/dev_box.rb +0 -14
  351. data/app_new.rb +0 -15
  352. data/exe/lrb +0 -3
  353. data/lib/dev_system/dev/controllers/bench_test.rb +0 -12
  354. data/lib/dev_system/dev/controllers/command/generate_command.rb +0 -9
  355. data/lib/dev_system/dev/controllers/command/generate_command_test.rb +0 -12
  356. data/lib/dev_system/dev/controllers/command/new_command.rb +0 -9
  357. data/lib/dev_system/dev/controllers/command/not_found_command.rb +0 -48
  358. data/lib/dev_system/dev/controllers/command/not_found_command_test.rb +0 -12
  359. data/lib/dev_system/dev/controllers/command/terminal_command.rb +0 -22
  360. data/lib/dev_system/dev/controllers/command/terminal_command_test.rb +0 -12
  361. data/lib/dev_system/dev/controllers/command.rb +0 -13
  362. data/lib/dev_system/dev/controllers/generator.rb +0 -9
  363. data/lib/dev_system/dev/controllers/generator_dsl_main_part.rb +0 -50
  364. data/lib/dev_system/dev/controllers/generators/bench_generator/controller.rb.erb +0 -23
  365. data/lib/dev_system/dev/controllers/generators/bench_generator/controller_test.rb.erb +0 -12
  366. data/lib/dev_system/dev/controllers/generators/bench_generator.rb +0 -12
  367. data/lib/dev_system/dev/controllers/generators/bench_generator_test.rb +0 -12
  368. data/lib/dev_system/dev/controllers/generators/command_generator/controller.rb.erb +0 -41
  369. data/lib/dev_system/dev/controllers/generators/command_generator/controller_test.rb.erb +0 -12
  370. data/lib/dev_system/dev/controllers/generators/command_generator.rb +0 -19
  371. data/lib/dev_system/dev/controllers/generators/command_generator_test.rb +0 -12
  372. data/lib/dev_system/dev/controllers/generators/controller_generator.rb +0 -97
  373. data/lib/dev_system/dev/controllers/generators/controller_generator_test.rb +0 -12
  374. data/lib/dev_system/dev/controllers/generators/generator_generator/generator.rb.erb +0 -18
  375. data/lib/dev_system/dev/controllers/generators/generator_generator/generator_test.rb.erb +0 -12
  376. data/lib/dev_system/dev/controllers/generators/generator_generator/template.rb.erb +0 -9
  377. data/lib/dev_system/dev/controllers/generators/generator_generator/template_test.rb.erb +0 -12
  378. data/lib/dev_system/dev/controllers/generators/generator_generator.rb +0 -30
  379. data/lib/dev_system/dev/controllers/generators/generator_generator_test.rb +0 -12
  380. data/lib/dev_system/dev/controllers/generators/new_generator.rb +0 -117
  381. data/lib/dev_system/dev/controllers/generators/new_generator_test.rb +0 -12
  382. data/lib/dev_system/dev/controllers/generators/not_found_generator.rb +0 -39
  383. data/lib/dev_system/dev/controllers/generators/not_found_generator_test.rb +0 -12
  384. data/lib/dev_system/dev/controllers/generators/record_generator.rb +0 -46
  385. data/lib/dev_system/dev/controllers/generators/record_generator_test.rb +0 -12
  386. data/lib/dev_system/dev/controllers/generators/request_generator.rb +0 -63
  387. data/lib/dev_system/dev/controllers/generators/request_generator_test.rb +0 -12
  388. data/lib/dev_system/dev/controllers/shell/dir_shell.rb +0 -27
  389. data/lib/dev_system/dev/controllers/shell/text_shell.rb +0 -23
  390. data/lib/dev_system/dev/controllers/terminal/irb_terminal_test.rb +0 -12
  391. data/lib/dev_system/dev/controllers/terminal/pry_terminal_test.rb +0 -12
  392. data/lib/dev_system/dev/controllers/terminal.rb +0 -17
  393. data/lib/dev_system/dev/controllers/terminal_test.rb +0 -12
  394. data/lib/dev_system/dev/dev_box.rb +0 -33
  395. data/lib/dev_system/dev/dev_box_test.rb +0 -17
  396. data/lib/dev_system/dev/panels/command_panel.rb +0 -71
  397. data/lib/dev_system/dev/panels/command_panel_test.rb +0 -46
  398. data/lib/dev_system/dev/panels/generator_panel.rb +0 -73
  399. data/lib/dev_system/dev/panels/generator_panel_test.rb +0 -46
  400. data/lib/dev_system/dev/panels/log_panel.rb +0 -13
  401. data/lib/dev_system/dev/panels/log_panel_test.rb +0 -16
  402. data/lib/dev_system/dev/panels/shell_panel.rb +0 -3
  403. data/lib/dev_system/dev/panels/shell_panel_test.rb +0 -12
  404. data/lib/dev_system/dev/panels/terminal_panel.rb +0 -3
  405. data/lib/dev_system/dev/panels/terminal_panel_test.rb +0 -12
  406. data/lib/happy_system/dev/happy_command.rb +0 -11
  407. data/lib/happy_system/happy/controllers/axo.rb +0 -7
  408. data/lib/happy_system/happy/happy_box.rb +0 -8
  409. data/lib/happy_system/happy/happy_box_test.rb +0 -16
  410. data/lib/happy_system/happy/panels/axo_panel.rb +0 -3
  411. data/lib/liza/base/box.rb +0 -90
  412. data/lib/liza/base/box_test.rb +0 -10
  413. data/lib/liza/base_parts/controller_renderer_part.rb +0 -140
  414. data/lib/liza/base_parts/controller_renderer_part_test.rb +0 -16
  415. data/lib/liza/meta/part_extension.rb +0 -16
  416. data/lib/liza/test_parts/test_tree_part.rb +0 -92
  417. data/lib/net_system/dev/net_command.rb +0 -22
  418. data/lib/net_system/net/net_box.rb +0 -13
  419. data/lib/web_system/dev/request_command.rb +0 -129
  420. data/lib/web_system/dev/web_command.rb +0 -9
  421. data/lib/web_system/web/panels/rack_panel.rb +0 -42
  422. data/lib/web_system/web/panels/request_panel.rb +0 -70
  423. data/lib/web_system/web/panels/request_panel_test.rb +0 -33
  424. data/lib/web_system/web/web_box.rb +0 -18
  425. /data/lib/dev_system/{dev/panels → sub/bench}/bench_panel.rb +0 -0
  426. /data/lib/dev_system/{dev/controllers → sub/log}/log.rb +0 -0
  427. /data/lib/dev_system/{dev/controllers/shell → sub/shell/shells}/bin_shell.rb +0 -0
  428. /data/lib/liza/{test_parts → safety_parts}/test_assertions_part.rb +0 -0
  429. /data/lib/liza/{test_parts → safety_parts}/test_dsl_part.rb +0 -0
  430. /data/lib/net_system/{net/controllers → sub/client}/client.rb +0 -0
  431. /data/lib/net_system/{net/panels → sub/client}/client_panel.rb +0 -0
  432. /data/lib/net_system/{net/controllers → sub/database}/database.rb +0 -0
  433. /data/lib/net_system/{net/panels → sub/database}/database_panel.rb +0 -0
  434. /data/lib/net_system/{net/controllers/database → sub/database/databases}/redis_db.rb +0 -0
  435. /data/lib/net_system/{net/controllers/database → sub/database/databases}/sqlite_db.rb +0 -0
  436. /data/lib/net_system/{net/controllers → sub/record}/record.rb +0 -0
  437. /data/lib/web_system/{web/controllers → sub/rack}/rack.rb +0 -0
  438. /data/lib/web_system/{web/controllers → sub/request}/request.rb +0 -0
  439. /data/lib/web_system/{web/controllers/request → sub/request/requests}/client_error_request.rb +0 -0
  440. /data/lib/web_system/{web/controllers/request → sub/request/requests}/not_found_request.rb +0 -0
  441. /data/lib/web_system/{web/controllers/request → sub/request/requests}/server_error_request.rb +0 -0
@@ -0,0 +1,93 @@
1
+ class Liza::ControllerSubsystemPart < Liza::Part
2
+ insertion do
3
+
4
+ # subsystem
5
+
6
+ def self.subsystem
7
+ get :subsystem
8
+ end
9
+
10
+ def self.subsystem?
11
+ get(:subsystem) == self
12
+ end
13
+
14
+ def self.subsystem! box_klass, panel
15
+ # FIRST, subsystem settings
16
+ set :subsystem, self
17
+ set :box, box_klass
18
+ set :panel, panel
19
+
20
+ # LAST, panel settings
21
+ panel.settings.each do |k, v|
22
+ set k, v
23
+ end
24
+ end
25
+
26
+ # box and panel
27
+
28
+ def self.box
29
+ get :box
30
+ end
31
+
32
+ def self.panel
33
+ get :panel
34
+ end
35
+
36
+ def box
37
+ self.class.box
38
+ end
39
+
40
+ def panel
41
+ self.class.panel
42
+ end
43
+
44
+ # division
45
+
46
+ def self.division
47
+ get :division
48
+ end
49
+
50
+ def self.division?
51
+ get(:division) == self
52
+ end
53
+
54
+ def self.division!
55
+ set :division, self
56
+
57
+ camel = last_namespace
58
+ singular = camel.snakecase.to_sym
59
+ plural = "#{camel}s".snakecase.to_sym
60
+ fetch(:singular) { singular }
61
+ fetch(:plural) { plural }
62
+ end
63
+
64
+ # grammar
65
+
66
+ def self.singular
67
+ case
68
+ when subsystem? then get :singular
69
+ when division? then :"#{token}_#{subsystem.singular}"
70
+ else :"#{token}_#{division.singular}"
71
+ end
72
+ end
73
+
74
+ def self.plural
75
+ case
76
+ when subsystem? then get :plural
77
+ when division? then :"#{token}_#{subsystem.plural}"
78
+ else :"#{token}_#{division.plural}"
79
+ end
80
+ end
81
+
82
+ def self.token
83
+ if subsystem?
84
+ nil
85
+ elsif division?
86
+ last_namespace.gsub(/#{subsystem.last_namespace}$/, '').snakecase.to_sym
87
+ else
88
+ last_namespace.gsub(/#{division.last_namespace}$/, '').snakecase.to_sym
89
+ end
90
+ end
91
+
92
+ end
93
+ end
@@ -0,0 +1,129 @@
1
+ class Liza::PanelRescuerPart < Liza::Part
2
+ insertion do
3
+
4
+ #
5
+
6
+ def rescue_from(*args, with: nil, &block)
7
+ rescuer = Rescuer.new
8
+
9
+ raise ArgumentError, "either with: or block is required, but not both" if with && block
10
+
11
+ case args.count
12
+ when 1
13
+
14
+ e_class = args[0]
15
+ e_class = _rescue_from_parse_symbol(e_class) if Symbol === e_class
16
+
17
+ when 2
18
+
19
+ e_class = args[0]
20
+ e_class = _rescue_from_parse_symbols(args) if Symbol === e_class
21
+
22
+ else
23
+
24
+ raise ArgumentError, "wrong number of arguments (given #{args.count}, expected 1..2)"
25
+
26
+ end
27
+
28
+ unless e_class
29
+ msg = "args #{args} parsed to #{e_class} (expected a descendant of Exception)"
30
+ raise ArgumentError, msg
31
+ end
32
+
33
+ e_class_is_exception = e_class.ancestors.include? Exception
34
+ unless e_class_is_exception
35
+ msg = "args #{args} parsed to #{e_class} (expected a descendant of Exception)"
36
+ raise ArgumentError, msg
37
+ end
38
+
39
+ rescuer[:exception_class] = e_class
40
+ rescuer[:with] = with
41
+ rescuer[:block] = block
42
+
43
+ if with.nil? && block.nil?
44
+ puts "rescue_from #{e_class} with: or block: is required".red
45
+ raise ArgumentError, "with: or block: is required", caller
46
+ end
47
+
48
+ rescuers.push(rescuer)
49
+ end
50
+
51
+ def _rescue_from_parse_symbol(arg)
52
+ return Liza::Error if arg == :error
53
+
54
+ Object.const_get(arg.to_s.camelcase)
55
+ rescue NameError => e
56
+ msg = "rescue_from parsed to #{arg.to_s.camelcase} which does not exist"
57
+ puts msg.red
58
+ raise e, msg, caller
59
+ end
60
+
61
+ def _rescue_from_parse_symbols(args)
62
+ namespace = Liza.const(args[0])
63
+ begin
64
+ namespace.const_get("#{args[1].to_s.camelcase}Error")
65
+ rescue NameError => e
66
+ msg = "rescue_from parsed to #{args[0].to_s.camelcase}::#{args[1].to_s.camelcase}Error which does not exist"
67
+ puts msg.red
68
+ raise e, msg, caller
69
+ end
70
+ end
71
+
72
+ #
73
+
74
+ def rescuers
75
+ @rescuers ||= []
76
+ end
77
+
78
+ #
79
+
80
+ def rescue_from_panel(exception, with: )
81
+ rescuer = _rescue_from_panel_find exception
82
+ raise exception.class, exception.message, caller[1..-1] unless rescuer
83
+
84
+ ret = nil
85
+
86
+ log :lower, "rescuer = #{rescuer.inspect}"
87
+ case with
88
+ when Array
89
+ with.push(rescuer)
90
+ rescuer[:args] = with
91
+ ret = rescuer.call
92
+ when Hash
93
+ with[:rescuer] = rescuer
94
+ rescuer[:env] = with
95
+ ret = rescuer.call
96
+ else
97
+ raise ArgumentError, "wrong argument type #{with.class} (expected Array or Hash)"
98
+ end
99
+
100
+ ret
101
+ end
102
+
103
+ def _rescue_from_panel_find(exception)
104
+ rescuer = rescuers.reverse.find { exception.class.ancestors.include? _1[:exception_class] }
105
+ log :lower, "rescuer = #{rescuer.inspect}"
106
+ return nil unless rescuer
107
+ rescuer = rescuer.dup
108
+ rescuer[:exception] = exception
109
+ rescuer
110
+ end
111
+
112
+ #
113
+
114
+ class Rescuer < Hash
115
+ def call
116
+ if self[:block]
117
+ self[:block].call self
118
+ elsif self[:env]
119
+ self[:with].call self[:env]
120
+ elsif self[:args]
121
+ self[:with].call self[:args]
122
+ else
123
+ raise "not expected"
124
+ end
125
+ end
126
+ end
127
+
128
+ end
129
+ end
@@ -0,0 +1,24 @@
1
+ class Liza::Box < Liza::Unit
2
+
3
+ def self.panels
4
+ fetch(:panels) { {} }
5
+ end
6
+
7
+ def self.[] symbol
8
+ panels[symbol].started
9
+ end
10
+
11
+ def self.configure name, &block
12
+ raise ArgumentError, "block required" unless block_given?
13
+ raise ArgumentError, "Invalid panel: #{name}. Valid panels are: #{system.subs}" unless system.subs.include? name
14
+
15
+ panel = panels[name] ||= Liza.const("#{name}_panel").new name
16
+ panel.push block
17
+ end
18
+
19
+ # color
20
+
21
+ def self.color
22
+ system.color
23
+ end
24
+ end
@@ -0,0 +1,20 @@
1
+ class Liza::BoxTest < Liza::UnitTest
2
+ test :subject_class do
3
+ assert subject_class == Liza::Box
4
+ end
5
+
6
+ test_methods_defined do
7
+ on_self :[], :color, :configure, :panels, :puts
8
+ on_instance
9
+ end
10
+
11
+ def assert_sub name, controller_class, panel_class, kaller: caller
12
+ assert_equality subject_class[name].class, panel_class, kaller: kaller
13
+ assert_equality panel_class.controller, controller_class, kaller: kaller
14
+ end
15
+
16
+ test :settings do
17
+ assert_equality subject_class.log_level, 0
18
+ end
19
+
20
+ end
@@ -1,6 +1,11 @@
1
- class Liza::PartTest < Liza::Test
1
+ class Liza::PartTest < Liza::UnitTest
2
2
  test :subject_class do
3
3
  assert subject_class == Liza::Part
4
4
  end
5
5
 
6
+ test_methods_defined do
7
+ on_self :extension, :insertion
8
+ on_instance
9
+ end
10
+
6
11
  end
@@ -4,15 +4,58 @@ class Liza::System < Liza::Unit
4
4
  const_get name.to_s.camelize
5
5
  end
6
6
 
7
- def self.insertion key, &block
8
- if block_given?
9
- registrar[:"insertion_#{key}"] = block
7
+ # Ignore this for now.
8
+ # This feature has been commented out for simplicity purposes.
9
+ # It injects code into other classes just like Part does. Lizarb connects them
10
+
11
+ # def self.insertion key, &block
12
+ # if block_given?
13
+ # registrar[:"insertion_#{key}"] = block
14
+ # else
15
+ # registrar[:"insertion_#{key}"]
16
+ # end
17
+ # end
18
+
19
+ # def self.registrar
20
+ # @registrar ||= {}
21
+ # end
22
+
23
+ #
24
+
25
+ def self.subs
26
+ @subs ||= []
27
+ end
28
+
29
+ def self.subsystems
30
+ @subsystems ||= subs.map { const _1 }
31
+ end
32
+
33
+ def self.sub name
34
+ subs << name
35
+ end
36
+
37
+ def self.token
38
+ @token ||= name.gsub(/System$/, '').snakecase.to_sym
39
+ end
40
+
41
+ def self.box
42
+ @box ||= self.const_get "#{token}_box".camelize
43
+ end
44
+
45
+ # SYSTEM
46
+
47
+ def self.system
48
+ self
49
+ end
50
+
51
+ # COLOR
52
+
53
+ def self.color color = nil
54
+ if color
55
+ @color = color
10
56
  else
11
- registrar[:"insertion_#{key}"]
57
+ @color
12
58
  end
13
59
  end
14
60
 
15
- def self.registrar
16
- @registrar ||= {}
17
- end
18
61
  end
@@ -3,9 +3,13 @@ class Liza::SystemTest < Liza::UnitTest
3
3
  assert subject_class == Liza::System
4
4
  end
5
5
 
6
+ test_methods_defined do
7
+ on_self :box, :color, :const, :sub, :subs, :subsystems, :token
8
+ on_instance
9
+ end
10
+
6
11
  test :settings do
7
- assert subject_class.log_level == :normal
8
- assert subject_class.log_color == :white
12
+ assert_equality subject_class.log_level, 0
9
13
  end
10
14
 
11
15
  end
@@ -0,0 +1,39 @@
1
+ class Liza::AppTest < Liza::ObjectTest
2
+
3
+ test :subject_class do
4
+ assert_equality subject_class, App
5
+ end
6
+
7
+ test :cwd, :root do
8
+ # returns a Pathname
9
+ assert_equality App.root.class, Pathname
10
+
11
+ # returns a new object each time
12
+ refute_equality App.cwd.object_id, App.cwd.object_id
13
+
14
+ # returns the same object each time
15
+ assert_equality App.root.object_id, App.root.object_id
16
+
17
+ # the join method creates a new object
18
+ refute_equality App.root.object_id, App.root.join("lib").object_id
19
+
20
+ # matches the current working directory
21
+ assert_equality App.root, App.cwd
22
+ Dir.chdir "lib" do
23
+ refute_equality App.root, App.cwd
24
+ end
25
+ assert_equality App.root, App.cwd
26
+ end
27
+
28
+ test :path, :relative_path do
29
+ # returns a Pathname
30
+ assert_equality App.path.class, Pathname
31
+ assert_equality App.relative_path.class, Pathname
32
+ assert_equality App.relative_path, Pathname("app")
33
+
34
+ # App.path starts with App.root
35
+ assert App.path.to_s.start_with?(App.root.to_s)
36
+ assert App.path.to_s.end_with?("app")
37
+ end
38
+
39
+ end
@@ -0,0 +1,20 @@
1
+ class Liza::ClassTest < Liza::ObjectTest
2
+
3
+ test :subject_class do
4
+ assert_equality subject_class, Class
5
+ end
6
+
7
+ test :ancestors_until do
8
+ assert_equality [Object], Object.ancestors_until(BasicObject)
9
+ assert_equality [Integer], Integer.ancestors_until(Object)
10
+ assert_equality [Symbol], Symbol.ancestors_until(Object)
11
+ assert_equality [String], String.ancestors_until(Object)
12
+ assert_equality [Array], Array.ancestors_until(Object)
13
+ assert_equality [Hash], Hash.ancestors_until(Object)
14
+
15
+ assert_equality [IrbCommand, Command], IrbCommand.ancestors_until(Command)
16
+ assert_equality [PryCommand, Command], PryCommand.ancestors_until(Command)
17
+ assert_equality [TestCommand, Command], TestCommand.ancestors_until(Command)
18
+ end
19
+
20
+ end
@@ -1,4 +1,4 @@
1
- class Liza::ModuleTest < Liza::RubyTest
1
+ class Liza::ModuleTest < Liza::ObjectTest
2
2
 
3
3
  test :subject_class do
4
4
  assert subject_class == Module
@@ -8,14 +8,14 @@ class Liza::ModuleTest < Liza::RubyTest
8
8
  assert Object.source_location == []
9
9
 
10
10
  assert Liza::Command.source_location[1] == 1
11
- assert TerminalCommand.source_location[1] == 1
11
+ assert IrbCommand.source_location[1] == 1
12
12
  end
13
13
 
14
14
  test :source_location_radical do
15
15
  assert Object.source_location_radical == nil
16
16
 
17
- assert Liza::Command.source_location_radical.end_with? "/lib/dev_system/dev/controllers/command"
18
- assert TerminalCommand.source_location_radical.end_with? "/lib/dev_system/dev/controllers/command/terminal_command"
17
+ assert Liza::Command.source_location_radical.end_with? "/lib/dev_system/sub/command/command"
18
+ assert IrbCommand.source_location_radical.end_with? "/lib/dev_system/sub/command/commands/irb_command"
19
19
  end
20
20
 
21
21
  end
@@ -1,4 +1,4 @@
1
- class Liza::RubyTest < Liza::Test
1
+ class Liza::ObjectTest < Liza::Test
2
2
 
3
3
  def self.subject_class
4
4
  @subject_class ||= Object.const_get last_namespace[0..-5]
@@ -1,4 +1,4 @@
1
- class Liza::StringTest < Liza::RubyTest
1
+ class Liza::StringTest < Liza::ObjectTest
2
2
 
3
3
  test :subject_class do
4
4
  assert subject_class == String
@@ -38,6 +38,8 @@ class Liza::StringTest < Liza::RubyTest
38
38
  assert "ab" == "Ab".snakecase
39
39
  assert "ab_c" == "AbC".snakecase
40
40
  assert "ab_cd" == "AbCd".snakecase
41
+ assert "ab" == "ab".snakecase
42
+ assert "cd" == "cd".snakecase
41
43
  end
42
44
 
43
45
  test :rjust_blanks do
@@ -7,4 +7,13 @@ class Liza::Test < Liza::Unit
7
7
  part :test_subject
8
8
  part :test_tree
9
9
 
10
+ def self.subsystem
11
+ subject_class.subsystem
12
+ end
13
+
14
+ # color
15
+
16
+ def self.color
17
+ subject_class.color
18
+ end
10
19
  end
@@ -1,9 +1,40 @@
1
1
 
2
- class Liza::TestTest < Liza::Test
2
+ class Liza::TestTest < Liza::UnitTest
3
3
 
4
4
  test :settings do
5
- assert subject_class.log_level == :normal
6
- assert subject_class.log_color == :white
5
+ assert_equality subject_class.log_level, 0
6
+ end
7
+
8
+ test_methods_defined do
9
+ on_self \
10
+ :after, :after_stack,
11
+ :before, :before_stack,
12
+ :call, :color,
13
+ :group,
14
+ :log_test_building, :log_test_building?,
15
+ :subject_class,
16
+ :subsystem,
17
+ :test, :test_node, :test_tree,
18
+ :totals
19
+ on_instance \
20
+ :assert, :assert!,
21
+ :assert_equality, :assert_equality!,
22
+ :assert_raises, :assert_raises!,
23
+ :assertions, :assertions=,
24
+ :call,
25
+ :critical,
26
+ :division,
27
+ :group,
28
+ :log_test_assertion, :log_test_assertion?,
29
+ :log_test_assertion_message, :log_test_assertion_message?,
30
+ :log_test_assertion_result, :log_test_building?,
31
+ :log_test_call, :log_test_call_block?, :log_test_call_rescue,
32
+ :refute, :refute!,
33
+ :refute_equality, :refute_equality!,
34
+ :refute_raises, :refute_raises!,
35
+ :subject, :subject_class,
36
+ :test_words,
37
+ :todo
7
38
  end
8
39
 
9
40
  group :basics do
@@ -77,7 +108,7 @@ class Liza::TestTest < Liza::Test
77
108
  if Shell.jruby?
78
109
  todo "jruby!"
79
110
  else
80
- assert_equality instance_variables, [:@test_words, :@before_stack, :@after_stack, :@test_block]
111
+ assert_equality instance_variables, [:@test_words, :@before_stack, :@after_stack, :@test_block, :@settings]
81
112
  end
82
113
  end
83
114
 
@@ -88,13 +119,15 @@ class Liza::TestTest < Liza::Test
88
119
 
89
120
  group :tree do
90
121
  test :test_tree do
91
- assert_equality self.class.test_tree.class, Liza::TestTreePart::Extension
122
+ assert_equality self.class.test_tree.class, Liza::TestTreePart
92
123
  assert_equality self.class.test_tree, self.class.test_tree.parent
93
124
 
94
- assert_equality 2, self.class.test_tree.tests.count
125
+ assert_equality 4, self.class.test_tree.tests.count
95
126
  assert_equality 5, self.class.test_tree.children.count
96
127
 
97
- assert_equality self.class.test_tree.tests.map(&:first).flatten, [:settings, :instance_groups]
128
+ a = self.class.test_tree.tests.map(&:first).flatten
129
+ b = [:settings, :subject_class, :methods_defined, :subject_class, :instance_methods_defined, :instance_groups]
130
+ assert_equality a, b
98
131
  end
99
132
  end
100
133
 
@@ -16,7 +16,7 @@ class Liza::TestAssertionsAdvancedPart < Liza::Part
16
16
  log_test_assertion __method__, kaller if _groups.empty?
17
17
 
18
18
  if log_test_assertion_message?
19
- msg ||= "#{__method__} #{a}, #{b} (== equality)"
19
+ msg ||= "#{__method__} #{a.inspect}, #{b.inspect} (== equality)"
20
20
  log_test_assertion_message ret, msg
21
21
  end
22
22
 
@@ -7,6 +7,26 @@ class Liza::TestLogPart < Liza::Part
7
7
  LOG_ASSERTION_MESSAGE = true
8
8
  LOG_CALL_BLOCK = true
9
9
 
10
+ def self.system
11
+ subject_class.system
12
+ rescue
13
+ Liza::System
14
+ end
15
+
16
+ def system
17
+ self.class.system
18
+ end
19
+
20
+ def self.division
21
+ subject_class.division
22
+ rescue
23
+ Liza::Controller
24
+ end
25
+
26
+ def division
27
+ self.class.division
28
+ end
29
+
10
30
  def self.log_test_building?
11
31
  LOG_BUILDING
12
32
  end
@@ -17,6 +17,16 @@ class Liza::TestSubjectPart < Liza::Part
17
17
  def subject
18
18
  @subject ||= subject_class.new
19
19
  end
20
+
21
+ def self.system
22
+ subject_class.system
23
+ rescue
24
+ System
25
+ end
26
+
27
+ def system
28
+ self.class.system
29
+ end
20
30
  end
21
31
 
22
32
  end