lizarb 1.0.3 → 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 (457) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +34 -7
  3. data/Gemfile.lock +179 -18
  4. data/README.md +53 -9
  5. data/Rakefile +38 -0
  6. data/app/dev/commands/color_command.rb +29 -0
  7. data/app/dev/commands/color_command_test.rb +10 -0
  8. data/app/dev/commands/stick_command.rb +102 -0
  9. data/app/dev/commands/stick_command_test.rb +19 -0
  10. data/app/dev_box.rb +54 -20
  11. data/app/happy_box.rb +4 -3
  12. data/app/net/databases/redis_db.rb +1 -1
  13. data/app/net/databases/redis_db_test.rb +5 -5
  14. data/app/net/databases/sqlite_db.rb +1 -1
  15. data/app/net/databases/sqlite_db_test.rb +5 -5
  16. data/app/net/records/app_record.rb +1 -1
  17. data/app/net/records/app_record_test.rb +1 -1
  18. data/app/net/records/post_record_test.rb +1 -1
  19. data/app/net/records/user_record_test.rb +1 -1
  20. data/app/net_box.rb +29 -6
  21. data/app/web/requests/app_request.rb +1 -1
  22. data/app/web/requests/app_request_test.rb +1 -1
  23. data/app/web/requests/foo_request.rb +26 -0
  24. data/app/web/requests/foo_request_test.rb +7 -0
  25. data/app/web_box.rb +17 -9
  26. data/app.rb +41 -10
  27. data/{exe/Gemfile → app_global.gemfile.rb} +2 -0
  28. data/app_global.gemfile.rb.lock +41 -0
  29. data/app_global.rb +5 -0
  30. data/{app → examples/bench/app}/dev/benches/loops_bench.rb +11 -3
  31. data/examples/bench/app/dev/benches/loops_bench_test.rb +11 -0
  32. data/examples/bench/app/dev/benches/objects_bench.rb +48 -0
  33. data/examples/bench/app/dev/benches/objects_bench_test.rb +11 -0
  34. data/examples/bench/app/dev/benches/sorted_bench.rb +74 -0
  35. data/examples/bench/app/dev/benches/sorted_bench_test.rb +11 -0
  36. data/examples/bench/app/dev/benches/variables_bench.rb +61 -0
  37. data/examples/bench/app/dev/benches/variables_bench_test.rb +11 -0
  38. data/examples/client/app/net/clients/news_client.rb +42 -0
  39. data/examples/client/app/net/clients/news_client_test.rb +24 -0
  40. data/{app → examples/command/app}/dev/commands/calculator_command.rb +2 -2
  41. data/{app → examples/command/app}/dev/commands/calculator_command_test.rb +1 -2
  42. data/{app → examples/command/app}/dev/commands/circle_command.rb +2 -2
  43. data/{app → examples/command/app}/dev/commands/circle_command_test.rb +1 -2
  44. data/{app → examples/command/app}/dev/commands/narrative_method_command.rb +8 -10
  45. data/{app → examples/command/app}/dev/commands/narrative_method_command_test.rb +2 -3
  46. data/{app → examples/command/app}/dev/commands/quadratic_command.rb +2 -2
  47. data/{app → examples/command/app}/dev/commands/quadratic_command_test.rb +1 -2
  48. data/examples/command/app/dev_box.rb +3 -0
  49. data/examples/log/app/dev/logs/logger_log.rb +8 -0
  50. data/examples/log/app/dev/logs/logger_log_test.rb +16 -0
  51. data/examples/new/app/dev_box.rb +67 -0
  52. data/examples/new/app.rb +41 -0
  53. data/examples/shell/app/dev/shells/bash_adapter_shell.rb +25 -0
  54. data/examples/shell/app/dev/shells/bash_adapter_shell_test.rb +23 -0
  55. data/examples/shell/app/dev/shells/business_logic_shell.rb +42 -0
  56. data/examples/shell/app/dev/shells/business_logic_shell_test.rb +39 -0
  57. data/examples/shell/app/dev/shells/gem_adapter_shell.rb +33 -0
  58. data/examples/shell/app/dev/shells/gem_adapter_shell_test.rb +23 -0
  59. data/exe/liza +6 -1
  60. data/exe/lizarb +9 -1
  61. data/lib/app.rb +74 -145
  62. data/lib/art_system/art_box.rb +5 -0
  63. data/lib/art_system/art_box_test.rb +8 -0
  64. data/lib/art_system.rb +8 -0
  65. data/lib/crypto_system/crypto_box.rb +5 -0
  66. data/lib/crypto_system/crypto_box_test.rb +8 -0
  67. data/lib/crypto_system.rb +8 -0
  68. data/lib/deep_system/deep_box.rb +5 -0
  69. data/lib/deep_system/deep_box_test.rb +8 -0
  70. data/lib/deep_system.rb +8 -0
  71. data/lib/desk_system/commands/glimmer_command.rb +26 -0
  72. data/lib/desk_system/commands/glimmer_command_test.rb +10 -0
  73. data/lib/desk_system/desk_box.rb +5 -0
  74. data/lib/desk_system/desk_box_test.rb +8 -0
  75. data/lib/desk_system.rb +8 -0
  76. data/lib/dev_system/{dev/controllers/command → commands}/test_command.rb +37 -9
  77. data/lib/dev_system/{dev/controllers/command → commands}/test_command_test.rb +1 -2
  78. data/lib/dev_system/dev_box.rb +79 -0
  79. data/lib/dev_system/dev_box_test.rb +33 -0
  80. data/lib/dev_system/generators/env_generator.rb +87 -0
  81. data/lib/dev_system/generators/env_generator_test.rb +11 -0
  82. data/lib/dev_system/generators/gemfile_generator.rb +47 -0
  83. data/lib/dev_system/generators/gemfile_generator_test.rb +11 -0
  84. data/lib/dev_system/generators/system_generator.rb +70 -0
  85. data/lib/dev_system/generators/system_generator_test.rb +11 -0
  86. data/lib/dev_system/sub/bench/bench.rb +7 -0
  87. data/lib/dev_system/{dev/panels → sub/bench}/bench_panel_test.rb +6 -2
  88. data/lib/dev_system/sub/bench/bench_test.rb +24 -0
  89. data/lib/dev_system/sub/bench/benches/not_found_bench.rb +33 -0
  90. data/lib/dev_system/{dev/controllers/bench → sub/bench/benches}/not_found_bench_test.rb +1 -2
  91. data/lib/dev_system/{dev/controllers/command → sub/bench/commands}/bench_command.rb +2 -7
  92. data/lib/dev_system/{dev/controllers/command → sub/bench/commands}/bench_command_test.rb +1 -2
  93. data/lib/dev_system/sub/bench/generators/bench_generator.rb +70 -0
  94. data/lib/dev_system/sub/bench/generators/bench_generator_test.rb +10 -0
  95. data/lib/dev_system/sub/command/command.rb +28 -0
  96. data/lib/dev_system/sub/command/command_panel.rb +151 -0
  97. data/lib/dev_system/sub/command/command_panel_test.rb +78 -0
  98. data/lib/dev_system/{dev/controllers → sub/command}/command_test.rb +6 -2
  99. data/lib/dev_system/sub/command/commands/base_command.rb +48 -0
  100. data/lib/dev_system/sub/command/commands/base_command_test.rb +11 -0
  101. data/lib/dev_system/{dev/controllers/terminal/irb_terminal.rb → sub/command/commands/irb_command.rb} +4 -2
  102. data/lib/dev_system/sub/command/commands/irb_command_test.rb +11 -0
  103. data/lib/dev_system/sub/command/commands/not_found_command.rb +156 -0
  104. data/lib/dev_system/sub/command/commands/not_found_command_test.rb +11 -0
  105. data/lib/dev_system/sub/command/commands/pry_command.rb +10 -0
  106. data/lib/dev_system/sub/command/commands/pry_command_test.rb +11 -0
  107. data/lib/dev_system/sub/command/commands/simple_command.rb +143 -0
  108. data/lib/dev_system/sub/command/commands/simple_command_test.rb +11 -0
  109. data/lib/dev_system/sub/command/generators/command_generator.rb +90 -0
  110. data/lib/dev_system/sub/command/generators/command_generator_test.rb +11 -0
  111. data/lib/dev_system/sub/command/input_commands/highline_input_command.rb +17 -0
  112. data/lib/dev_system/sub/command/input_commands/highline_input_command_test.rb +19 -0
  113. data/lib/dev_system/sub/command/input_commands/input_command.rb +20 -0
  114. data/lib/dev_system/sub/command/input_commands/input_command_test.rb +19 -0
  115. data/lib/dev_system/sub/command/input_commands/tty_input_command.rb +55 -0
  116. data/lib/dev_system/sub/command/input_commands/tty_input_command_test.rb +19 -0
  117. data/lib/dev_system/sub/generator/commands/generate_command.rb +9 -0
  118. data/lib/dev_system/sub/generator/commands/generate_command_test.rb +11 -0
  119. data/lib/dev_system/sub/generator/commands/new_command.rb +10 -0
  120. data/lib/dev_system/sub/generator/commands/new_command_test.rb +7 -0
  121. data/lib/dev_system/sub/generator/generator.rb +19 -0
  122. data/lib/dev_system/sub/generator/generator_panel.rb +98 -0
  123. data/lib/dev_system/sub/generator/generator_panel_test.rb +79 -0
  124. data/lib/dev_system/{dev/controllers → sub/generator}/generator_test.rb +6 -2
  125. data/lib/dev_system/sub/generator/generators/base_generator.rb +64 -0
  126. data/lib/dev_system/sub/generator/generators/base_generator_test.rb +11 -0
  127. data/lib/dev_system/sub/generator/generators/generator_generator.rb +71 -0
  128. data/lib/dev_system/sub/generator/generators/generator_generator_test.rb +11 -0
  129. data/lib/dev_system/sub/generator/generators/new_generator.rb +74 -0
  130. data/lib/dev_system/sub/generator/generators/new_generator_test.rb +11 -0
  131. data/lib/dev_system/sub/generator/generators/not_found_generator.rb +155 -0
  132. data/lib/dev_system/sub/generator/generators/not_found_generator_test.rb +11 -0
  133. data/lib/dev_system/sub/generator/generators/simple_generator.rb +257 -0
  134. data/lib/dev_system/sub/generator/generators/simple_generator_test.rb +38 -0
  135. data/lib/dev_system/sub/log/commands/log_command.rb +11 -0
  136. data/lib/dev_system/sub/log/commands/log_command_test.rb +11 -0
  137. data/lib/dev_system/sub/log/generators/log_generator.rb +54 -0
  138. data/lib/dev_system/sub/log/generators/log_generator_test.rb +10 -0
  139. data/lib/dev_system/sub/log/log.rb +3 -0
  140. data/lib/dev_system/sub/log/log_panel.rb +47 -0
  141. data/lib/dev_system/sub/log/log_panel_test.rb +50 -0
  142. data/lib/dev_system/sub/log/log_test.rb +16 -0
  143. data/lib/dev_system/sub/log/logs/output_log.rb +74 -0
  144. data/lib/dev_system/sub/log/logs/output_log_test.rb +47 -0
  145. data/lib/dev_system/sub/log/logs/stick_log.rb +79 -0
  146. data/lib/dev_system/sub/log/logs/stick_log_test.rb +88 -0
  147. data/lib/dev_system/sub/shell/commands/convert_command.rb +27 -0
  148. data/lib/dev_system/sub/shell/commands/convert_command_test.rb +10 -0
  149. data/lib/dev_system/sub/shell/commands/format_command.rb +25 -0
  150. data/lib/dev_system/sub/shell/commands/format_command_test.rb +10 -0
  151. data/lib/dev_system/sub/shell/commands/loc_command.rb +211 -0
  152. data/lib/dev_system/sub/shell/commands/loc_command_test.rb +10 -0
  153. data/lib/dev_system/sub/shell/commands/shell_command.rb +45 -0
  154. data/lib/dev_system/sub/shell/commands/shell_command_test.rb +11 -0
  155. data/lib/dev_system/sub/shell/converter_shells/coffee_converter_shell.rb +21 -0
  156. data/lib/dev_system/sub/shell/converter_shells/coffee_converter_shell_test.rb +41 -0
  157. data/lib/dev_system/sub/shell/converter_shells/converter_shell.rb +13 -0
  158. data/lib/dev_system/sub/shell/converter_shells/converter_shell_test.rb +19 -0
  159. data/lib/dev_system/sub/shell/converter_shells/haml_converter_shell.rb +30 -0
  160. data/lib/dev_system/sub/shell/converter_shells/haml_converter_shell_test.rb +34 -0
  161. data/lib/dev_system/sub/shell/converter_shells/md_converter_shell.rb +21 -0
  162. data/lib/dev_system/sub/shell/converter_shells/md_converter_shell_test.rb +38 -0
  163. data/lib/dev_system/sub/shell/converter_shells/scss_converter_shell.rb +59 -0
  164. data/lib/dev_system/sub/shell/converter_shells/scss_converter_shell_test.rb +59 -0
  165. data/lib/dev_system/sub/shell/formatter_shells/formatter_shell.rb +13 -0
  166. data/lib/dev_system/sub/shell/formatter_shells/formatter_shell_test.rb +19 -0
  167. data/lib/dev_system/sub/shell/formatter_shells/html_formatter_shell.rb +20 -0
  168. data/lib/dev_system/sub/shell/formatter_shells/html_formatter_shell_test.rb +51 -0
  169. data/lib/dev_system/sub/shell/generators/shell_generator.rb +68 -0
  170. data/lib/dev_system/sub/shell/generators/shell_generator_test.rb +10 -0
  171. data/lib/dev_system/{dev/controllers → sub/shell}/shell.rb +22 -0
  172. data/lib/dev_system/sub/shell/shell_panel.rb +98 -0
  173. data/lib/dev_system/sub/shell/shell_panel_test.rb +18 -0
  174. data/lib/dev_system/{dev/controllers → sub/shell}/shell_test.rb +31 -2
  175. data/lib/dev_system/sub/shell/shells/app_shell.rb +185 -0
  176. data/lib/dev_system/sub/shell/shells/app_shell_test.rb +26 -0
  177. data/lib/dev_system/{dev/controllers/shell → sub/shell/shells}/bin_shell_test.rb +1 -2
  178. data/lib/dev_system/sub/shell/shells/color_shell.rb +389 -0
  179. data/lib/dev_system/sub/shell/shells/color_shell_test.rb +27 -0
  180. data/lib/dev_system/sub/shell/shells/controller_shell.rb +20 -0
  181. data/lib/dev_system/sub/shell/shells/controller_shell_test.rb +16 -0
  182. data/lib/dev_system/sub/shell/shells/dir_shell.rb +27 -0
  183. data/lib/dev_system/{dev/controllers/shell → sub/shell/shells}/dir_shell_test.rb +1 -5
  184. data/lib/dev_system/{dev/controllers/shell → sub/shell/shells}/file_shell.rb +4 -4
  185. data/lib/dev_system/{dev/controllers/shell → sub/shell/shells}/file_shell_test.rb +1 -2
  186. data/lib/dev_system/sub/shell/shells/gem_shell.rb +21 -0
  187. data/lib/dev_system/sub/shell/shells/gem_shell_test.rb +28 -0
  188. data/lib/dev_system/sub/shell/shells/kernel_shell.rb +22 -0
  189. data/lib/dev_system/sub/shell/shells/kernel_shell_test.rb +10 -0
  190. data/lib/dev_system/sub/shell/shells/line_diff_shell.rb +26 -0
  191. data/lib/dev_system/sub/shell/shells/line_diff_shell_test.rb +11 -0
  192. data/lib/dev_system/sub/shell/shells/line_shell.rb +56 -0
  193. data/lib/dev_system/sub/shell/shells/line_shell_test.rb +70 -0
  194. data/lib/dev_system/sub/shell/shells/method_shell.rb +52 -0
  195. data/lib/dev_system/sub/shell/shells/method_shell_test.rb +34 -0
  196. data/lib/dev_system/sub/shell/shells/text_file_shell.rb +14 -0
  197. data/lib/dev_system/sub/shell/shells/text_file_shell_test.rb +11 -0
  198. data/lib/dev_system/sub/shell/shells/text_shell.rb +65 -0
  199. data/lib/dev_system/{dev/controllers/shell → sub/shell/shells}/text_shell_test.rb +1 -2
  200. data/lib/dev_system.rb +8 -2
  201. data/lib/happy_system/happy_box.rb +9 -0
  202. data/lib/happy_system/happy_box_test.rb +24 -0
  203. data/lib/happy_system/sub/axo/axo.rb +10 -0
  204. data/lib/happy_system/sub/axo/axo_panel.rb +9 -0
  205. data/lib/happy_system/sub/axo/axo_panel_test.rb +16 -0
  206. data/lib/happy_system/sub/axo/axo_test.rb +16 -0
  207. data/lib/happy_system/sub/axo/commands/axo_command.rb +40 -0
  208. data/lib/happy_system/sub/axo/commands/axo_command_test.rb +8 -0
  209. data/lib/happy_system/sub/axo/generators/axo_generator.rb +79 -0
  210. data/lib/happy_system/sub/axo/generators/axo_generator_test.rb +11 -0
  211. data/lib/happy_system.rb +4 -2
  212. data/lib/lab_system/clients/kroki_client.rb +134 -0
  213. data/lib/lab_system/clients/kroki_client_test.rb +32 -0
  214. data/lib/lab_system/clients/liza_kroki_client.rb +176 -0
  215. data/lib/lab_system/clients/liza_kroki_client_test.rb +32 -0
  216. data/lib/lab_system/commands/docker_command.rb +61 -0
  217. data/lib/lab_system/commands/docker_command_test.rb +11 -0
  218. data/lib/lab_system/lab_box.rb +5 -0
  219. data/lib/lab_system/lab_box_test.rb +8 -0
  220. data/lib/lab_system/requests/kroki_request.rb +182 -0
  221. data/lib/lab_system/requests/kroki_request_test.rb +11 -0
  222. data/lib/lab_system/shells/docker_shell.rb +60 -0
  223. data/lib/lab_system/shells/docker_shell_test.rb +61 -0
  224. data/lib/lab_system/shells/kroki_docker_shell.rb +20 -0
  225. data/lib/lab_system/shells/kroki_docker_shell_test.rb +11 -0
  226. data/lib/lab_system.rb +8 -0
  227. data/lib/lerb.rb +95 -49
  228. data/lib/liza/base/controller.rb +14 -15
  229. data/lib/liza/base/controller_test.rb +28 -2
  230. data/lib/liza/base/panel.rb +64 -24
  231. data/lib/liza/base/panel_test.rb +168 -3
  232. data/lib/liza/base_parts/controller_subsystem_part.rb +93 -0
  233. data/lib/liza/base_parts/panel_rescuer_part.rb +129 -0
  234. data/lib/liza/meta/box.rb +24 -0
  235. data/lib/liza/meta/box_test.rb +20 -0
  236. data/lib/liza/meta/part_test.rb +6 -1
  237. data/lib/liza/meta/system.rb +50 -7
  238. data/lib/liza/meta/system_test.rb +6 -2
  239. data/lib/liza/ruby_tests/app_test.rb +39 -0
  240. data/lib/liza/ruby_tests/class_test.rb +20 -0
  241. data/lib/liza/ruby_tests/module_test.rb +4 -4
  242. data/lib/liza/{ruby_test.rb → ruby_tests/object_test.rb} +1 -1
  243. data/lib/liza/ruby_tests/string_test.rb +3 -1
  244. data/lib/liza/{test → safety}/test.rb +9 -0
  245. data/lib/liza/{test → safety}/test_test.rb +44 -7
  246. data/lib/liza/{test_parts → safety_parts}/test_assertions_advanced_part.rb +1 -1
  247. data/lib/liza/{test_parts → safety_parts}/test_assertions_part.rb +1 -1
  248. data/lib/liza/{test_parts → safety_parts}/test_dsl_part.rb +3 -3
  249. data/lib/liza/{test_parts → safety_parts}/test_log_part.rb +20 -0
  250. data/lib/liza/{test_parts → safety_parts}/test_subject_part.rb +10 -0
  251. data/lib/liza/safety_parts/test_tree_part.rb +87 -0
  252. data/lib/liza/unit.rb +64 -120
  253. data/lib/liza/unit_parts/unit_classes_part.rb +37 -0
  254. data/lib/liza/unit_parts/unit_classes_part_test.rb +3 -0
  255. data/lib/liza/unit_parts/unit_logging_part.rb +139 -0
  256. data/lib/liza/unit_parts/unit_logging_part_test.rb +3 -0
  257. data/lib/liza/unit_parts/unit_methods_part.rb +35 -0
  258. data/lib/liza/unit_parts/unit_methods_part_test.rb +3 -0
  259. data/lib/liza/unit_parts/unit_procedure_part.rb +2 -2
  260. data/lib/liza/unit_parts/unit_procedure_part_test.rb +9 -9
  261. data/lib/liza/unit_parts/unit_renderer_part.rb +171 -0
  262. data/lib/liza/unit_parts/unit_renderer_part_test.rb +15 -0
  263. data/lib/liza/unit_parts/unit_settings_part.rb +84 -0
  264. data/lib/liza/unit_parts/unit_settings_part_test.rb +3 -0
  265. data/lib/liza/unit_test.rb +114 -5
  266. data/lib/liza.rb +11 -2
  267. data/lib/lizarb/ruby/class.rb +9 -1
  268. data/lib/lizarb/ruby/module.rb +1 -1
  269. data/lib/lizarb/ruby/string.rb +3 -1
  270. data/lib/lizarb/version.rb +1 -1
  271. data/lib/lizarb.rb +404 -29
  272. data/lib/micro_system/micro_box.rb +5 -0
  273. data/lib/micro_system/micro_box_test.rb +8 -0
  274. data/lib/micro_system.rb +8 -0
  275. data/lib/net_system/net_box.rb +21 -0
  276. data/lib/net_system/{net/net_box_test.rb → net_box_test.rb} +1 -2
  277. data/lib/net_system/{net/panels → sub/client}/client_panel_test.rb +1 -2
  278. data/lib/net_system/{net/controllers → sub/client}/client_test.rb +1 -2
  279. data/lib/net_system/sub/client/generators/client_generator.rb +88 -0
  280. data/lib/net_system/sub/client/generators/client_generator_test.rb +10 -0
  281. data/lib/net_system/sub/database/clients/mongo_client.rb +33 -0
  282. data/lib/net_system/sub/database/clients/mongo_client_test.rb +20 -0
  283. data/lib/net_system/sub/database/clients/mysql_client.rb +29 -0
  284. data/lib/net_system/sub/database/clients/mysql_client_test.rb +23 -0
  285. data/lib/net_system/sub/database/clients/pgsql_client.rb +29 -0
  286. data/lib/net_system/sub/database/clients/pgsql_client_test.rb +25 -0
  287. data/lib/net_system/{net/controllers/client → sub/database/clients}/redis_client.rb +5 -2
  288. data/lib/net_system/{net/controllers/client → sub/database/clients}/redis_client_test.rb +2 -2
  289. data/lib/net_system/{net/controllers/client → sub/database/clients}/sqlite_client.rb +5 -2
  290. data/lib/net_system/{net/controllers/client → sub/database/clients}/sqlite_client_test.rb +2 -2
  291. data/lib/net_system/sub/database/commands/database_command.rb +32 -0
  292. data/lib/net_system/sub/database/commands/database_command_test.rb +11 -0
  293. data/lib/net_system/{net/panels → sub/database}/database_panel_test.rb +1 -2
  294. data/lib/net_system/{net/controllers → sub/database}/database_test.rb +1 -2
  295. data/lib/net_system/sub/database/databases/mongo_db.rb +8 -0
  296. data/lib/net_system/sub/database/databases/mongo_db_test.rb +21 -0
  297. data/lib/net_system/sub/database/databases/mysql_db.rb +8 -0
  298. data/lib/net_system/sub/database/databases/mysql_db_test.rb +21 -0
  299. data/lib/net_system/sub/database/databases/pgsql_db.rb +8 -0
  300. data/lib/net_system/sub/database/databases/pgsql_db_test.rb +21 -0
  301. data/lib/net_system/{net/controllers/database → sub/database/databases}/redis_db_test.rb +1 -1
  302. data/lib/net_system/{net/controllers/database → sub/database/databases}/sqlite_db_test.rb +1 -1
  303. data/lib/net_system/sub/record/generators/record_generator.rb +33 -0
  304. data/lib/net_system/sub/record/generators/record_generator_test.rb +11 -0
  305. data/lib/net_system/sub/record/record_panel.rb +3 -0
  306. data/lib/net_system/sub/record/record_panel_test.rb +11 -0
  307. data/lib/net_system/{net/controllers → sub/record}/record_test.rb +1 -2
  308. data/lib/net_system.rb +8 -1
  309. data/lib/web_system/sub/rack/commands/rack_command.rb +30 -0
  310. data/lib/web_system/sub/rack/commands/rack_command_test.rb +11 -0
  311. data/lib/web_system/sub/rack/middle_racks/first_middle_rack.rb +8 -0
  312. data/lib/web_system/sub/rack/middle_racks/first_middle_rack_test.rb +11 -0
  313. data/lib/web_system/sub/rack/middle_racks/last_middle_rack.rb +3 -0
  314. data/lib/web_system/sub/rack/middle_racks/last_middle_rack_test.rb +11 -0
  315. data/lib/web_system/sub/rack/middle_racks/middle_rack.rb +18 -0
  316. data/lib/web_system/sub/rack/middle_racks/middle_rack_test.rb +11 -0
  317. data/lib/web_system/sub/rack/middle_racks/zeitwerk_middle_rack.rb +11 -0
  318. data/lib/web_system/sub/rack/middle_racks/zeitwerk_middle_rack_test.rb +11 -0
  319. data/lib/web_system/sub/rack/rack_panel.rb +52 -0
  320. data/lib/web_system/{web/panels → sub/rack}/rack_panel_test.rb +1 -2
  321. data/lib/web_system/{web/controllers → sub/rack}/rack_test.rb +1 -2
  322. data/lib/web_system/sub/rack/server_racks/agoo_server_rack.rb +53 -0
  323. data/lib/web_system/sub/rack/server_racks/agoo_server_rack_test.rb +11 -0
  324. data/lib/web_system/sub/rack/server_racks/falcon_server_rack.rb +46 -0
  325. data/lib/web_system/sub/rack/server_racks/falcon_server_rack_test.rb +11 -0
  326. data/lib/web_system/sub/rack/server_racks/iodine_server_rack.rb +47 -0
  327. data/lib/web_system/sub/rack/server_racks/iodine_server_rack_test.rb +11 -0
  328. data/lib/web_system/sub/rack/server_racks/puma_server_rack.rb +48 -0
  329. data/lib/web_system/sub/rack/server_racks/puma_server_rack_test.rb +11 -0
  330. data/lib/web_system/sub/rack/server_racks/server_rack.rb +12 -0
  331. data/lib/web_system/sub/rack/server_racks/server_rack_test.rb +11 -0
  332. data/lib/web_system/sub/rack/server_racks/thin_server_rack.rb +85 -0
  333. data/lib/web_system/sub/rack/server_racks/thin_server_rack_test.rb +11 -0
  334. data/lib/web_system/sub/request/commands/request_command.rb +125 -0
  335. data/lib/web_system/sub/request/commands/request_command_test.rb +11 -0
  336. data/lib/web_system/sub/request/generators/request_generator.rb +96 -0
  337. data/lib/web_system/sub/request/generators/request_generator_test.rb +11 -0
  338. data/lib/web_system/sub/request/request_panel.rb +69 -0
  339. data/lib/web_system/sub/request/request_panel_test.rb +54 -0
  340. data/lib/web_system/{web/controllers → sub/request}/request_test.rb +1 -2
  341. data/lib/web_system/sub/request/requests/simple_request.rb +95 -0
  342. data/lib/web_system/sub/request/requests/simple_request_test.rb +11 -0
  343. data/lib/web_system/sub/request/router_requests/router_request.rb +7 -0
  344. data/lib/web_system/sub/request/router_requests/router_request_test.rb +11 -0
  345. data/lib/web_system/sub/request/router_requests/simple_router_request.rb +24 -0
  346. data/lib/web_system/sub/request/router_requests/simple_router_request_test.rb +11 -0
  347. data/lib/web_system/web_box.rb +17 -0
  348. data/lib/web_system/{web/web_box_test.rb → web_box_test.rb} +1 -2
  349. data/lib/web_system.rb +9 -3
  350. data/lib/work_system/work_box.rb +5 -0
  351. data/lib/work_system/work_box_test.rb +8 -0
  352. data/lib/work_system.rb +8 -0
  353. data/lizarb.gemspec +14 -8
  354. metadata +375 -168
  355. data/.ruby-version +0 -1
  356. data/app/dev/benches/app_bench.rb +0 -5
  357. data/app/dev/benches/app_bench_test.rb +0 -7
  358. data/app/dev/benches/loops_bench_test.rb +0 -11
  359. data/app/dev/commands/app_command.rb +0 -5
  360. data/app/dev/commands/app_command_test.rb +0 -7
  361. data/app/dev/commands/new_command.rb +0 -9
  362. data/app/dev/commands/new_command_test.rb +0 -7
  363. data/app/dev/generators/bench_generator/bench.rb.erb +0 -24
  364. data/app/dev/generators/bench_generator/bench_test.rb.erb +0 -12
  365. data/app/dev/generators/bench_generator.rb +0 -18
  366. data/app/dev/generators/bench_generator_test.rb +0 -12
  367. data/app/dev/generators/command_generator/command.rb.erb +0 -26
  368. data/app/dev/generators/command_generator/command_test.rb.erb +0 -12
  369. data/app/dev/generators/command_generator.rb +0 -18
  370. data/app/dev/generators/command_generator_test.rb +0 -12
  371. data/app/dev/generators/record_generator.rb +0 -46
  372. data/app/dev/generators/record_generator_test.rb +0 -12
  373. data/app/dev/generators/request_generator.rb +0 -63
  374. data/app/dev/generators/request_generator_test.rb +0 -12
  375. data/app/happy/axos/axo.rb +0 -50
  376. data/exe/Gemfile.lock +0 -13
  377. data/exe/lrb +0 -3
  378. data/lib/dev_system/dev/controllers/bench/not_found_bench.rb +0 -27
  379. data/lib/dev_system/dev/controllers/bench.rb +0 -9
  380. data/lib/dev_system/dev/controllers/bench_dsl_main_part.rb +0 -58
  381. data/lib/dev_system/dev/controllers/bench_test.rb +0 -12
  382. data/lib/dev_system/dev/controllers/command/echo_command.rb +0 -9
  383. data/lib/dev_system/dev/controllers/command/echo_command_test.rb +0 -12
  384. data/lib/dev_system/dev/controllers/command/generate_command.rb +0 -33
  385. data/lib/dev_system/dev/controllers/command/generate_command_test.rb +0 -12
  386. data/lib/dev_system/dev/controllers/command/not_found_command.rb +0 -27
  387. data/lib/dev_system/dev/controllers/command/not_found_command_test.rb +0 -12
  388. data/lib/dev_system/dev/controllers/command/terminal_command.rb +0 -22
  389. data/lib/dev_system/dev/controllers/command/terminal_command_test.rb +0 -12
  390. data/lib/dev_system/dev/controllers/command/version_command.rb +0 -7
  391. data/lib/dev_system/dev/controllers/command/version_command_test.rb +0 -12
  392. data/lib/dev_system/dev/controllers/command.rb +0 -17
  393. data/lib/dev_system/dev/controllers/generator.rb +0 -9
  394. data/lib/dev_system/dev/controllers/generator_dsl_main_part.rb +0 -52
  395. data/lib/dev_system/dev/controllers/generators/app_generator.rb +0 -146
  396. data/lib/dev_system/dev/controllers/generators/app_generator_test.rb +0 -12
  397. data/lib/dev_system/dev/controllers/generators/generator_generator/generator.rb.erb +0 -18
  398. data/lib/dev_system/dev/controllers/generators/generator_generator/generator_test.rb.erb +0 -12
  399. data/lib/dev_system/dev/controllers/generators/generator_generator/template.rb.erb +0 -9
  400. data/lib/dev_system/dev/controllers/generators/generator_generator/template_test.rb.erb +0 -12
  401. data/lib/dev_system/dev/controllers/generators/generator_generator.rb +0 -30
  402. data/lib/dev_system/dev/controllers/generators/generator_generator_test.rb +0 -12
  403. data/lib/dev_system/dev/controllers/generators/not_found_generator.rb +0 -27
  404. data/lib/dev_system/dev/controllers/generators/not_found_generator_test.rb +0 -12
  405. data/lib/dev_system/dev/controllers/shell/dir_shell.rb +0 -27
  406. data/lib/dev_system/dev/controllers/shell/text_shell.rb +0 -23
  407. data/lib/dev_system/dev/controllers/terminal/irb_terminal_test.rb +0 -12
  408. data/lib/dev_system/dev/controllers/terminal/pry_terminal.rb +0 -10
  409. data/lib/dev_system/dev/controllers/terminal/pry_terminal_test.rb +0 -12
  410. data/lib/dev_system/dev/controllers/terminal.rb +0 -17
  411. data/lib/dev_system/dev/controllers/terminal_test.rb +0 -12
  412. data/lib/dev_system/dev/dev_box.rb +0 -39
  413. data/lib/dev_system/dev/dev_box_test.rb +0 -17
  414. data/lib/dev_system/dev/panels/command_panel.rb +0 -28
  415. data/lib/dev_system/dev/panels/command_panel_test.rb +0 -21
  416. data/lib/dev_system/dev/panels/generator_panel.rb +0 -3
  417. data/lib/dev_system/dev/panels/generator_panel_test.rb +0 -12
  418. data/lib/dev_system/dev/panels/log_panel.rb +0 -13
  419. data/lib/dev_system/dev/panels/log_panel_test.rb +0 -16
  420. data/lib/dev_system/dev/panels/shell_panel.rb +0 -3
  421. data/lib/dev_system/dev/panels/shell_panel_test.rb +0 -12
  422. data/lib/dev_system/dev/panels/terminal_panel.rb +0 -3
  423. data/lib/dev_system/dev/panels/terminal_panel_test.rb +0 -12
  424. data/lib/happy_system/dev/happy_command.rb +0 -11
  425. data/lib/happy_system/happy/controllers/axo.rb +0 -7
  426. data/lib/happy_system/happy/happy_box.rb +0 -9
  427. data/lib/happy_system/happy/happy_box_test.rb +0 -16
  428. data/lib/happy_system/happy/panels/axo_panel.rb +0 -3
  429. data/lib/liza/base/box.rb +0 -85
  430. data/lib/liza/base/box_test.rb +0 -10
  431. data/lib/liza/base_parts/controller_renderer_part.rb +0 -140
  432. data/lib/liza/base_parts/controller_renderer_part_test.rb +0 -16
  433. data/lib/liza/meta/part_extension.rb +0 -16
  434. data/lib/liza/test_parts/test_tree_part.rb +0 -137
  435. data/lib/net_system/dev/net_command.rb +0 -22
  436. data/lib/net_system/net/net_box.rb +0 -15
  437. data/lib/web_system/dev/rack_command.rb +0 -35
  438. data/lib/web_system/dev/request_command.rb +0 -143
  439. data/lib/web_system/dev/web_command.rb +0 -9
  440. data/lib/web_system/web/panels/rack_panel.rb +0 -42
  441. data/lib/web_system/web/panels/request_panel.rb +0 -72
  442. data/lib/web_system/web/panels/request_panel_test.rb +0 -33
  443. data/lib/web_system/web/web_box.rb +0 -20
  444. /data/lib/dev_system/{dev/panels → sub/bench}/bench_panel.rb +0 -0
  445. /data/lib/dev_system/{dev/controllers/shell → sub/shell/shells}/bin_shell.rb +0 -0
  446. /data/lib/net_system/{net/controllers → sub/client}/client.rb +0 -0
  447. /data/lib/net_system/{net/panels → sub/client}/client_panel.rb +0 -0
  448. /data/lib/net_system/{net/controllers → sub/database}/database.rb +0 -0
  449. /data/lib/net_system/{net/panels → sub/database}/database_panel.rb +0 -0
  450. /data/lib/net_system/{net/controllers/database → sub/database/databases}/redis_db.rb +0 -0
  451. /data/lib/net_system/{net/controllers/database → sub/database/databases}/sqlite_db.rb +0 -0
  452. /data/lib/net_system/{net/controllers → sub/record}/record.rb +0 -0
  453. /data/lib/web_system/{web/controllers → sub/rack}/rack.rb +0 -0
  454. /data/lib/web_system/{web/controllers → sub/request}/request.rb +0 -0
  455. /data/lib/web_system/{web/controllers/request → sub/request/requests}/client_error_request.rb +0 -0
  456. /data/lib/web_system/{web/controllers/request → sub/request/requests}/not_found_request.rb +0 -0
  457. /data/lib/web_system/{web/controllers/request → sub/request/requests}/server_error_request.rb +0 -0
@@ -0,0 +1,19 @@
1
+ class DevSystem::InputCommandTest < DevSystem::CommandTest
2
+
3
+ test :subject_class do
4
+ assert subject_class == DevSystem::InputCommand
5
+ end
6
+
7
+ test :settings do
8
+ assert_equality subject_class.log_level, 0
9
+
10
+ assert_equality subject_class.token, :input
11
+ assert_equality subject_class.singular, :input_command
12
+ assert_equality subject_class.plural, :input_commands
13
+
14
+ assert_equality subject_class.system, DevSystem
15
+ assert_equality subject_class.subsystem, DevSystem::Command
16
+ assert_equality subject_class.division, DevSystem::InputCommand
17
+ end
18
+
19
+ end
@@ -0,0 +1,55 @@
1
+ class DevSystem::TtyInputCommand < DevSystem::InputCommand
2
+
3
+ def self.prompt
4
+ require "tty-prompt"
5
+ @prompt ||= TTY::Prompt.new symbols: {marker: ">", radio_on: "x", radio_off: " "}
6
+ end
7
+
8
+ def self.pick_one title, options = ["Yes", "No"]
9
+ prompt.select title, options, filter: true, show_help: :always, per_page: 20
10
+ rescue TTY::Reader::InputInterrupt
11
+ puts
12
+ puts
13
+ log "Control-C"
14
+ exit
15
+ end
16
+
17
+ #
18
+
19
+ def self.pick_color title = "Pick a color", string: nil
20
+ options = ColorShell.colors.map { [(stick _2, "#{string} # #{_1}", :b), _1] }.to_h
21
+
22
+ prompt.select \
23
+ title,
24
+ options,
25
+ filter: true, show_help: :always, per_page: 28
26
+ rescue TTY::Reader::InputInterrupt
27
+ puts
28
+ puts
29
+ log "Control-C"
30
+ exit
31
+ end
32
+
33
+ #
34
+
35
+ def self.multi_select title, choices
36
+ raise "choices must be a hash" unless choices.is_a? Hash
37
+ return choices if choices.empty?
38
+
39
+ options = {
40
+ enum: ")",
41
+ per_page: 20,
42
+ help: "(space to select, enter to finish)",
43
+ show_help: :always,
44
+ default: 1..choices.count
45
+ }
46
+ prompt.multi_select title, choices, options
47
+ rescue TTY::Reader::InputInterrupt
48
+ puts
49
+ puts
50
+ log "Control-C"
51
+ exit
52
+ end
53
+
54
+
55
+ end
@@ -0,0 +1,19 @@
1
+ class DevSystem::TtyInputCommandTest < DevSystem::InputCommandTest
2
+
3
+ test :subject_class do
4
+ assert subject_class == DevSystem::TtyInputCommand
5
+ end
6
+
7
+ test :settings do
8
+ assert_equality subject_class.log_level, 0
9
+
10
+ assert_equality subject_class.token, :tty
11
+ assert_equality subject_class.singular, :tty_input_command
12
+ assert_equality subject_class.plural, :tty_input_commands
13
+
14
+ assert_equality subject_class.system, DevSystem
15
+ assert_equality subject_class.subsystem, DevSystem::Command
16
+ assert_equality subject_class.division, DevSystem::InputCommand
17
+ end
18
+
19
+ end
@@ -0,0 +1,9 @@
1
+ class DevSystem::GenerateCommand < DevSystem::SimpleCommand
2
+
3
+ def call_default
4
+ log :lower, "env.count is #{env.count}"
5
+
6
+ DevBox[:generator].call env
7
+ end
8
+
9
+ end
@@ -0,0 +1,11 @@
1
+ class DevSystem::GenerateCommandTest < DevSystem::SimpleCommandTest
2
+
3
+ test :subject_class do
4
+ assert subject_class == DevSystem::GenerateCommand
5
+ end
6
+
7
+ test :settings do
8
+ assert_equality subject_class.log_level, 0
9
+ end
10
+
11
+ end
@@ -0,0 +1,10 @@
1
+ class DevSystem::NewCommand < DevSystem::SimpleCommand
2
+
3
+ def call_default
4
+ log :lower, "env.count is #{env.count}"
5
+ args = env[:args] = ["new", *env[:args]]
6
+ log "args = #{args.inspect}"
7
+ DevBox[:generator].call env
8
+ end
9
+
10
+ end
@@ -0,0 +1,7 @@
1
+ class DevSystem::NewCommandTest < DevSystem::SimpleCommandTest
2
+
3
+ test :subject_class do
4
+ assert subject_class == DevSystem::NewCommand
5
+ end
6
+
7
+ end
@@ -0,0 +1,19 @@
1
+ class DevSystem::Generator < Liza::Controller
2
+
3
+ def self.get_generator_signatures
4
+ signatures = []
5
+ ancestors_until(Generator).each do |c|
6
+ signatures +=
7
+ c.methods_defined.select do |name|
8
+ c.method(name).parameters == [[:req, :args]]
9
+ end.map do |name|
10
+ OpenStruct.new({
11
+ name: ( name == :call ? "" : name.to_s ),
12
+ description: "# no description",
13
+ })
14
+ end
15
+ end
16
+ signatures
17
+ end
18
+
19
+ end
@@ -0,0 +1,98 @@
1
+ class DevSystem::GeneratorPanel < Liza::Panel
2
+ class Error < StandardError; end
3
+ class NotFoundError < Error; end
4
+
5
+ #
6
+
7
+ def call env
8
+ log :low, "env.count is #{env.count}"
9
+ parse env
10
+ find env
11
+ forward env
12
+ inform env
13
+ save env
14
+ rescue Exception => e
15
+ rescue_from_panel(e, with: env)
16
+ end
17
+
18
+ #
19
+
20
+ def parse env
21
+ if log_level? :low
22
+ puts
23
+ log "env.count is #{env.count}"
24
+ end
25
+ raise NotFoundError, "generator not found" if env[:args].none?
26
+
27
+ generator_name, generator_coil = env[:args].first.split(":").map(&:to_sym)
28
+
29
+ env[:generator_name_original] = generator_name
30
+ env[:generator_name] = short(generator_name).to_sym
31
+ env[:generator_coil_original] = generator_coil
32
+ env[:generator_coil] = generator_coil
33
+ log :higher, "generator:coil is #{env[:generator_name]}:#{env[:generator_coil]}"
34
+ end
35
+
36
+ #
37
+
38
+ def find env
39
+ if log_level? :low
40
+ puts
41
+ log "env.count is #{env.count}"
42
+ end
43
+ begin
44
+ k = Liza.const "#{env[:generator_name]}_generator"
45
+ log :lower, k
46
+ env[:generator_class] = k
47
+ rescue Liza::ConstNotFound
48
+ raise NotFoundError, "generator #{env[:generator_name].inspect} not found"
49
+ end
50
+ end
51
+
52
+ #
53
+
54
+ def forward env
55
+ generator_class = env[:generator_class]
56
+
57
+ return forward_base_generator env if generator_class < BaseGenerator
58
+ return forward_generator env if generator_class < Generator
59
+ end
60
+
61
+ def forward_base_generator env
62
+ log :lower, "forwarding"
63
+ env[:args].shift
64
+ env[:generator_class].call env
65
+ end
66
+
67
+ def forward_generator env
68
+ method_name = env[:generator_coil]
69
+ method_name = :call if method_name == :default
70
+
71
+ args = env[:args][1..-1]
72
+ log :lower, "#{env[:generator_class]}.#{method_name}(#{args})"
73
+ env[:generator_class].public_send method_name, args
74
+ end
75
+
76
+ #
77
+
78
+ def inform env
79
+ if log_level? :low
80
+ puts
81
+ log "env.count is #{env.count}"
82
+ end
83
+ env[:generator] or return log :lower, "not implemented"
84
+ env[:generator].inform
85
+ end
86
+
87
+ #
88
+
89
+ def save env
90
+ if log_level? :low
91
+ puts
92
+ log "env.count is #{env.count}"
93
+ end
94
+ env[:generator] or return log :lower, "not implemented"
95
+ env[:generator].save
96
+ end
97
+
98
+ end
@@ -0,0 +1,79 @@
1
+ class DevSystem::GeneratorPanelTest < Liza::PanelTest
2
+
3
+ test :subject_class do
4
+ assert subject_class == DevSystem::GeneratorPanel
5
+ end
6
+
7
+ test_methods_defined do
8
+ on_self
9
+ on_instance \
10
+ :call,
11
+ :find,
12
+ :forward, :forward_base_generator, :forward_generator,
13
+ :inform,
14
+ :parse,
15
+ :save
16
+ end
17
+
18
+ test :settings do
19
+ assert_equality subject_class.log_level, 0
20
+ end
21
+
22
+ #
23
+
24
+ test :parse, true do
25
+ env = {args: ["system"]}
26
+ subject.parse env
27
+ assert_equality env[:generator_name_original], :system
28
+ assert_equality env[:generator_name], :system
29
+ assert_equality env[:generator_coil_original], nil
30
+ assert_equality env[:generator_coil], nil
31
+ end
32
+
33
+ test :parse, true, :coil do
34
+ env = {args: ["system:install"]}
35
+ subject.parse env
36
+ assert_equality env[:args], ["system:install"]
37
+ assert_equality env[:generator_name_original], :system
38
+ assert_equality env[:generator_name], :system
39
+ assert_equality env[:generator_coil_original], :install
40
+ assert_equality env[:generator_coil], :install
41
+ end
42
+
43
+ test :parse, false do
44
+ env = {args: ["x"]}
45
+ subject.parse env
46
+ assert_equality env[:args], ["x"]
47
+ assert_equality env[:generator_name_original], :x
48
+ assert_equality env[:generator_name], :x
49
+ assert_equality env[:generator_coil_original], nil
50
+ assert_equality env[:generator_coil], nil
51
+ end
52
+
53
+ test :parse, false, :coil do
54
+ env = {args: ["x:y"]}
55
+ subject.parse env
56
+ assert_equality env[:args], ["x:y"]
57
+ assert_equality env[:generator_name_original], :x
58
+ assert_equality env[:generator_name], :x
59
+ assert_equality env[:generator_coil_original], :y
60
+ assert_equality env[:generator_coil], :y
61
+ end
62
+
63
+ #
64
+
65
+ test :find, true do
66
+ env = {generator_name: :command}
67
+ subject.find env
68
+ assert_equality env[:generator_class], CommandGenerator
69
+ end
70
+
71
+ test :find, false do
72
+ env = {generator_name: :x}
73
+ subject.find env
74
+ assert false
75
+ rescue DevSystem::GeneratorPanel::NotFoundError
76
+ assert true
77
+ end
78
+
79
+ end
@@ -4,9 +4,13 @@ class DevSystem::GeneratorTest < Liza::ControllerTest
4
4
  assert subject_class == DevSystem::Generator
5
5
  end
6
6
 
7
+ test_methods_defined do
8
+ on_self :get_generator_signatures
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,64 @@
1
+ class DevSystem::BaseGenerator < DevSystem::Generator
2
+
3
+ #
4
+
5
+ def self.call(env)
6
+ log :lower, "env.count is #{env.count}"
7
+
8
+ generator = env[:generator] = new
9
+ generator.call env
10
+ end
11
+
12
+ #
13
+
14
+ attr_reader :env
15
+
16
+ def call(env)
17
+ log :lower, "env.count is #{env.count}"
18
+ @env = env
19
+
20
+ method_name = "call_#{env[:generator_coil] || :default}"
21
+ return public_send method_name if respond_to? method_name
22
+
23
+ log "method not found: #{method_name.inspect}"
24
+
25
+ raise NoMethodError, "method not found: #{method_name.inspect}", caller
26
+ end
27
+
28
+ def inform
29
+ log "not implemented"
30
+ end
31
+
32
+ def save
33
+ log "not implemented"
34
+ end
35
+
36
+ #
37
+
38
+ def args
39
+ env[:args]
40
+ end
41
+
42
+ def command
43
+ env[:command]
44
+ end
45
+
46
+ #
47
+
48
+ def self.get_generator_signatures
49
+ signatures = []
50
+ ancestors_until(BaseGenerator).each do |c|
51
+ signatures +=
52
+ c.instance_methods_defined.select do |name|
53
+ name.start_with? "call_"
54
+ end.map do |name|
55
+ OpenStruct.new({
56
+ name: ( name.to_s.sub("call_", "").sub("default", "") ),
57
+ description: "# no description",
58
+ })
59
+ end
60
+ end
61
+ signatures
62
+ end
63
+
64
+ end
@@ -0,0 +1,11 @@
1
+ class DevSystem::BaseGeneratorTest < DevSystem::GeneratorTest
2
+
3
+ test :subject_class do
4
+ assert subject_class == DevSystem::BaseGenerator
5
+ end
6
+
7
+ test :settings do
8
+ assert_equality subject_class.log_level, 0
9
+ end
10
+
11
+ end
@@ -0,0 +1,71 @@
1
+ class DevSystem::GeneratorGenerator < DevSystem::SimpleGenerator
2
+
3
+ # liza g generator name place=app
4
+
5
+ def call_default
6
+ @controller_class = Generator
7
+
8
+ name!
9
+ place!
10
+
11
+ ancestor = SimpleGenerator
12
+ create_controller @name, @controller_class, @place, @path, ancestor: ancestor do |unit, test|
13
+ unit.section :controller_section_1, caption: "liza g #{@name} name place=app"
14
+ unit.section :controller_section_2, caption: "liza g #{@name}:examples"
15
+ unit.view :generator_view_1, key: :controller_section_1
16
+ test.section :controller_test_section_1
17
+ end
18
+ end
19
+
20
+ end
21
+
22
+ __END__
23
+
24
+ # view controller_section_1.rb.erb
25
+
26
+ def call_default
27
+ @controller_class = <%= @name.camelize %>
28
+
29
+ name!
30
+ place!
31
+
32
+ create_controller @name, @controller_class, @place, @path do |unit, test|
33
+ unit.section :controller_section_1
34
+ test.section :controller_test_section_1
35
+ end
36
+ end
37
+ # view controller_section_2.rb.erb
38
+
39
+ # def call_examples
40
+ # copy_examples <%= @name.camelize %>
41
+ # end
42
+ # view generator_view_1.rb.erb
43
+ def self.call(env)
44
+ #
45
+ end
46
+
47
+ <%= "#" %> view controller_test_section_1.rb.erb
48
+
49
+ test :subject_class, :subject do
50
+ assert_equality <%%= @class_name %>, subject_class
51
+ assert_equality <%%= @class_name %>, subject.class
52
+ end
53
+
54
+ # test :subject_class, :call do
55
+ # a = 1
56
+ # b = 2
57
+ # assert_equality a, b
58
+ # end
59
+ #
60
+ # test :subject, :call do
61
+ # a = 1
62
+ # b = 2
63
+ # assert_equality a, b
64
+ # end
65
+
66
+ # view controller_test_section_1.rb.erb
67
+
68
+ test :subject_class, :subject do
69
+ assert_equality <%= @class_name %>, subject_class
70
+ assert_equality <%= @class_name %>, subject.class
71
+ end
@@ -0,0 +1,11 @@
1
+ class DevSystem::GeneratorGeneratorTest < Liza::SimpleGeneratorTest
2
+
3
+ test :subject_class do
4
+ assert subject_class == DevSystem::GeneratorGenerator
5
+ end
6
+
7
+ test :settings do
8
+ assert_equality subject_class.log_level, 0
9
+ end
10
+
11
+ end
@@ -0,0 +1,74 @@
1
+ class DevSystem::NewGenerator < DevSystem::SimpleGenerator
2
+
3
+ def call_default
4
+ args = env[:args]
5
+ log "args = #{args.inspect}"
6
+ # setup
7
+
8
+ name = args.shift || "app_1"
9
+
10
+ from = "#{Lizarb::APP_DIR}/examples/new"
11
+ log "from: #{from}"
12
+ to = "#{Dir.pwd}/#{name}"
13
+
14
+ return log "Directory #{to.light_green} already exists." if Dir.exist? to
15
+
16
+ log "Liza Application initializing at `#{to}`"
17
+
18
+ # app
19
+
20
+ FileUtils.cp_r from, to, verbose: true
21
+
22
+ # extra
23
+
24
+ puts
25
+
26
+ FileShell.gitkeep "#{to}/lib"
27
+ FileShell.gitkeep "#{to}/tmp"
28
+
29
+ TextShell.write "#{to}/.gitignore", render(:gitignore, format: :gitignore)
30
+ # TextShell.write "#{to}/Procfile", render(:Procfile, format: :yml)
31
+ TextShell.write "#{to}/.tool-versions", render(:toolversions, format: :txt)
32
+
33
+ FileUtils.cp_r "#{Lizarb::APP_DIR}/README.md",
34
+ "#{to}/README.md",
35
+ verbose: true
36
+ # FileUtils.cp_r "#{Lizarb::APP_DIR}/web_files",
37
+ # "#{to}/web_files",
38
+ # verbose: true
39
+
40
+ puts
41
+
42
+ KernelShell.call_backticks \
43
+ "cd #{to}; liza generate gemfile +confirm",
44
+ log_level: :normal
45
+
46
+ KernelShell.call_backticks \
47
+ "cd #{to}; BUNDLE_GEMFILE=Gemfile bundle install",
48
+ log_level: :normal
49
+
50
+ KernelShell.call_backticks \
51
+ "cd #{to}; git init -b main; git add .; git commit -m 'lizarb new app_1 (v#{Lizarb::VERSION})'",
52
+ log_level: :normal
53
+
54
+ log "Liza Application initialized at `#{to}`"
55
+ end
56
+ end
57
+
58
+ __END__
59
+
60
+ # view gitignore.gitignore.erb
61
+ # Ignore all files in all subdirectories
62
+ .gitignore
63
+ /.bundle/
64
+ /tmp/
65
+ *.sqlite
66
+ *.rdb
67
+
68
+ # view toolversions.txt.erb
69
+ ruby <%= RUBY_VERSION %>
70
+
71
+ # view Procfile.yml.erb
72
+ # HEROKU EXAMPLE
73
+
74
+ web: MODE=demo bundle exec liza rack h=0.0.0.0 p=$PORT
@@ -0,0 +1,11 @@
1
+ class DevSystem::NewGeneratorTest < DevSystem::SimpleGeneratorTest
2
+
3
+ test :subject_class do
4
+ assert subject_class == DevSystem::NewGenerator
5
+ end
6
+
7
+ test :settings do
8
+ assert_equality subject_class.log_level, 0
9
+ end
10
+
11
+ end