lizarb 1.0.4 → 1.0.5

Sign up to get free protection for your applications and to get access to all the features.
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,26 @@
1
+ class DeskSystem::GlimmerCommand < DevSystem::SimpleCommand
2
+
3
+ # liza glimmer
4
+
5
+ def call_default
6
+ call_examples
7
+ end
8
+
9
+ # liza glimmer:examples
10
+
11
+ def call_examples
12
+ log stick :b, system.color, "Glimmer is a free Ruby Desktop Development Cross-Platform Native GUI Library!"
13
+ log [
14
+ (stick :b, "Learn more at "),
15
+ (stick :b, system.color, "https://github.com/AndyObtiva/glimmer-dsl-libui")
16
+ ]
17
+
18
+ puts
19
+ log "args = #{env[:args].inspect}"
20
+ # require "glimmer-dsl-libui"
21
+ require "examples/meta_example"
22
+
23
+ log "done at #{Time.now}"
24
+ end
25
+
26
+ end
@@ -0,0 +1,10 @@
1
+ class DeskSystem::GlimmerCommandTest < DevSystem::SimpleCommandTest
2
+
3
+ #
4
+
5
+ test :subject_class, :subject do
6
+ assert_equality DeskSystem::GlimmerCommand, subject_class
7
+ assert_equality DeskSystem::GlimmerCommand, subject.class
8
+ end
9
+
10
+ end
@@ -0,0 +1,5 @@
1
+ class DeskSystem::DeskBox < Liza::Box
2
+
3
+ #
4
+
5
+ end
@@ -0,0 +1,8 @@
1
+ class DeskSystem::DeskBoxTest < Liza::BoxTest
2
+
3
+ test :subject_class, :subject do
4
+ assert_equality DeskSystem::DeskBox, subject_class
5
+ assert_equality DeskSystem::DeskBox, subject.class
6
+ end
7
+
8
+ end
@@ -0,0 +1,8 @@
1
+ class DeskSystem < Liza::System
2
+ class Error < Liza::Error; end
3
+
4
+ #
5
+
6
+ color :turquoise
7
+
8
+ end
@@ -3,11 +3,13 @@ class DevSystem::TestCommand < DevSystem::Command
3
3
  def self.call args
4
4
  log "args = #{args.inspect}"
5
5
 
6
- App.load_all
7
-
8
6
  now = Time.now
9
7
  test_classes = Liza::Test.descendants
10
8
 
9
+ if args.any?
10
+ test_classes = test_classes.select { |tc| args.any? { tc.source_location_radical.snakecase.include? _1.snakecase } }
11
+ end
12
+
11
13
  _call_silence_base_units
12
14
 
13
15
  if Lizarb::IS_APP_DIR
@@ -63,7 +65,12 @@ class DevSystem::TestCommand < DevSystem::Command
63
65
  end
64
66
  end
65
67
 
68
+
66
69
  def self._call_counting test_classes
70
+ puts
71
+ Liza.log ""
72
+ Liza.log stick :b, " TEST TOTALS ".center(140, "-")
73
+ Liza.log ""
67
74
  puts
68
75
  totals = Hash.new { 0 }
69
76
  last_namespace = nil
@@ -75,11 +82,32 @@ class DevSystem::TestCommand < DevSystem::Command
75
82
  test_class.totals.each do |k, v|
76
83
  totals[k] += v.size
77
84
  end
78
- Liza.log " #{"#{test_class}.totals".ljust 60} #{test_class.totals.map { |k, v| [k, v.size] }.to_h}"
85
+ size = 60 - test_class.subject_class.to_s.size
86
+ Liza.log "#{_color_unit test_class.subject_class}#{".totals".ljust size} #{test_class.totals.map { |k, v| [k, v.size] }.to_h}"
79
87
  end
80
88
  puts
81
- Liza.log " #{"Total".ljust 60} #{totals}"
89
+ Liza.log "#{"Total".ljust 60} #{totals}"
82
90
  puts
83
91
  end
84
92
 
93
+ def self._color_unit klass
94
+ return klass.to_s unless klass < Liza::Unit
95
+ return klass.to_s if klass.superclass == Liza::Unit
96
+
97
+ ret = ""
98
+ namespace, _sep, classname = klass.name.rpartition('::')
99
+ unless namespace.empty?
100
+ system_color = klass.system.color
101
+ ret << stick(namespace, system_color, :b).to_s
102
+ ret << "::"
103
+ end
104
+
105
+ klass = klass.division if klass.is_a? Liza::Controller
106
+ unit_color = nil
107
+ unit_color = klass.system.color
108
+
109
+ ret << stick(classname, unit_color).to_s
110
+ ret
111
+ end
112
+
85
113
  end
@@ -5,8 +5,7 @@ class DevSystem::TestCommandTest < DevSystem::CommandTest
5
5
  end
6
6
 
7
7
  test :settings do
8
- assert subject_class.log_level == :normal
9
- assert subject_class.log_color == :green
8
+ assert_equality subject_class.log_level, 0
10
9
  end
11
10
 
12
11
  end
@@ -0,0 +1,79 @@
1
+ class DevSystem::DevBox < Liza::Box
2
+
3
+ # Preconfigure your bench panel
4
+
5
+ configure :bench do
6
+ #
7
+ end
8
+
9
+ # Preconfigure your command panel
10
+
11
+ configure :command do
12
+ #
13
+ rescue_from CommandPanel::NotFoundError, with: NotFoundCommand
14
+ end
15
+
16
+ def self.command(...)
17
+ self[:command].call(...)
18
+ end
19
+
20
+ def self.input
21
+ self[:command].input
22
+ end
23
+
24
+ def self.pick_one(...)
25
+ self[:command].pick_one(...)
26
+ end
27
+
28
+ def self.pick_many(...)
29
+ self[:command].pick_many(...)
30
+ end
31
+
32
+ # Preconfigure your generator panel
33
+
34
+ configure :generator do
35
+ #
36
+ rescue_from GeneratorPanel::NotFoundError, with: NotFoundGenerator
37
+ end
38
+
39
+ # Preconfigure your log panel
40
+
41
+ configure :log do
42
+ #
43
+ end
44
+
45
+ # Preconfigure your shell panel
46
+
47
+ configure :shell do
48
+ #
49
+ end
50
+
51
+ def self.formatters
52
+ self[:shell].formatters
53
+ end
54
+
55
+ def self.converters
56
+ self[:shell].converters
57
+ end
58
+
59
+ def self.converters_to
60
+ self[:shell].converters_to
61
+ end
62
+
63
+ def self.format(...)
64
+ self[:shell].format(...)
65
+ end
66
+
67
+ def self.format?(...)
68
+ self[:shell].format?(...)
69
+ end
70
+
71
+ def self.convert(...)
72
+ self[:shell].convert(...)
73
+ end
74
+
75
+ def self.convert?(...)
76
+ self[:shell].convert?(...)
77
+ end
78
+
79
+ end
@@ -0,0 +1,33 @@
1
+ class DevSystem::DevBoxTest < Liza::BoxTest
2
+
3
+ test :subject_class do
4
+ assert subject_class == DevSystem::DevBox
5
+ end
6
+
7
+ test_methods_defined do
8
+ on_self \
9
+ :command,
10
+ :convert, :convert?, :converters, :converters_to,
11
+ :format, :format?, :formatters,
12
+ :input,
13
+ :pick_many, :pick_one
14
+ on_instance
15
+ end
16
+
17
+ test :settings do
18
+ assert_equality subject_class.log_level, 0
19
+ end
20
+
21
+ test :subsystems do
22
+ a = subject_class.panels.keys
23
+ b = [:bench, :command, :generator, :log, :shell]
24
+ assert_equality a, b
25
+
26
+ assert_sub :bench, DevSystem::Bench, DevSystem::BenchPanel
27
+ assert_sub :command, DevSystem::Command, DevSystem::CommandPanel
28
+ assert_sub :generator, DevSystem::Generator, DevSystem::GeneratorPanel
29
+ assert_sub :log, DevSystem::Log, DevSystem::LogPanel
30
+ assert_sub :shell, DevSystem::Shell, DevSystem::ShellPanel
31
+ end
32
+
33
+ end
@@ -0,0 +1,87 @@
1
+ class DevSystem::EnvGenerator < DevSystem::Generator
2
+
3
+ def self.call args
4
+ log "args = #{args.inspect}"
5
+
6
+ new.call args
7
+ end
8
+
9
+ def call args
10
+ log "args = #{args.inspect}"
11
+
12
+ if app_env_exists?
13
+ log "env files already exist".red.blink
14
+ else
15
+ write_env_files
16
+ end
17
+
18
+ puts
19
+ log "done"
20
+ end
21
+
22
+ private
23
+
24
+ def app_env_exists?
25
+ FileShell.exist? "app.env"
26
+ end
27
+
28
+ def write_env_files
29
+ # app
30
+ @env_name = nil
31
+ content = render :env, format: :env
32
+ puts "-" * 80
33
+ puts content.green
34
+ TextShell.write "app.env", content
35
+
36
+ # app.code
37
+ @env_name = :code
38
+ content = render :env, format: :env
39
+ puts "-" * 80
40
+ puts content.green
41
+ TextShell.write "app.code.env", content
42
+
43
+ # app.demo
44
+ @env_name = :demo
45
+ content = render :env, format: :env
46
+ puts "-" * 80
47
+ puts content.green
48
+ TextShell.write "app.demo.env", content
49
+ end
50
+
51
+ end
52
+
53
+ __END__
54
+
55
+ # view env.env.erb
56
+ #
57
+ <%= render :"#{@env_name || :blank}", format: :env -%>
58
+ #
59
+
60
+ # app variables
61
+
62
+
63
+
64
+ <% App.systems.keys.each do |k| -%>
65
+ # <%= k %> variables
66
+
67
+
68
+
69
+ <% end -%>
70
+
71
+ # view code.env.erb
72
+ # ENV VARIABLES FOR MODE=code (default)
73
+ #
74
+ # MODE=code lizarb commands
75
+ # lizarb commands
76
+
77
+ # view demo.env.erb
78
+ # ENV VARIABLES FOR MODE=demo
79
+ #
80
+ # MODE=demo lizarb commands
81
+
82
+ # view blank.env.erb
83
+ # ENV VARIABLES FOR ALL MODES
84
+ #
85
+ # MODE=code lizarb commands
86
+ # MODE=demo lizarb commands
87
+ # lizarb commands
@@ -0,0 +1,11 @@
1
+ class DevSystem::EnvGeneratorTest < DevSystem::GeneratorTest
2
+
3
+ test :subject_class do
4
+ assert subject_class == DevSystem::EnvGenerator
5
+ end
6
+
7
+ test :settings do
8
+ assert_equality subject_class.log_level, 0
9
+ end
10
+
11
+ end
@@ -0,0 +1,47 @@
1
+ class DevSystem::GemfileGenerator < DevSystem::SimpleGenerator
2
+
3
+ # liza g gemfile
4
+
5
+ def call_default
6
+ @gemspec_name = get_gemspec_name
7
+
8
+ create_file "Gemfile", :gemfile, :rb
9
+ end
10
+
11
+ def get_gemspec_name
12
+ ls = Dir["*.gemspec"]
13
+ ls.first.split(".").first if ls.any?
14
+ end
15
+
16
+ end
17
+
18
+ __END__
19
+
20
+ # view gemfile.rb.erb
21
+
22
+ # frozen_string_literal: true
23
+
24
+ source "https://rubygems.org"
25
+ <% if @gemspec_name -%>
26
+
27
+ # Specify your gem's dependencies in <%= @gemspec_name %>.gemspec
28
+ # gemspec path: "../path/to/<%= @gemspec_name %>"
29
+ gemspec :<%= @gemspec_name %>
30
+ <% end -%>
31
+
32
+ group :default do
33
+ gem "lizarb", "~> <%= Lizarb::VERSION %>"
34
+ # gem "lizarb", github: "lizarb/lizarb"
35
+ # gem "lizarb", path: "../lizarb"
36
+ end
37
+
38
+ group :dev do
39
+ # gems you only want to load if DevSystem is loaded
40
+
41
+ # Shell
42
+ # gem "htmlbeautifier", "~> 1.4"
43
+ # gem "commonmarker", "~> 0.23.9"
44
+ # gem "haml", "~> 6.1"
45
+ # gem "sassc", "~> 2.4"
46
+ # gem "coffee-script", "~> 2.4"
47
+ end
@@ -0,0 +1,11 @@
1
+ class DevSystem::GemfileGeneratorTest < DevSystem::GeneratorTest
2
+
3
+ test :subject_class do
4
+ assert subject_class == DevSystem::GemfileGenerator
5
+ end
6
+
7
+ test :settings do
8
+ assert_equality subject_class.log_level, 0
9
+ end
10
+
11
+ end
@@ -0,0 +1,70 @@
1
+ class DevSystem::SystemGenerator < DevSystem::SimpleGenerator
2
+
3
+ # liza g system name color=coral
4
+
5
+ def call_default
6
+ @name = command.simple_arg_ask_snakecase 0, "What is the name of the system you want to generate?"
7
+ log "@name = #{@name}"
8
+
9
+ @color = command.simple_color :color, string: "#{@name.camelize}System"
10
+ log "@color = #{@color}"
11
+
12
+ append_system_to_app
13
+ create_system
14
+ create_box
15
+ end
16
+
17
+ private
18
+
19
+ def append_system_to_app
20
+ file = TextFileShell.new App.filename
21
+
22
+ lines = LineShell.extract_wall_of file.old_lines, " system :"
23
+ lines << " system :#{@name}\n"
24
+ file.new_lines = LineShell.replace_wall_of file.old_lines, " system :", lines
25
+
26
+ add_change file
27
+ end
28
+
29
+ def create_system
30
+ unit = UnitHelper.new
31
+ classes = ["#{@name.camelize}System", "Liza::System"]
32
+ path = App.root.join("lib/#{@name.snakecase}_system.rb")
33
+
34
+ create_unit unit, classes, path, :system
35
+ end
36
+
37
+ def create_box
38
+ unit, test = UnitHelper.new, UnitHelper.new
39
+ unit_classes = ["#{@name.camelize}System::#{@name.camelize}Box", "Liza::Box"]
40
+ test_classes = ["#{@name.camelize}System::#{@name.camelize}BoxTest", "Liza::BoxTest"]
41
+ unit_path = App.root.join("lib/#{@name.snakecase}_system/#{@name.snakecase}_box.rb")
42
+ test_path = App.root.join("lib/#{@name.snakecase}_system/#{@name.snakecase}_box_test.rb")
43
+
44
+ @class_name = unit_classes[0]
45
+ test.section :box_test_section_1, caption: ""
46
+
47
+ create_unit unit, unit_classes, unit_path, :unit
48
+ create_unit test, test_classes, test_path, :unit
49
+ end
50
+
51
+ end
52
+
53
+ __END__
54
+
55
+ # view system.rb.erb
56
+ class <%= @class_names[0] %> < <%= @class_names[1] %>
57
+ class Error < Liza::Error; end
58
+
59
+ #
60
+
61
+ color :<%= @color %>
62
+
63
+ end
64
+
65
+ # view box_test_section_1.rb.erb
66
+
67
+ test :subject_class, :subject do
68
+ assert_equality <%= @class_name %>, subject_class
69
+ assert_equality <%= @class_name %>, subject.class
70
+ end
@@ -0,0 +1,11 @@
1
+ class DevSystem::SystemGeneratorTest < DevSystem::SimpleGeneratorTest
2
+
3
+ test :subject_class do
4
+ assert subject_class == DevSystem::SystemGenerator
5
+ end
6
+
7
+ test :settings do
8
+ assert_equality subject_class.log_level, 0
9
+ end
10
+
11
+ end
@@ -1,3 +1,7 @@
1
1
  class DevSystem::Bench < Liza::Controller
2
+
3
+ #
4
+
5
+ set :plural, :benches
2
6
 
3
7
  end
@@ -4,9 +4,13 @@ class DevSystem::BenchPanelTest < Liza::PanelTest
4
4
  assert subject_class == DevSystem::BenchPanel
5
5
  end
6
6
 
7
+ test_methods_defined do
8
+ on_self
9
+ on_instance
10
+ end
11
+
7
12
  test :settings do
8
- assert subject_class.log_level == :normal
9
- assert subject_class.log_color == :green
13
+ assert_equality subject_class.log_level, 0
10
14
  end
11
15
 
12
16
  end
@@ -0,0 +1,24 @@
1
+ class DevSystem::BenchTest < Liza::ControllerTest
2
+
3
+ test :subject_class do
4
+ assert subject_class == DevSystem::Bench
5
+ end
6
+
7
+ test_methods_defined do
8
+ on_self
9
+ on_instance
10
+ end
11
+
12
+ test :settings do
13
+ assert_equality subject_class.log_level, 0
14
+
15
+ assert_equality subject_class.token, nil
16
+ assert_equality subject_class.singular, :bench
17
+ assert_equality subject_class.plural, :benches
18
+
19
+ assert_equality subject_class.system, DevSystem
20
+ assert_equality subject_class.subsystem, DevSystem::Bench
21
+ assert_equality subject_class.division, DevSystem::Bench
22
+ end
23
+
24
+ end
@@ -8,7 +8,6 @@ class DevSystem::NotFoundBench < DevSystem::Bench
8
8
 
9
9
  # 2. FIND generators
10
10
 
11
- App.load_all
12
11
  benches = Liza::Bench.descendants
13
12
  benches -= ignored_benches
14
13
 
@@ -16,7 +15,7 @@ class DevSystem::NotFoundBench < DevSystem::Bench
16
15
 
17
16
  keys = benches.map { _1.last_namespace.snakecase[0..-7] }.uniq.sort
18
17
 
19
- log "Liza comes with #{keys.count} benches you can use."
18
+ log "This app has #{keys.count} benches you can use."
20
19
  log "Here they are:"
21
20
  puts
22
21
 
@@ -5,8 +5,7 @@ class DevSystem::NotFoundBenchTest < DevSystem::BenchTest
5
5
  end
6
6
 
7
7
  test :settings do
8
- assert subject_class.log_level == :normal
9
- assert subject_class.log_color == :green
8
+ assert_equality subject_class.log_level, 0
10
9
  end
11
10
 
12
11
  end
@@ -7,7 +7,7 @@ class DevSystem::BenchCommand < DevSystem::Command
7
7
 
8
8
  # 2. FIND bench
9
9
 
10
- return call_not_found args if args.none?
10
+ return NotFoundBench.call args if args.none?
11
11
 
12
12
  bench = args[0]
13
13
 
@@ -24,8 +24,4 @@ class DevSystem::BenchCommand < DevSystem::Command
24
24
  bench_klass.call args[1..-1]
25
25
  end
26
26
 
27
- def self.call_not_found args
28
- Liza::NotFoundBench.call args
29
- end
30
-
31
27
  end
@@ -5,8 +5,7 @@ class DevSystem::BenchCommandTest < DevSystem::CommandTest
5
5
  end
6
6
 
7
7
  test :settings do
8
- assert subject_class.log_level == :normal
9
- assert subject_class.log_color == :green
8
+ assert_equality subject_class.log_level, 0
10
9
  end
11
10
 
12
11
  end
@@ -0,0 +1,70 @@
1
+ class DevSystem::BenchGenerator < DevSystem::SimpleGenerator
2
+
3
+ # liza g bench name place=app +sorted
4
+
5
+ def call_default
6
+ @controller_class = Bench
7
+
8
+ name!
9
+ place!
10
+
11
+ @args = Array command.simple_args[1..-1]
12
+ ancestor = @controller_class
13
+
14
+ # THIS IS A HACK! WILL BE FIXED SOON!
15
+ if File.exist? "app/dev/benches/sorted_bench.rb"
16
+ @sorted = command.simple_boolean_yes :sorted, "Use SortedBench?"
17
+ log "@sorted = #{@sorted.inspect}"
18
+ ancestor = "SortedBench" if @sorted
19
+ end
20
+
21
+ create_controller @name, @controller_class, @place, @path, ancestor: ancestor do |unit, test|
22
+ unit.section :controller_section_1, caption: "liza bench #{ @name }"
23
+ test.section :controller_test_section_1
24
+ end
25
+ end
26
+
27
+ # liza g bench:examples
28
+
29
+ def call_examples
30
+ copy_examples Bench
31
+ end
32
+
33
+ end
34
+
35
+ __END__
36
+
37
+ # view controller_section_1.rb.erb
38
+
39
+ repetitions 1_000_000
40
+ # repetitions 10_000_000
41
+ # repetitions 100_000_000
42
+
43
+ setup do
44
+ log "repetitions: #{repetitions}"
45
+ end
46
+
47
+ #
48
+
49
+ <% if @args.any? -%>
50
+ <% @args.each do |arg| -%>
51
+ mark "<%= arg %>" do
52
+ a = 1.to_s.to_sym
53
+ end
54
+
55
+ <% end -%>
56
+ <% else -%>
57
+ mark "alternative 1" do
58
+ a = "1".to_sym
59
+ end
60
+
61
+ mark "alternative 2" do
62
+ a = :"1"
63
+ end
64
+ <% end -%>
65
+ # view controller_test_section_1.rb.erb
66
+
67
+ test :subject_class, :subject do
68
+ assert_equality <%= @class_name %>, subject_class
69
+ assert_equality <%= @class_name %>, subject.class
70
+ end
@@ -0,0 +1,10 @@
1
+ class DevSystem::BenchGeneratorTest < DevSystem::SimpleGeneratorTest
2
+
3
+ #
4
+
5
+ test :subject do
6
+ assert_equality DevSystem::BenchGenerator, subject_class
7
+ assert_equality DevSystem::BenchGenerator, subject.class
8
+ end
9
+
10
+ end