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,79 @@
1
+ class HappySystem::AxoGenerator < DevSystem::SimpleGenerator
2
+
3
+ # liza g axo name place=app
4
+
5
+ def call_default
6
+ @controller_class = Axo
7
+
8
+ name!
9
+ place!
10
+
11
+ @description = TtyInputCommand.prompt.ask("Do you want to add a description?", default: "No description")
12
+
13
+ @args = command.simple_args[1..-1]
14
+
15
+ create_controller @name, @controller_class, @place, @path do |unit, test|
16
+ unit.section :controller_section_1, caption: ""
17
+ test.section :controller_test_section_1, caption: ""
18
+ end
19
+ end
20
+
21
+ end
22
+
23
+ __END__
24
+
25
+ # view controller_section_1.rb.erb
26
+
27
+ set :description, <%= @description.inspect %>
28
+
29
+ # liza axo <%= @name %> 2 2
30
+ def call(args)
31
+ cycles = args[0] || "3"
32
+ sleep_time = args[1] || "3"
33
+
34
+ cycles = cycles.to_i
35
+ sleep_time = sleep_time.to_f / 10
36
+
37
+ array = <<-HEREDOC.split("\n")
38
+ >(.___.)<
39
+ >(.__.)<
40
+ >(.___.)< code
41
+ >(.__.)< code to
42
+ >(.___.)< code to the
43
+ >(.__.)< code to the right
44
+ >(.___.)< code to the right
45
+ >(.__.)<
46
+ code >(.___.)<
47
+ code to >(.__.)<
48
+ code to the >(.___.)<
49
+ code to the left >(.__.)<
50
+ code to the left >(.___.)<
51
+ >(.__.)<
52
+ HEREDOC
53
+
54
+ cycles.times do |i|
55
+ array.each_with_index do |s, j|
56
+ KernelShell.call_system "clear"
57
+
58
+ puts "Axo v0"
59
+ puts "frame: #{j}/#{array.size}"
60
+ puts "cycle: #{i}/#{cycles} (#{sleep_time}spf)"
61
+ puts
62
+ puts
63
+ puts " #{stick s, :bold, :light_white}"
64
+ puts
65
+
66
+ sleep sleep_time
67
+ end
68
+ end
69
+
70
+ puts stick "That was actually quite a nice workout session!", :black, :white
71
+ puts stick " We should do this again some time. ", :black, :white
72
+
73
+ end
74
+ # view controller_test_section_1.rb.erb
75
+
76
+ # test :subject_class, :subject do
77
+ # assert_equality <%= @class_name %>, subject_class
78
+ # assert_equality <%= @class_name %>, subject.class
79
+ # end
@@ -0,0 +1,11 @@
1
+ class HappySystem::AxoGeneratorTest < DevSystem::SimpleGeneratorTest
2
+
3
+ test :subject_class do
4
+ assert subject_class == HappySystem::AxoGenerator
5
+ end
6
+
7
+ test :settings do
8
+ assert_equality subject_class.log_level, 0
9
+ end
10
+
11
+ end
data/lib/happy_system.rb CHANGED
@@ -1,12 +1,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class HappySystem < Liza::System
4
- class Error < StandardError; end
4
+ class Error < Error; end
5
5
  # Your code goes here...
6
6
 
7
7
  #
8
8
 
9
- set :log_color, :magenta
9
+ color :coral
10
+
11
+ sub :axo
10
12
 
11
13
  #
12
14
  end
@@ -0,0 +1,134 @@
1
+ class LabSystem::KrokiClient < NetSystem::Client
2
+
3
+ #
4
+
5
+ def self.call(name, action, output_format, &block)
6
+ new(name, action, output_format, &block).call
7
+ end
8
+
9
+ # diagrams
10
+
11
+ def self.diagrams
12
+ fetch(:diagrams) { {} }
13
+ end
14
+
15
+ def self.diagram name, endpoint, *formats
16
+ diagrams[name] = {endpoint:, formats:}
17
+
18
+ define_singleton_method name do |action, format, &block|
19
+ call(name, action, format, &block)
20
+ end
21
+
22
+ define_singleton_method "new_#{name}" do |action, format, &block|
23
+ new(name, action, format, &block)
24
+ end
25
+ end
26
+
27
+ # define diagrams
28
+
29
+ # TODO: https://kroki.io/#support
30
+
31
+ # diagram :key, "/api", :png, :svg, :jpeg, :pdf, :txt, :base64
32
+ diagram :plantuml, "/plantuml", :svg
33
+ diagram :nomnoml, "/nomnoml", :svg
34
+
35
+ #
36
+
37
+ attr_reader :name, :action, :format, :result, :code, :cache_key
38
+
39
+ def initialize(name, action, format, &block)
40
+ @name = name
41
+ @render_format = name
42
+ @action = action
43
+ @format = format
44
+ @result = nil
45
+ instance_exec(&block) if block_given?
46
+ end
47
+
48
+ #
49
+
50
+ def call
51
+ t = Time.now
52
+ log "Calling #{endpoint} with #{action}.#{name}"
53
+
54
+ render_code!
55
+ read_cache!
56
+
57
+ return @result if @result
58
+
59
+ http_request!
60
+ write_cache!
61
+
62
+ @result
63
+ ensure
64
+ log "#{t.diff}s to render #{action.inspect}"
65
+ @result
66
+ end
67
+
68
+ #
69
+
70
+ def endpoint
71
+ self.class.diagrams[name][:endpoint]
72
+ end
73
+
74
+ def url
75
+ "#{KrokiDockerShell.url}#{endpoint}"
76
+ end
77
+
78
+ #
79
+
80
+ def render_code!
81
+ @code = render! @action
82
+ require "digest/md5"
83
+ @code_md5 = Digest::MD5.hexdigest(@code)
84
+ end
85
+
86
+ def read_cache!
87
+ raise "must be called after render_code!" unless @code_md5
88
+ @cache_key = "tmp/#{App.mode}/clients/kokri/#{action}_#{@code_md5}.#{format}"
89
+ log "cache_key = #{@cache_key.inspect}"
90
+ @result = TextShell.read @cache_key if TextShell.exist? @cache_key
91
+ end
92
+
93
+ def write_cache!
94
+ TextShell.write @cache_key, result
95
+ cache_key = "tmp/#{App.mode}/clients/kokri/#{action}_#{@code_md5}.#{name}"
96
+ TextShell.write cache_key, @code
97
+ end
98
+
99
+ def http_request!
100
+ require "net/http"
101
+ require "json"
102
+ t = Time.now
103
+
104
+ request_uri = URI(url)
105
+ request_headers = {'Content-Type' => 'application/json'}
106
+ request_body = {diagram_source: code, output_format: format}.to_json
107
+ log "POST #{request_uri} #{request_headers.count} headers and #{request_body.size} bytes of data."
108
+ @response = Net::HTTP.post(request_uri, request_body, request_headers)
109
+
110
+ if @response.code == '200'
111
+ @result = @response.body
112
+ else
113
+ puts "---- HTTP #{@response.code} ----"
114
+ puts @response.body
115
+ puts "----"
116
+ raise "Error calling Kroki API. HTTP Status Code: #{@response.code}"
117
+ end
118
+ ensure
119
+ log "#{t.diff}s to request #{request_uri}"
120
+ end
121
+
122
+ end
123
+
124
+ __END__
125
+
126
+ # view ab.plantuml.erb
127
+
128
+ @startuml
129
+ A <|.. B
130
+ @enduml
131
+
132
+ # view ab.nomnoml.erb
133
+
134
+ [A]<:-[B]
@@ -0,0 +1,32 @@
1
+ class LabSystem::KrokiClientTest < NetSystem::ClientTest
2
+
3
+ test :subject_class do
4
+ assert_equality subject_class, LabSystem::KrokiClient
5
+ end
6
+
7
+ test :settings do
8
+ assert_equality subject_class.log_level, 0
9
+ end
10
+
11
+ #
12
+
13
+ test :call do
14
+ result = subject_class.call(:nomnoml, :ab, :svg)
15
+ assert result.start_with? "<svg"
16
+ end
17
+
18
+ #
19
+
20
+ test :nomnoml do
21
+ result = subject_class.nomnoml(:ab, :svg)
22
+ assert result.start_with? "<svg"
23
+ end
24
+
25
+ test :plantuml do
26
+ result = subject_class.plantuml(:ab, :svg)
27
+ unless assert result.start_with? %|<?xml version="1.0" encoding="us-ascii" standalone="no"?><svg|
28
+ puts result
29
+ end
30
+ end
31
+
32
+ end
@@ -0,0 +1,176 @@
1
+ class LabSystem::LizaKrokiClient < LabSystem::KrokiClient
2
+
3
+ def puml
4
+ @puml ||= PlantumlHelper.new
5
+ end
6
+
7
+ class PlantumlHelper
8
+ def unit_type_for klass
9
+ case klass.last_namespace
10
+ when "Test"
11
+ "safety"
12
+ when "Box", "Part", "System"
13
+ "meta"
14
+ when "Panel", "Controller"
15
+ "base"
16
+ else
17
+ "other"
18
+ end
19
+ end
20
+
21
+ def name_for klass
22
+ return "Liza.Unit" if klass == Liza::Unit
23
+ if klass.first_namespace == "Liza"
24
+ return "Liza.#{unit_type_for klass}.#{klass.last_namespace}"
25
+ end
26
+
27
+ klass = "Object::#{klass}" unless klass.to_s.include? "::"
28
+ klass.to_s.gsub "::", "."
29
+ end
30
+
31
+ def package_object
32
+ "package Object #ffffff;text:000000;line.bold;line:black"
33
+ end
34
+
35
+ def package_system_in_object system, color
36
+ "package #{ name_for system } #{ color };line.bold;line:black;text:black"
37
+ end
38
+
39
+ def package_system system, color
40
+ "package #{ system } #{ color };line.bold;line:black;text:black"
41
+ end
42
+
43
+ def package_box box, color
44
+ %|node #{ name_for box } as "#{ box.last_namespace }" #{ color };line.bold;line:black;text:black|
45
+ end
46
+
47
+ def rectangle_unit_type unit_type
48
+ %|rectangle Liza.#{ unit_type } as "#{ unit_type } units" #ffffff;text:000000;line.bold;line:black|
49
+ end
50
+
51
+ def inheritance klass
52
+ association klass.superclass, klass, "<|-down--"
53
+ end
54
+
55
+ def association a, b, arrow
56
+ %(#{ name_for a } #{arrow} #{ name_for b })
57
+ end
58
+ end
59
+
60
+ end
61
+
62
+ __END__
63
+
64
+ # view liza_1.plantuml.erb
65
+
66
+ @startuml
67
+ top to bottom direction
68
+ skinparam groupInheritance 2
69
+
70
+ <style>
71
+ document {
72
+ BackgroundColor white
73
+ }
74
+ package {
75
+
76
+ }
77
+ componentDiagram {
78
+
79
+ }
80
+ classDiagram {
81
+ rectangle {
82
+ }
83
+ package {
84
+ }
85
+ node {
86
+ FontStyle bold
87
+ }
88
+ hexagon {
89
+ FontStyle bold
90
+ }
91
+ class {
92
+ header {
93
+ FontSize 14
94
+ FontStyle bold
95
+ }
96
+ }
97
+ }
98
+ </style>
99
+
100
+ <%= render! :units %>
101
+ <%= render! :systems_in_objects %>
102
+ <%= render! :systems %>
103
+ <%= render! :boxes %>
104
+ <%= render! :subs %>
105
+ <%= render! :objects %>
106
+
107
+ @enduml
108
+
109
+ # view units.plantuml.erb
110
+ <% unit_types = @units.map { puml.unit_type_for _1 }.uniq -%>
111
+ 'unit_type'
112
+ <% unit_types.each do |unit_type| -%>
113
+ <%= puml.rectangle_unit_type unit_type %> {
114
+ }
115
+ <% end -%>
116
+ 'units'
117
+ <% @units.each do |unit| -%>
118
+ <%= puml.inheritance unit %>
119
+ <% end -%>
120
+
121
+ # view systems_in_objects.plantuml.erb
122
+ 'systems in objects'
123
+ <% Array(@systems_in_objects).each do |system| -%>
124
+ <% color = ColorShell.rgb_to_str system.color -%>
125
+ <%= puml.package_system_in_object system, color %> {
126
+ }
127
+ <% end.each do |system| -%>
128
+ <%= puml.inheritance system %>
129
+ <% end -%>
130
+
131
+ # view systems.plantuml.erb
132
+ 'systems'
133
+ <% Array(@systems).each do |system| -%>
134
+ <% color = ColorShell.rgb_to_str system.color -%>
135
+ <%= puml.package_system system, color %> {
136
+ }
137
+ <% end -%>
138
+
139
+ # view boxes.plantuml.erb
140
+ 'boxes'
141
+ <% Array(@boxes).each do |box| -%>
142
+ <% color = ColorShell.rgb_to_str box.system.color -%>
143
+ <%= puml.package_box box.superclass, color %> {
144
+ }
145
+ <%= puml.package_box box, color %> {
146
+ }
147
+ <%= puml.inheritance box.superclass %>
148
+ <%= puml.inheritance box %>
149
+ <% end -%>
150
+
151
+ # view subs.plantuml.erb
152
+ 'subs'
153
+ <% Array(@subs).each do |controller| -%>
154
+ <% color = ColorShell.rgb_to_str controller.division.system.color -%>
155
+ <% panel = controller.panel.class -%>
156
+ <%= puml.inheritance panel %>
157
+ <%= puml.inheritance controller %>
158
+
159
+ hexagon <%= puml.name_for panel %> <%= color %>;text:000000;line.bold; {
160
+ }
161
+ class <%= puml.name_for controller %> <%= color %>;text:000000;line.bold; {
162
+ a hierarchy of <%= controller.plural %>
163
+ }
164
+ <% end -%>
165
+
166
+ # view objects.plantuml.erb
167
+ 'objects'
168
+ <%= puml.package_object %> {
169
+ }
170
+ <% Array(@objects).each do |controller| -%>
171
+ <% color = ColorShell.rgb_to_str controller.division.system.color %>
172
+ class <%= puml.name_for controller %> <%= color %>;text:000000;line.bold; {
173
+ <%= "division #{controller.plural}" if controller.division? %>
174
+ }
175
+ <%= puml.inheritance controller %>
176
+ <% end -%>
@@ -0,0 +1,32 @@
1
+ class LabSystem::LizaKrokiClientTest < LabSystem::KrokiClientTest
2
+
3
+ test :subject_class do
4
+ assert_equality subject_class, LabSystem::LizaKrokiClient
5
+ end
6
+
7
+ test :settings do
8
+ assert_equality subject_class.log_level, 0
9
+ end
10
+
11
+ #
12
+
13
+ test :call do
14
+ result = subject_class.call(:nomnoml, :ab, :svg)
15
+ assert result.start_with? "<svg"
16
+ end
17
+
18
+ #
19
+
20
+ test :nomnoml do
21
+ result = subject_class.nomnoml(:ab, :svg)
22
+ assert result.start_with? "<svg"
23
+ end
24
+
25
+ test :plantuml do
26
+ result = subject_class.plantuml(:ab, :svg)
27
+ unless assert result.start_with? %|<?xml version="1.0" encoding="us-ascii" standalone="no"?><svg|
28
+ puts result
29
+ end
30
+ end
31
+
32
+ end
@@ -0,0 +1,61 @@
1
+ class LabSystem::DockerCommand < DevSystem::Command
2
+
3
+ # liza docker
4
+
5
+ def self.call args
6
+ log "args = #{args.inspect}"
7
+
8
+ log "not implemented"
9
+ end
10
+
11
+ # liza docker:kroki
12
+
13
+ def self.kroki args
14
+ KrokiDockerShell.start_blocking_server
15
+ end
16
+
17
+ # liza docker:hello
18
+
19
+ def self.hello args
20
+ t = Time.now
21
+ log "args = #{args.inspect}"
22
+
23
+ DockerShell.alpine_hello
24
+ ensure
25
+ log "#{t.diff} | done"
26
+ end
27
+
28
+ # liza docker:version
29
+
30
+ def self.version args
31
+ log "args = #{args.inspect}"
32
+
33
+ h = DockerShell.version
34
+
35
+ log "h.keys = #{h.keys.inspect}"
36
+
37
+ puts
38
+
39
+ log "Client"
40
+
41
+ log_hash h["Client"]
42
+
43
+ puts
44
+
45
+ log "Server"
46
+ log "Name = #{h["Server"]["Name"]}"
47
+ puts
48
+ log "Engine"
49
+ log_hash h["Server"]["Engine"]
50
+ puts
51
+ log "containerd"
52
+ log_hash h["Server"]["containerd"]
53
+ puts
54
+ log "runc"
55
+ log_hash h["Server"]["runc"]
56
+ puts
57
+ log "docker-init"
58
+ log_hash h["Server"]["docker-init"]
59
+ end
60
+
61
+ end
@@ -0,0 +1,11 @@
1
+ class LabSystem::DockerCommandTest < DevSystem::CommandTest
2
+
3
+ test :subject_class do
4
+ assert_equality subject_class, LabSystem::DockerCommand
5
+ end
6
+
7
+ test :settings do
8
+ assert_equality subject_class.log_level, 0
9
+ end
10
+
11
+ end
@@ -0,0 +1,5 @@
1
+ class LabSystem::LabBox < Liza::Box
2
+
3
+ #
4
+
5
+ end
@@ -0,0 +1,8 @@
1
+ class LabSystem::LabBoxTest < Liza::BoxTest
2
+
3
+ test :subject_class, :subject do
4
+ assert_equality LabSystem::LabBox, subject_class
5
+ assert_equality LabSystem::LabBox, subject.class
6
+ end
7
+
8
+ end