scarpe 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (251) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +7 -1
  3. data/CHANGELOG.md +36 -4
  4. data/Gemfile +2 -1
  5. data/Gemfile.lock +13 -3
  6. data/LICENSE.txt +7 -1
  7. data/README.md +77 -14
  8. data/Rakefile +67 -0
  9. data/examples/Edit_box_Styles.rb +8 -0
  10. data/examples/Kerning.rb +7 -0
  11. data/examples/border.rb +11 -0
  12. data/examples/check.rb +2 -0
  13. data/examples/download_and_show_image.rb +3 -0
  14. data/examples/flags/finland.rb +15 -0
  15. data/examples/flags/italy.rb +11 -0
  16. data/examples/flags/mauritius.rb +14 -0
  17. data/examples/font_family.rb +17 -0
  18. data/examples/font_shorthand.rb +9 -0
  19. data/examples/gen.rb +4 -0
  20. data/examples/legacy/not_checked/shoes-manual/append.rb +10 -0
  21. data/examples/legacy/not_checked/shoes-manual/background_change.rb +12 -0
  22. data/examples/legacy/not_checked/shoes-manual/background_pattern.rb +5 -0
  23. data/examples/legacy/not_checked/shoes-manual/basic_app.rb +8 -0
  24. data/examples/legacy/not_checked/shoes-manual/border.rb +9 -0
  25. data/examples/legacy/not_checked/shoes-manual/builtins/FONTS.rb +5 -0
  26. data/examples/legacy/not_checked/shoes-manual/builtins/ask.rb +2 -0
  27. data/examples/legacy/not_checked/shoes-manual/builtins/ask_color.rb +5 -0
  28. data/examples/legacy/not_checked/shoes-manual/builtins/ask_open_file.rb +5 -0
  29. data/examples/legacy/not_checked/shoes-manual/builtins/ask_save_folder.rb +2 -0
  30. data/examples/legacy/not_checked/shoes-manual/builtins/confirm.rb +4 -0
  31. data/examples/legacy/not_checked/shoes-manual/builtins/debug.rb +2 -0
  32. data/examples/legacy/not_checked/shoes-manual/builtins/info.rb +3 -0
  33. data/examples/legacy/not_checked/shoes-manual/button.rb +9 -0
  34. data/examples/legacy/not_checked/shoes-manual/clear.rb +7 -0
  35. data/examples/legacy/not_checked/shoes-manual/custom_header.rb +13 -0
  36. data/examples/legacy/not_checked/shoes-manual/displace.rb +14 -0
  37. data/examples/legacy/not_checked/shoes-manual/edit_box.rb +8 -0
  38. data/examples/legacy/not_checked/shoes-manual/fill_pattern.rb +5 -0
  39. data/examples/legacy/not_checked/shoes-manual/fonts.rb +7 -0
  40. data/examples/legacy/not_checked/shoes-manual/gutter.rb +6 -0
  41. data/examples/legacy/not_checked/shoes-manual/image_web.rb +4 -0
  42. data/examples/legacy/not_checked/shoes-manual/keypress.rb +7 -0
  43. data/examples/legacy/not_checked/shoes-manual/list_box.rb +10 -0
  44. data/examples/legacy/not_checked/shoes-manual/motion.rb +10 -0
  45. data/examples/legacy/not_checked/shoes-manual/mouse.rb +8 -0
  46. data/examples/legacy/not_checked/shoes-manual/move.rb +14 -0
  47. data/examples/legacy/not_checked/shoes-manual/nested_ovals.rb +8 -0
  48. data/examples/legacy/not_checked/shoes-manual/oval.rb +7 -0
  49. data/examples/legacy/not_checked/shoes-manual/ovals.rb +6 -0
  50. data/examples/legacy/not_checked/shoes-manual/ovals_image.rb +8 -0
  51. data/examples/legacy/not_checked/shoes-manual/prepend.rb +7 -0
  52. data/examples/legacy/not_checked/shoes-manual/progress_bar.rb +10 -0
  53. data/examples/legacy/not_checked/shoes-manual/radio.rb +18 -0
  54. data/examples/legacy/not_checked/shoes-manual/radio_alternative_1.rb +7 -0
  55. data/examples/legacy/not_checked/shoes-manual/radio_alternative_2.rb +9 -0
  56. data/examples/legacy/not_checked/shoes-manual/rotate_rectangle.rb +6 -0
  57. data/examples/legacy/not_checked/shoes-manual/shape.rb +11 -0
  58. data/examples/legacy/not_checked/shoes-manual/static/avatar.png +0 -0
  59. data/examples/legacy/not_checked/shoes-manual/stroke.rb +5 -0
  60. data/examples/legacy/not_checked/shoes-manual/style.rb +3 -0
  61. data/examples/legacy/not_checked/shoes-manual/style_alternative_1.rb +4 -0
  62. data/examples/legacy/not_checked/shoes-manual/style_alternative_2.rb +5 -0
  63. data/examples/legacy/not_checked/shoes-manual/style_length.rb +5 -0
  64. data/examples/legacy/not_checked/shoes-manual/timer.rb +6 -0
  65. data/examples/legacy/not_checked/shoes-manual/trigger_window.rb +8 -0
  66. data/examples/legacy/not_checked/shoes-manual/window_owner.rb +8 -0
  67. data/examples/legacy/working/shoes_manual/alert_button.rb +2 -0
  68. data/examples/legacy/working/shoes_manual/animate.rb +7 -0
  69. data/examples/legacy/working/shoes_manual/background_para.rb +4 -0
  70. data/examples/legacy/working/shoes_manual/button_alternative.rb +7 -0
  71. data/examples/legacy/working/shoes_manual/checkbox.rb +17 -0
  72. data/examples/legacy/working/shoes_manual/download.rb +12 -0
  73. data/examples/legacy/working/shoes_manual/edit_box.rb +6 -0
  74. data/examples/legacy/working/shoes_manual/editline.rb +7 -0
  75. data/examples/legacy/working/shoes_manual/fixed_height.rb +8 -0
  76. data/examples/legacy/working/shoes_manual/fixed_width.rb +12 -0
  77. data/examples/legacy/working/shoes_manual/image.rb +5 -0
  78. data/examples/legacy/working/shoes_manual/instance_variable_check.rb +10 -0
  79. data/examples/legacy/working/shoes_manual/message.rb +18 -0
  80. data/examples/legacy/working/shoes_manual/rectangle.rb +6 -0
  81. data/examples/legacy/working/shoes_manual/save_download.rb +12 -0
  82. data/examples/legacy/working/shoes_manual/self_check.rb +10 -0
  83. data/examples/legacy/working/shoes_manual/stack.rb +7 -0
  84. data/examples/legacy/working/shoes_manual/style_info.rb +8 -0
  85. data/examples/legacy/working/shoes_manual/utf8_support.rb +8 -0
  86. data/examples/legacy/working/shoes_manual/width.rb +4 -0
  87. data/examples/local_assets/multi_image.rb +5 -0
  88. data/examples/local_assets/small.png +0 -0
  89. data/examples/local_fonts.rb +3 -0
  90. data/examples/margin.rb +13 -0
  91. data/examples/margin_check.rb +27 -0
  92. data/examples/oval-with-kwargs.rb +3 -0
  93. data/examples/oval.rb +26 -0
  94. data/examples/para_font_styles.rb +17 -0
  95. data/examples/para_font_variant.rb +6 -0
  96. data/examples/para_fontweight.rb +13 -0
  97. data/examples/parse_xl_funnies.rb +3 -0
  98. data/examples/rect.rb +1 -1
  99. data/examples/scarpe_ext.rb +3 -0
  100. data/examples/shapes/star.rb +1 -3
  101. data/examples/spacing.rb +1 -1
  102. data/examples/span.rb +4 -2
  103. data/lacci/lacci.gemspec +2 -2
  104. data/lacci/lib/lacci/scarpe_cli.rb +0 -1
  105. data/lacci/lib/lacci/version.rb +1 -1
  106. data/lacci/lib/scarpe/niente/display_service.rb +5 -1
  107. data/lacci/lib/scarpe/niente/drawable.rb +2 -0
  108. data/lacci/lib/scarpe/niente/shoes_spec.rb +7 -1
  109. data/lacci/lib/scarpe/niente.rb +14 -2
  110. data/lacci/lib/shoes/app.rb +44 -50
  111. data/lacci/lib/shoes/constants.rb +23 -2
  112. data/lacci/lib/shoes/display_service.rb +43 -4
  113. data/lacci/lib/shoes/drawable.rb +309 -35
  114. data/lacci/lib/shoes/drawables/arc.rb +2 -24
  115. data/lacci/lib/shoes/drawables/arrow.rb +2 -22
  116. data/lacci/lib/shoes/drawables/border.rb +28 -0
  117. data/lacci/lib/shoes/drawables/button.rb +4 -20
  118. data/lacci/lib/shoes/drawables/check.rb +7 -3
  119. data/lacci/lib/shoes/drawables/document_root.rb +4 -4
  120. data/lacci/lib/shoes/drawables/edit_box.rb +6 -5
  121. data/lacci/lib/shoes/drawables/edit_line.rb +5 -4
  122. data/lacci/lib/shoes/drawables/flow.rb +3 -5
  123. data/lacci/lib/shoes/drawables/font_helper.rb +62 -0
  124. data/lacci/lib/shoes/drawables/image.rb +2 -2
  125. data/lacci/lib/shoes/drawables/line.rb +4 -7
  126. data/lacci/lib/shoes/drawables/link.rb +5 -8
  127. data/lacci/lib/shoes/drawables/list_box.rb +8 -5
  128. data/lacci/lib/shoes/drawables/oval.rb +48 -0
  129. data/lacci/lib/shoes/drawables/para.rb +106 -18
  130. data/lacci/lib/shoes/drawables/progress.rb +2 -1
  131. data/lacci/lib/shoes/drawables/radio.rb +5 -3
  132. data/lacci/lib/shoes/drawables/rect.rb +5 -4
  133. data/lacci/lib/shoes/drawables/shape.rb +2 -1
  134. data/lacci/lib/shoes/drawables/slot.rb +99 -8
  135. data/lacci/lib/shoes/drawables/stack.rb +6 -11
  136. data/lacci/lib/shoes/drawables/star.rb +8 -30
  137. data/lacci/lib/shoes/drawables/text_drawable.rb +93 -34
  138. data/lacci/lib/shoes/drawables/video.rb +3 -2
  139. data/lacci/lib/shoes/drawables/widget.rb +8 -3
  140. data/lacci/lib/shoes/drawables.rb +2 -1
  141. data/lacci/lib/shoes/errors.rb +13 -3
  142. data/lacci/lib/shoes/margin_helper.rb +79 -0
  143. data/lacci/lib/shoes.rb +4 -3
  144. data/lacci/test/.gitignore +1 -0
  145. data/lacci/test/test_draw_context.rb +167 -0
  146. data/lacci/test/test_font_helper.rb +57 -0
  147. data/lacci/test/test_helper.rb +31 -4
  148. data/lacci/test/test_lacci.rb +93 -6
  149. data/lacci/test/test_margin_helper.rb +82 -0
  150. data/lacci/test/test_niente_test_infra.rb +26 -0
  151. data/lacci/test/test_oval.rb +82 -0
  152. data/lacci/test/test_parenting.rb +140 -0
  153. data/lacci/test/test_text_drawables.rb +23 -0
  154. data/lib/scarpe/assets.rb +18 -0
  155. data/lib/scarpe/cats_cradle.rb +57 -98
  156. data/lib/scarpe/shoes_spec.rb +22 -43
  157. data/lib/scarpe/version.rb +1 -1
  158. data/lib/scarpe/wv/app.rb +1 -0
  159. data/lib/scarpe/wv/arc.rb +0 -4
  160. data/lib/scarpe/wv/border.rb +15 -0
  161. data/lib/scarpe/wv/control_interface.rb +2 -10
  162. data/lib/scarpe/wv/document_root.rb +2 -2
  163. data/lib/scarpe/wv/drawable.rb +6 -40
  164. data/lib/scarpe/wv/edit_box.rb +4 -1
  165. data/lib/scarpe/wv/edit_line.rb +5 -2
  166. data/lib/scarpe/wv/image.rb +2 -5
  167. data/lib/scarpe/wv/link.rb +4 -2
  168. data/lib/scarpe/wv/oval.rb +13 -0
  169. data/lib/scarpe/wv/para.rb +1 -0
  170. data/lib/scarpe/wv/scarpe_extensions.rb +8 -0
  171. data/lib/scarpe/wv/shape.rb +10 -5
  172. data/lib/scarpe/wv/text_drawable.rb +72 -14
  173. data/lib/scarpe/wv/web_wrangler.rb +33 -11
  174. data/lib/scarpe/wv/webview_local_display.rb +6 -2
  175. data/lib/scarpe/wv.rb +8 -1
  176. data/scarpe-components/Gemfile +4 -1
  177. data/scarpe-components/Gemfile.lock +2 -3
  178. data/scarpe-components/README.md +2 -2
  179. data/scarpe-components/assets/bootstrap-themes/bootstrap-cerulean.css +12229 -0
  180. data/scarpe-components/assets/bootstrap-themes/bootstrap-cosmo.css +11810 -0
  181. data/scarpe-components/assets/bootstrap-themes/bootstrap-cyborg.css +12210 -0
  182. data/scarpe-components/assets/bootstrap-themes/bootstrap-darkly.css +12153 -0
  183. data/scarpe-components/assets/bootstrap-themes/bootstrap-flatly.css +12126 -0
  184. data/scarpe-components/assets/bootstrap-themes/bootstrap-icons.min.css +5 -0
  185. data/scarpe-components/assets/bootstrap-themes/bootstrap-journal.css +12099 -0
  186. data/scarpe-components/assets/bootstrap-themes/bootstrap-litera.css +12211 -0
  187. data/scarpe-components/assets/bootstrap-themes/bootstrap-lumen.css +12369 -0
  188. data/scarpe-components/assets/bootstrap-themes/bootstrap-lux.css +11928 -0
  189. data/scarpe-components/assets/bootstrap-themes/bootstrap-materia.css +13184 -0
  190. data/scarpe-components/assets/bootstrap-themes/bootstrap-minty.css +12177 -0
  191. data/scarpe-components/assets/bootstrap-themes/bootstrap-morph.css +12750 -0
  192. data/scarpe-components/assets/bootstrap-themes/bootstrap-pulse.css +11890 -0
  193. data/scarpe-components/assets/bootstrap-themes/bootstrap-quartz.css +12622 -0
  194. data/scarpe-components/assets/bootstrap-themes/bootstrap-sandstone.css +12201 -0
  195. data/scarpe-components/assets/bootstrap-themes/bootstrap-simplex.css +12186 -0
  196. data/scarpe-components/assets/bootstrap-themes/bootstrap-sketchy.css +12451 -0
  197. data/scarpe-components/assets/bootstrap-themes/bootstrap-slate.css +12492 -0
  198. data/scarpe-components/assets/bootstrap-themes/bootstrap-solar.css +12149 -0
  199. data/scarpe-components/assets/bootstrap-themes/bootstrap-spacelab.css +12266 -0
  200. data/scarpe-components/assets/bootstrap-themes/bootstrap-superhero.css +12216 -0
  201. data/scarpe-components/assets/bootstrap-themes/bootstrap-united.css +12077 -0
  202. data/scarpe-components/assets/bootstrap-themes/bootstrap-vapor.css +12549 -0
  203. data/scarpe-components/assets/bootstrap-themes/bootstrap-yeti.css +12325 -0
  204. data/scarpe-components/assets/bootstrap-themes/bootstrap-zephyr.css +12283 -0
  205. data/scarpe-components/assets/bootstrap-themes/bootstrap.bundle.min.js +7 -0
  206. data/scarpe-components/lib/scarpe/components/asset_server.rb +219 -0
  207. data/scarpe-components/lib/scarpe/components/base64.rb +22 -0
  208. data/scarpe-components/lib/scarpe/components/calzini/{art_widgets.rb → art_drawables.rb} +42 -18
  209. data/scarpe-components/lib/scarpe/components/calzini/border.rb +38 -0
  210. data/scarpe-components/lib/scarpe/components/calzini/button.rb +6 -8
  211. data/scarpe-components/lib/scarpe/components/calzini/misc.rb +7 -17
  212. data/scarpe-components/lib/scarpe/components/calzini/para.rb +213 -11
  213. data/scarpe-components/lib/scarpe/components/calzini/slots.rb +14 -60
  214. data/scarpe-components/lib/scarpe/components/calzini.rb +88 -1
  215. data/scarpe-components/lib/scarpe/components/errors.rb +4 -0
  216. data/scarpe-components/lib/scarpe/components/html.rb +4 -1
  217. data/scarpe-components/lib/scarpe/components/minitest_export_reporter.rb +11 -3
  218. data/scarpe-components/lib/scarpe/components/minitest_result.rb +41 -0
  219. data/scarpe-components/lib/scarpe/components/print_logger.rb +17 -2
  220. data/scarpe-components/lib/scarpe/components/process_helpers.rb +37 -0
  221. data/scarpe-components/lib/scarpe/components/segmented_file_loader.rb +1 -1
  222. data/scarpe-components/lib/scarpe/components/tiranti.rb +42 -100
  223. data/scarpe-components/lib/scarpe/components/unit_test_helpers.rb +3 -1
  224. data/scarpe-components/lib/scarpe/components/version.rb +1 -1
  225. data/scarpe-components/test/assets/big-image.png +0 -0
  226. data/scarpe-components/test/assets/big-stylesheet.css +497 -0
  227. data/scarpe-components/test/assets/little-image.png +0 -0
  228. data/scarpe-components/test/assets/little-stylesheet.css +1 -0
  229. data/scarpe-components/test/calzini/test_calzini_art_drawables.rb +7 -7
  230. data/scarpe-components/test/calzini/test_calzini_button.rb +7 -5
  231. data/scarpe-components/test/calzini/test_calzini_misc.rb +9 -9
  232. data/scarpe-components/test/calzini/test_calzini_para.rb +6 -9
  233. data/scarpe-components/test/calzini/test_calzini_slots.rb +12 -57
  234. data/scarpe-components/test/calzini/test_calzini_text_drawables.rb +83 -18
  235. data/scarpe-components/test/calzini/test_various.rb +133 -0
  236. data/scarpe-components/test/test_asset_server.rb +72 -0
  237. data/scarpe-components/test/test_components.rb +31 -2
  238. data/scarpe-components/test/test_helper.rb +0 -1
  239. data/scarpe-components/test/test_minitest_result.rb +7 -0
  240. data/scarpe-components/test/test_segmented_app_files.rb +2 -0
  241. data/tasks/check_html_fixtures.rb +140 -0
  242. data/tasks/regenerate_html_fixtures.rb +104 -0
  243. data/templates/class_template_with_shapes.erb +0 -11
  244. metadata +180 -32
  245. data/lacci/lib/scarpe/niente/logger.rb +0 -29
  246. data/lacci/lib/shoes/drawables/span.rb +0 -27
  247. data/lacci/lib/shoes/spacing.rb +0 -9
  248. data/lib/scarpe/evented_assertions.rb +0 -121
  249. data/lib/scarpe/wv/span.rb +0 -44
  250. data/scarpe-components/lib/scarpe/components/calzini/text_widgets.rb +0 -65
  251. /data/examples/legacy/{not_checked → working}/shoes3-tests/editline/editline.rb +0 -0
metadata CHANGED
@@ -1,86 +1,101 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: scarpe
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marco Concetto Rudilosso
8
8
  - Noah Gibbs
9
+ - Nicholas Schwaderer
9
10
  autorequire:
10
11
  bindir: exe
11
12
  cert_chain: []
12
- date: 2023-11-24 00:00:00.000000000 Z
13
+ date: 2024-05-06 00:00:00.000000000 Z
13
14
  dependencies:
14
15
  - !ruby/object:Gem::Dependency
15
16
  name: fastimage
16
17
  requirement: !ruby/object:Gem::Requirement
17
18
  requirements:
18
- - - ">="
19
+ - - "~>"
19
20
  - !ruby/object:Gem::Version
20
- version: '0'
21
+ version: 2.2.7
21
22
  type: :runtime
22
23
  prerelease: false
23
24
  version_requirements: !ruby/object:Gem::Requirement
24
25
  requirements:
25
- - - ">="
26
+ - - "~>"
26
27
  - !ruby/object:Gem::Version
27
- version: '0'
28
+ version: 2.2.7
28
29
  - !ruby/object:Gem::Dependency
29
30
  name: nokogiri
30
31
  requirement: !ruby/object:Gem::Requirement
31
32
  requirements:
32
- - - ">="
33
+ - - "~>"
33
34
  - !ruby/object:Gem::Version
34
- version: '0'
35
+ version: 1.15.2
35
36
  type: :runtime
36
37
  prerelease: false
37
38
  version_requirements: !ruby/object:Gem::Requirement
38
39
  requirements:
39
- - - ">="
40
+ - - "~>"
40
41
  - !ruby/object:Gem::Version
41
- version: '0'
42
+ version: 1.15.2
42
43
  - !ruby/object:Gem::Dependency
43
44
  name: sqlite3
44
45
  requirement: !ruby/object:Gem::Requirement
45
46
  requirements:
46
- - - ">="
47
+ - - "~>"
47
48
  - !ruby/object:Gem::Version
48
- version: '0'
49
+ version: 1.6.3
49
50
  type: :runtime
50
51
  prerelease: false
51
52
  version_requirements: !ruby/object:Gem::Requirement
52
53
  requirements:
53
- - - ">="
54
+ - - "~>"
54
55
  - !ruby/object:Gem::Version
55
- version: '0'
56
+ version: 1.6.3
57
+ - !ruby/object:Gem::Dependency
58
+ name: webrick
59
+ requirement: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - "~>"
62
+ - !ruby/object:Gem::Version
63
+ version: 1.7.0
64
+ type: :runtime
65
+ prerelease: false
66
+ version_requirements: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - "~>"
69
+ - !ruby/object:Gem::Version
70
+ version: 1.7.0
56
71
  - !ruby/object:Gem::Dependency
57
72
  name: lacci
58
73
  requirement: !ruby/object:Gem::Requirement
59
74
  requirements:
60
- - - ">="
75
+ - - "~>"
61
76
  - !ruby/object:Gem::Version
62
- version: '0'
77
+ version: 0.4.0
63
78
  type: :runtime
64
79
  prerelease: false
65
80
  version_requirements: !ruby/object:Gem::Requirement
66
81
  requirements:
67
- - - ">="
82
+ - - "~>"
68
83
  - !ruby/object:Gem::Version
69
- version: '0'
84
+ version: 0.4.0
70
85
  - !ruby/object:Gem::Dependency
71
86
  name: scarpe-components
72
87
  requirement: !ruby/object:Gem::Requirement
73
88
  requirements:
74
- - - ">="
89
+ - - "~>"
75
90
  - !ruby/object:Gem::Version
76
- version: '0'
91
+ version: 0.4.0
77
92
  type: :runtime
78
93
  prerelease: false
79
94
  version_requirements: !ruby/object:Gem::Requirement
80
95
  requirements:
81
- - - ">="
96
+ - - "~>"
82
97
  - !ruby/object:Gem::Version
83
- version: '0'
98
+ version: 0.4.0
84
99
  - !ruby/object:Gem::Dependency
85
100
  name: bloops
86
101
  requirement: !ruby/object:Gem::Requirement
@@ -127,6 +142,7 @@ description:
127
142
  email:
128
143
  - marcoc.r@outlook.com
129
144
  - the.codefolio.guy@gmail.com
145
+ - nicholas.schwaderer@gmail.com
130
146
  executables:
131
147
  - scarpe
132
148
  extensions: []
@@ -212,6 +228,8 @@ files:
212
228
  - docs/yard/catscradle.md
213
229
  - docs/yard/template/default/fulldoc/html/setup.rb
214
230
  - docs/yard/template/default/layout/html/setup.rb
231
+ - examples/Edit_box_Styles.rb
232
+ - examples/Kerning.rb
215
233
  - examples/animate.rb
216
234
  - examples/arrow.rb
217
235
  - examples/background_with_image.rb
@@ -225,6 +243,7 @@ files:
225
243
  - examples/bloopsaphone/working/morning_serenity.rb
226
244
  - examples/bloopsaphone/working/simpsons_theme_song_by_why.rb
227
245
  - examples/bloopsaphone/working/tune_cheeky_drat.rb
246
+ - examples/border.rb
228
247
  - examples/btn_tooltip.rb
229
248
  - examples/button.rb
230
249
  - examples/button_alert.rb
@@ -239,7 +258,12 @@ files:
239
258
  - examples/download_and_show_image.rb
240
259
  - examples/edit_box.rb
241
260
  - examples/edit_line.rb
261
+ - examples/flags/finland.rb
262
+ - examples/flags/italy.rb
263
+ - examples/flags/mauritius.rb
242
264
  - examples/flow.rb
265
+ - examples/font_family.rb
266
+ - examples/font_shorthand.rb
243
267
  - examples/fonts.rb
244
268
  - examples/gen.rb
245
269
  - examples/get_headers.rb
@@ -375,6 +399,53 @@ files:
375
399
  - examples/legacy/not_checked/shoes-contrib/styles/para-style-method.rb
376
400
  - examples/legacy/not_checked/shoes-dep-samples/expert-game-of-life.rb
377
401
  - examples/legacy/not_checked/shoes-dep-samples/expert-othello.rb
402
+ - examples/legacy/not_checked/shoes-manual/append.rb
403
+ - examples/legacy/not_checked/shoes-manual/background_change.rb
404
+ - examples/legacy/not_checked/shoes-manual/background_pattern.rb
405
+ - examples/legacy/not_checked/shoes-manual/basic_app.rb
406
+ - examples/legacy/not_checked/shoes-manual/border.rb
407
+ - examples/legacy/not_checked/shoes-manual/builtins/FONTS.rb
408
+ - examples/legacy/not_checked/shoes-manual/builtins/ask.rb
409
+ - examples/legacy/not_checked/shoes-manual/builtins/ask_color.rb
410
+ - examples/legacy/not_checked/shoes-manual/builtins/ask_open_file.rb
411
+ - examples/legacy/not_checked/shoes-manual/builtins/ask_save_folder.rb
412
+ - examples/legacy/not_checked/shoes-manual/builtins/confirm.rb
413
+ - examples/legacy/not_checked/shoes-manual/builtins/debug.rb
414
+ - examples/legacy/not_checked/shoes-manual/builtins/info.rb
415
+ - examples/legacy/not_checked/shoes-manual/button.rb
416
+ - examples/legacy/not_checked/shoes-manual/clear.rb
417
+ - examples/legacy/not_checked/shoes-manual/custom_header.rb
418
+ - examples/legacy/not_checked/shoes-manual/displace.rb
419
+ - examples/legacy/not_checked/shoes-manual/edit_box.rb
420
+ - examples/legacy/not_checked/shoes-manual/fill_pattern.rb
421
+ - examples/legacy/not_checked/shoes-manual/fonts.rb
422
+ - examples/legacy/not_checked/shoes-manual/gutter.rb
423
+ - examples/legacy/not_checked/shoes-manual/image_web.rb
424
+ - examples/legacy/not_checked/shoes-manual/keypress.rb
425
+ - examples/legacy/not_checked/shoes-manual/list_box.rb
426
+ - examples/legacy/not_checked/shoes-manual/motion.rb
427
+ - examples/legacy/not_checked/shoes-manual/mouse.rb
428
+ - examples/legacy/not_checked/shoes-manual/move.rb
429
+ - examples/legacy/not_checked/shoes-manual/nested_ovals.rb
430
+ - examples/legacy/not_checked/shoes-manual/oval.rb
431
+ - examples/legacy/not_checked/shoes-manual/ovals.rb
432
+ - examples/legacy/not_checked/shoes-manual/ovals_image.rb
433
+ - examples/legacy/not_checked/shoes-manual/prepend.rb
434
+ - examples/legacy/not_checked/shoes-manual/progress_bar.rb
435
+ - examples/legacy/not_checked/shoes-manual/radio.rb
436
+ - examples/legacy/not_checked/shoes-manual/radio_alternative_1.rb
437
+ - examples/legacy/not_checked/shoes-manual/radio_alternative_2.rb
438
+ - examples/legacy/not_checked/shoes-manual/rotate_rectangle.rb
439
+ - examples/legacy/not_checked/shoes-manual/shape.rb
440
+ - examples/legacy/not_checked/shoes-manual/static/avatar.png
441
+ - examples/legacy/not_checked/shoes-manual/stroke.rb
442
+ - examples/legacy/not_checked/shoes-manual/style.rb
443
+ - examples/legacy/not_checked/shoes-manual/style_alternative_1.rb
444
+ - examples/legacy/not_checked/shoes-manual/style_alternative_2.rb
445
+ - examples/legacy/not_checked/shoes-manual/style_length.rb
446
+ - examples/legacy/not_checked/shoes-manual/timer.rb
447
+ - examples/legacy/not_checked/shoes-manual/trigger_window.rb
448
+ - examples/legacy/not_checked/shoes-manual/window_owner.rb
378
449
  - examples/legacy/not_checked/shoes3-tests/AnemicCinema1926marcelDuchampCut.mp4
379
450
  - examples/legacy/not_checked/shoes3-tests/button/button.rb
380
451
  - examples/legacy/not_checked/shoes3-tests/cache/cache.rb
@@ -391,7 +462,6 @@ files:
391
462
  - examples/legacy/not_checked/shoes3-tests/dialogs/ask.rb
392
463
  - examples/legacy/not_checked/shoes3-tests/dialogs/confirm.rb
393
464
  - examples/legacy/not_checked/shoes3-tests/editbox/editbox.rb
394
- - examples/legacy/not_checked/shoes3-tests/editline/editline.rb
395
465
  - examples/legacy/not_checked/shoes3-tests/events/button.rb
396
466
  - examples/legacy/not_checked/shoes3-tests/events/button.yaml
397
467
  - examples/legacy/not_checked/shoes3-tests/events/capture.rb
@@ -472,6 +542,27 @@ files:
472
542
  - examples/legacy/working/shoes-contrib/basic/two-column.rb
473
543
  - examples/legacy/working/shoes-contrib/elements/edit_box.rb
474
544
  - examples/legacy/working/shoes-contrib/kernel/alert.rb
545
+ - examples/legacy/working/shoes3-tests/editline/editline.rb
546
+ - examples/legacy/working/shoes_manual/alert_button.rb
547
+ - examples/legacy/working/shoes_manual/animate.rb
548
+ - examples/legacy/working/shoes_manual/background_para.rb
549
+ - examples/legacy/working/shoes_manual/button_alternative.rb
550
+ - examples/legacy/working/shoes_manual/checkbox.rb
551
+ - examples/legacy/working/shoes_manual/download.rb
552
+ - examples/legacy/working/shoes_manual/edit_box.rb
553
+ - examples/legacy/working/shoes_manual/editline.rb
554
+ - examples/legacy/working/shoes_manual/fixed_height.rb
555
+ - examples/legacy/working/shoes_manual/fixed_width.rb
556
+ - examples/legacy/working/shoes_manual/image.rb
557
+ - examples/legacy/working/shoes_manual/instance_variable_check.rb
558
+ - examples/legacy/working/shoes_manual/message.rb
559
+ - examples/legacy/working/shoes_manual/rectangle.rb
560
+ - examples/legacy/working/shoes_manual/save_download.rb
561
+ - examples/legacy/working/shoes_manual/self_check.rb
562
+ - examples/legacy/working/shoes_manual/stack.rb
563
+ - examples/legacy/working/shoes_manual/style_info.rb
564
+ - examples/legacy/working/shoes_manual/utf8_support.rb
565
+ - examples/legacy/working/shoes_manual/width.rb
475
566
  - examples/legacy/working/simple/basic-edit-box.rb
476
567
  - examples/legacy/working/simple/basic-fps.rb
477
568
  - examples/legacy/working/simple/border-cat.rb
@@ -495,11 +586,17 @@ files:
495
586
  - examples/list_box.rb
496
587
  - examples/list_box_choose.rb
497
588
  - examples/local_assets/local_file_server.rb
589
+ - examples/local_assets/multi_image.rb
498
590
  - examples/local_assets/sample.gif
499
591
  - examples/local_assets/sample.mp4
592
+ - examples/local_assets/small.png
500
593
  - examples/local_fonts.rb
501
594
  - examples/local_images.rb
595
+ - examples/margin.rb
596
+ - examples/margin_check.rb
502
597
  - examples/motion_events.rb
598
+ - examples/oval-with-kwargs.rb
599
+ - examples/oval.rb
503
600
  - examples/para/collection_of_arguments.rb
504
601
  - examples/para/hello_world.rb
505
602
  - examples/para/hide_and_show.rb
@@ -509,6 +606,9 @@ files:
509
606
  - examples/para/sizes.rb
510
607
  - examples/para/sizes_2.rb
511
608
  - examples/para/strong.rb
609
+ - examples/para_font_styles.rb
610
+ - examples/para_font_variant.rb
611
+ - examples/para_fontweight.rb
512
612
  - examples/para_text_widgets.rb
513
613
  - examples/parse_xl_funnies.rb
514
614
  - examples/pirate.png
@@ -520,6 +620,7 @@ files:
520
620
  - examples/rect.rb
521
621
  - examples/rotate_shapes.rb
522
622
  - examples/ruby_racer.rb
623
+ - examples/scarpe_ext.rb
523
624
  - examples/selfitude.rb
524
625
  - examples/shapes/arc.rb
525
626
  - examples/shapes/shapes.rb
@@ -561,7 +662,6 @@ files:
561
662
  - lacci/lib/scarpe/niente/app.rb
562
663
  - lacci/lib/scarpe/niente/display_service.rb
563
664
  - lacci/lib/scarpe/niente/drawable.rb
564
- - lacci/lib/scarpe/niente/logger.rb
565
665
  - lacci/lib/scarpe/niente/shoes_spec.rb
566
666
  - lacci/lib/shoes-spec.rb
567
667
  - lacci/lib/shoes.rb
@@ -578,23 +678,25 @@ files:
578
678
  - lacci/lib/shoes/drawables.rb
579
679
  - lacci/lib/shoes/drawables/arc.rb
580
680
  - lacci/lib/shoes/drawables/arrow.rb
681
+ - lacci/lib/shoes/drawables/border.rb
581
682
  - lacci/lib/shoes/drawables/button.rb
582
683
  - lacci/lib/shoes/drawables/check.rb
583
684
  - lacci/lib/shoes/drawables/document_root.rb
584
685
  - lacci/lib/shoes/drawables/edit_box.rb
585
686
  - lacci/lib/shoes/drawables/edit_line.rb
586
687
  - lacci/lib/shoes/drawables/flow.rb
688
+ - lacci/lib/shoes/drawables/font_helper.rb
587
689
  - lacci/lib/shoes/drawables/image.rb
588
690
  - lacci/lib/shoes/drawables/line.rb
589
691
  - lacci/lib/shoes/drawables/link.rb
590
692
  - lacci/lib/shoes/drawables/list_box.rb
693
+ - lacci/lib/shoes/drawables/oval.rb
591
694
  - lacci/lib/shoes/drawables/para.rb
592
695
  - lacci/lib/shoes/drawables/progress.rb
593
696
  - lacci/lib/shoes/drawables/radio.rb
594
697
  - lacci/lib/shoes/drawables/rect.rb
595
698
  - lacci/lib/shoes/drawables/shape.rb
596
699
  - lacci/lib/shoes/drawables/slot.rb
597
- - lacci/lib/shoes/drawables/span.rb
598
700
  - lacci/lib/shoes/drawables/stack.rb
599
701
  - lacci/lib/shoes/drawables/star.rb
600
702
  - lacci/lib/shoes/drawables/subscription_item.rb
@@ -603,22 +705,31 @@ files:
603
705
  - lacci/lib/shoes/drawables/widget.rb
604
706
  - lacci/lib/shoes/errors.rb
605
707
  - lacci/lib/shoes/log.rb
708
+ - lacci/lib/shoes/margin_helper.rb
606
709
  - lacci/lib/shoes/ruby_extensions.rb
607
- - lacci/lib/shoes/spacing.rb
710
+ - lacci/test/.gitignore
608
711
  - lacci/test/test_colors.rb
712
+ - lacci/test/test_draw_context.rb
713
+ - lacci/test/test_font_helper.rb
609
714
  - lacci/test/test_helper.rb
610
715
  - lacci/test/test_lacci.rb
716
+ - lacci/test/test_margin_helper.rb
717
+ - lacci/test/test_niente_test_infra.rb
718
+ - lacci/test/test_oval.rb
719
+ - lacci/test/test_parenting.rb
611
720
  - lacci/test/test_shoes_errors.rb
721
+ - lacci/test/test_text_drawables.rb
612
722
  - lib/scarpe.rb
723
+ - lib/scarpe/assets.rb
613
724
  - lib/scarpe/cats_cradle.rb
614
725
  - lib/scarpe/errors.rb
615
- - lib/scarpe/evented_assertions.rb
616
726
  - lib/scarpe/shoes_spec.rb
617
727
  - lib/scarpe/version.rb
618
728
  - lib/scarpe/wv.rb
619
729
  - lib/scarpe/wv/app.rb
620
730
  - lib/scarpe/wv/arc.rb
621
731
  - lib/scarpe/wv/arrow.rb
732
+ - lib/scarpe/wv/border.rb
622
733
  - lib/scarpe/wv/button.rb
623
734
  - lib/scarpe/wv/check.rb
624
735
  - lib/scarpe/wv/control_interface.rb
@@ -631,13 +742,14 @@ files:
631
742
  - lib/scarpe/wv/line.rb
632
743
  - lib/scarpe/wv/link.rb
633
744
  - lib/scarpe/wv/list_box.rb
745
+ - lib/scarpe/wv/oval.rb
634
746
  - lib/scarpe/wv/para.rb
635
747
  - lib/scarpe/wv/progress.rb
636
748
  - lib/scarpe/wv/radio.rb
637
749
  - lib/scarpe/wv/rect.rb
750
+ - lib/scarpe/wv/scarpe_extensions.rb
638
751
  - lib/scarpe/wv/shape.rb
639
752
  - lib/scarpe/wv/slot.rb
640
- - lib/scarpe/wv/span.rb
641
753
  - lib/scarpe/wv/stack.rb
642
754
  - lib/scarpe/wv/star.rb
643
755
  - lib/scarpe/wv/subscription_item.rb
@@ -657,15 +769,43 @@ files:
657
769
  - scarpe-components/Gemfile.lock
658
770
  - scarpe-components/README.md
659
771
  - scarpe-components/Rakefile
772
+ - scarpe-components/assets/bootstrap-themes/bootstrap-cerulean.css
773
+ - scarpe-components/assets/bootstrap-themes/bootstrap-cosmo.css
774
+ - scarpe-components/assets/bootstrap-themes/bootstrap-cyborg.css
775
+ - scarpe-components/assets/bootstrap-themes/bootstrap-darkly.css
776
+ - scarpe-components/assets/bootstrap-themes/bootstrap-flatly.css
777
+ - scarpe-components/assets/bootstrap-themes/bootstrap-icons.min.css
778
+ - scarpe-components/assets/bootstrap-themes/bootstrap-journal.css
779
+ - scarpe-components/assets/bootstrap-themes/bootstrap-litera.css
780
+ - scarpe-components/assets/bootstrap-themes/bootstrap-lumen.css
781
+ - scarpe-components/assets/bootstrap-themes/bootstrap-lux.css
782
+ - scarpe-components/assets/bootstrap-themes/bootstrap-materia.css
783
+ - scarpe-components/assets/bootstrap-themes/bootstrap-minty.css
784
+ - scarpe-components/assets/bootstrap-themes/bootstrap-morph.css
785
+ - scarpe-components/assets/bootstrap-themes/bootstrap-pulse.css
786
+ - scarpe-components/assets/bootstrap-themes/bootstrap-quartz.css
787
+ - scarpe-components/assets/bootstrap-themes/bootstrap-sandstone.css
788
+ - scarpe-components/assets/bootstrap-themes/bootstrap-simplex.css
789
+ - scarpe-components/assets/bootstrap-themes/bootstrap-sketchy.css
790
+ - scarpe-components/assets/bootstrap-themes/bootstrap-slate.css
791
+ - scarpe-components/assets/bootstrap-themes/bootstrap-solar.css
792
+ - scarpe-components/assets/bootstrap-themes/bootstrap-spacelab.css
793
+ - scarpe-components/assets/bootstrap-themes/bootstrap-superhero.css
794
+ - scarpe-components/assets/bootstrap-themes/bootstrap-united.css
795
+ - scarpe-components/assets/bootstrap-themes/bootstrap-vapor.css
796
+ - scarpe-components/assets/bootstrap-themes/bootstrap-yeti.css
797
+ - scarpe-components/assets/bootstrap-themes/bootstrap-zephyr.css
798
+ - scarpe-components/assets/bootstrap-themes/bootstrap.bundle.min.js
799
+ - scarpe-components/lib/scarpe/components/asset_server.rb
660
800
  - scarpe-components/lib/scarpe/components/base64.rb
661
801
  - scarpe-components/lib/scarpe/components/calzini.rb
662
802
  - scarpe-components/lib/scarpe/components/calzini/alert.rb
663
- - scarpe-components/lib/scarpe/components/calzini/art_widgets.rb
803
+ - scarpe-components/lib/scarpe/components/calzini/art_drawables.rb
804
+ - scarpe-components/lib/scarpe/components/calzini/border.rb
664
805
  - scarpe-components/lib/scarpe/components/calzini/button.rb
665
806
  - scarpe-components/lib/scarpe/components/calzini/misc.rb
666
807
  - scarpe-components/lib/scarpe/components/calzini/para.rb
667
808
  - scarpe-components/lib/scarpe/components/calzini/slots.rb
668
- - scarpe-components/lib/scarpe/components/calzini/text_widgets.rb
669
809
  - scarpe-components/lib/scarpe/components/errors.rb
670
810
  - scarpe-components/lib/scarpe/components/file_helpers.rb
671
811
  - scarpe-components/lib/scarpe/components/html.rb
@@ -674,6 +814,7 @@ files:
674
814
  - scarpe-components/lib/scarpe/components/minitest_result.rb
675
815
  - scarpe-components/lib/scarpe/components/modular_logger.rb
676
816
  - scarpe-components/lib/scarpe/components/print_logger.rb
817
+ - scarpe-components/lib/scarpe/components/process_helpers.rb
677
818
  - scarpe-components/lib/scarpe/components/promises.rb
678
819
  - scarpe-components/lib/scarpe/components/segmented_file_loader.rb
679
820
  - scarpe-components/lib/scarpe/components/string_helpers.rb
@@ -681,6 +822,10 @@ files:
681
822
  - scarpe-components/lib/scarpe/components/unit_test_helpers.rb
682
823
  - scarpe-components/lib/scarpe/components/version.rb
683
824
  - scarpe-components/scarpe-components.gemspec
825
+ - scarpe-components/test/assets/big-image.png
826
+ - scarpe-components/test/assets/big-stylesheet.css
827
+ - scarpe-components/test/assets/little-image.png
828
+ - scarpe-components/test/assets/little-stylesheet.css
684
829
  - scarpe-components/test/calzini/test_calzini_alert.rb
685
830
  - scarpe-components/test/calzini/test_calzini_art_drawables.rb
686
831
  - scarpe-components/test/calzini/test_calzini_button.rb
@@ -688,11 +833,13 @@ files:
688
833
  - scarpe-components/test/calzini/test_calzini_para.rb
689
834
  - scarpe-components/test/calzini/test_calzini_slots.rb
690
835
  - scarpe-components/test/calzini/test_calzini_text_drawables.rb
836
+ - scarpe-components/test/calzini/test_various.rb
691
837
  - scarpe-components/test/mtr_data/exception.json
692
838
  - scarpe-components/test/mtr_data/fail_with_message.json
693
839
  - scarpe-components/test/mtr_data/skipped_no_message.json
694
840
  - scarpe-components/test/mtr_data/skipped_w_msg.json
695
841
  - scarpe-components/test/mtr_data/succeed_2_asserts.json
842
+ - scarpe-components/test/test_asset_server.rb
696
843
  - scarpe-components/test/test_components.rb
697
844
  - scarpe-components/test/test_dimensions.rb
698
845
  - scarpe-components/test/test_helper.rb
@@ -732,6 +879,8 @@ files:
732
879
  - spikes/libui/notepad.md
733
880
  - spikes/libui/para.rb
734
881
  - spikes/libui/stack.rb
882
+ - tasks/check_html_fixtures.rb
883
+ - tasks/regenerate_html_fixtures.rb
735
884
  - templates/basic_class_template.erb
736
885
  - templates/class_template_with_event_bind.erb
737
886
  - templates/class_template_with_shapes.erb
@@ -743,7 +892,6 @@ licenses:
743
892
  - MIT
744
893
  metadata:
745
894
  homepage_uri: https://github.com/scarpe-team/scarpe
746
- source_code_uri: https://github.com/scarpe-team/scarpe
747
895
  changelog_uri: https://github.com/scarpe-team/scarpe/blob/main/CHANGELOG.md
748
896
  post_install_message:
749
897
  rdoc_options: []
@@ -760,7 +908,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
760
908
  - !ruby/object:Gem::Version
761
909
  version: '0'
762
910
  requirements: []
763
- rubygems_version: 3.4.10
911
+ rubygems_version: 3.5.3
764
912
  signing_key:
765
913
  specification_version: 4
766
914
  summary: Scarpe - shoes but running on webview
@@ -1,29 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "shoes/log"
4
- require "json"
5
-
6
- module Niente; end
7
- class Niente::LogImpl
8
- include Shoes::Log # for constants
9
-
10
- class PrintLogger
11
- def initialize(_)
12
- end
13
-
14
- [:error, :warn, :debug, :info].each do |level|
15
- define_method(level) do |msg|
16
- puts "#{level}: #{msg}"
17
- end
18
- end
19
- end
20
-
21
- def logger_for_component(component)
22
- PrintLogger.new(component.to_s)
23
- end
24
-
25
- def configure_logger(log_config)
26
- end
27
- end
28
-
29
- #Shoes::Log.instance = Niente::LogImpl.new
@@ -1,27 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class Shoes
4
- class Span < Shoes::Drawable
5
- shoes_styles :text, :stroke, :size, :font, :html_attributes
6
- shoes_events # No Span-specific events yet
7
-
8
- def initialize(text, stroke: nil, size: :span, font: nil, **html_attributes)
9
- super
10
-
11
- @text = text
12
- @stroke = stroke
13
- @size = size
14
- @font = font
15
- @html_attributes = html_attributes
16
-
17
- create_display_drawable
18
- end
19
-
20
- def replace(text)
21
- @text = text
22
-
23
- # This should signal the display drawable to change
24
- self.text = @text
25
- end
26
- end
27
- end
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class Shoes
4
- module Spacing
5
- def self.included(includer)
6
- includer.shoes_styles :margin, :padding, :margin_top, :margin_left, :margin_right, :margin_bottom, :options
7
- end
8
- end
9
- end
@@ -1,121 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "tempfile"
4
- require "json"
5
- require "fileutils"
6
-
7
- require "scarpe/components/unit_test_helpers"
8
-
9
- module Scarpe::Test; end
10
-
11
- # We need a separate assertion system for the kind of Scarpe
12
- # testing where we start a subprocess, perform the assertion
13
- # logic in the subprocess, and then run Minitest in the parent.
14
- # It's an unusual setup.
15
- module Scarpe::Test::EventedAssertions
16
- include Scarpe::Test::HTMLAssertions
17
-
18
- private
19
-
20
- def evented_assertions_initialize
21
- @assertion_data = []
22
- @assertions_passed = 0
23
- @assertions_failed = []
24
- end
25
-
26
- public
27
-
28
- def assert(value, msg = nil)
29
- msg ||= "Assertion #{value ? "succeeded" : "failed"}"
30
- @assertion_data << [(value ? true : false), msg]
31
- if value
32
- @assertions_passed += 1
33
- else
34
- @assertions_failed << msg
35
- end
36
- end
37
-
38
- def assert_equal(expected, actual, msg = nil)
39
- msg ||= "Expected #{actual.inspect} to equal #{expected.inspect}!"
40
- assert actual == expected, msg
41
- end
42
-
43
- def assertion_data_as_a_struct
44
- {
45
- still_pending: 0,
46
- succeeded: @assertions_passed,
47
- failed: @assertions_failed.size,
48
- failures: @assertions_failed,
49
- }
50
- end
51
-
52
- def test_metadata
53
- {}
54
- end
55
-
56
- # Assert that `text` includes `subtext`.
57
- #
58
- # @param text [String] the longer text
59
- # @param subtext [String] the text that is asserted to be included
60
- # @param msg [String,nil] if supplied, the failure message for the assertion
61
- # @return [void]
62
- def assert_include(text, subtext, msg = nil)
63
- msg ||= "Expected #{text.inspect} to include #{subtext.inspect}"
64
- assert text.include?(subtext), msg
65
- end
66
-
67
- # Assert that `text` does not include `subtext`.
68
- #
69
- # @param text [String] the longer text
70
- # @param subtext [String] the text that is asserted to not be included
71
- # @param msg [String,nil] if supplied, the failure message for the assertion
72
- # @return [void]
73
- def assert_not_include(text, subtext, msg = nil)
74
- msg ||= "Expected #{text.inspect} not to include #{subtext.inspect}"
75
- assert !text.include?(subtext), msg
76
- end
77
-
78
- def return_assertion_data
79
- if !@assertions_failed.empty?
80
- return_results(false, "Assertions failed", assertion_data_as_a_struct)
81
- elsif @assertions_passed > 0
82
- return_results(true, "All assertions passed", assertion_data_as_a_struct)
83
- else
84
- return_results(true, "Test finished successfully")
85
- end
86
- end
87
-
88
- # This does a final return of results. If it gets called
89
- # multiple times with different results, the test fails because that's not allowed.
90
- #
91
- # @param result_bool [Boolean] true if the results are success, false if failure
92
- # @param msg [String] the message included with the results
93
- # @param data [Hash] any additional data to pass with the results
94
- # @return void
95
- def return_results(result_bool, msg, data = {})
96
- result_file = ENV["SCARPE_TEST_RESULTS"] || "./scarpe_results.txt"
97
-
98
- result_structs = [result_bool, msg, data.merge(test_metadata)]
99
- if File.exist?(result_file)
100
- results_returned = JSON.parse File.read(result_file)
101
- end
102
-
103
- # Multiple different sets of results is bad, even if both are passing.
104
- if results_returned && results_returned[0..1] != result_structs[0..1]
105
- # Just raising here doesn't reliably fail the test.
106
- # See: https://github.com/scarpe-team/scarpe/issues/212
107
- Shoes::Log.logger("Test Results").error("Writing multi-result failure file to #{result_file.inspect}!")
108
-
109
- new_res_data = { first_result: results_returned, second_result: result_structs }.merge(test_metadata)
110
- bad_result = [false, "Returned two sets of results!", new_res_data]
111
- File.write(result_file, JSON.pretty_generate(bad_result))
112
-
113
- return
114
- elsif results_returned
115
- Shoes::Log.logger("Test Results").warn "Returning identical results twice: #{results_returned.inspect}"
116
- end
117
-
118
- Shoes::Log.logger("Test Results").debug("Writing results file #{result_file.inspect} to disk!")
119
- File.write(result_file, JSON.pretty_generate(result_structs))
120
- end
121
- end