binky-builder 0.1.1 → 0.3.1
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.
- checksums.yaml +4 -4
- data/.idea/workspace.xml +354 -66
- data/README.md +48 -2
- data/lib/binky/builder.rb +24 -19
- data/lib/binky/builder/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e932ab041b770cabe943b7f7ce1d1cbbcf155a29271289c2e8834eea683e3e7b
|
4
|
+
data.tar.gz: 39f1822c00174ec6aaa539d6dd706578f19bc9c16a3845b01c2057273b54fef8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0cc335cdc675d147c461939e2316a21b0d750afa6ff8f9236c9299d8cc68c4f4b4e45a428bd3a32780e219e3a1dcf69a78d823acfb89e109e84c81fb6f3a652b
|
7
|
+
data.tar.gz: a3aa4ef519b120b1c2b360b450846d7286cb63ce084273255757b6c244075c49f5abe22a4ac93864f2a657e280747cf1ee329fb3bec0d58ba3f6f5b4eef91fb6
|
data/.idea/workspace.xml
CHANGED
@@ -3,8 +3,6 @@
|
|
3
3
|
<component name="ChangeListManager">
|
4
4
|
<list default="true" id="c1900bce-76f3-4483-9969-b14ec05dbe50" name="Default Changelist" comment="">
|
5
5
|
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
6
|
-
<change beforePath="$PROJECT_DIR$/lib/binky/builder.rb" beforeDir="false" afterPath="$PROJECT_DIR$/lib/binky/builder.rb" afterDir="false" />
|
7
|
-
<change beforePath="$PROJECT_DIR$/lib/binky/builder/builder_helper.rb" beforeDir="false" />
|
8
6
|
<change beforePath="$PROJECT_DIR$/lib/binky/builder/version.rb" beforeDir="false" afterPath="$PROJECT_DIR$/lib/binky/builder/version.rb" afterDir="false" />
|
9
7
|
</list>
|
10
8
|
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
@@ -14,12 +12,30 @@
|
|
14
12
|
<option name="LAST_RESOLUTION" value="IGNORE" />
|
15
13
|
</component>
|
16
14
|
<component name="FileEditorManager">
|
17
|
-
<leaf>
|
15
|
+
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
18
16
|
<file pinned="false" current-in-tab="false">
|
19
17
|
<entry file="file://$PROJECT_DIR$/lib/binky/builder.rb">
|
20
18
|
<provider selected="true" editor-type-id="text-editor">
|
21
|
-
<state relative-caret-position="
|
22
|
-
<caret line="
|
19
|
+
<state relative-caret-position="287">
|
20
|
+
<caret line="14" column="35" selection-start-line="14" selection-start-column="35" selection-end-line="14" selection-end-column="35" />
|
21
|
+
</state>
|
22
|
+
</provider>
|
23
|
+
</entry>
|
24
|
+
</file>
|
25
|
+
<file pinned="false" current-in-tab="false">
|
26
|
+
<entry file="file://$APPLICATION_HOME_DIR$/rubystubs26/string.rb">
|
27
|
+
<provider selected="true" editor-type-id="text-editor">
|
28
|
+
<state relative-caret-position="-4057">
|
29
|
+
<caret line="1281" column="8" selection-start-line="1281" selection-start-column="8" selection-end-line="1281" selection-end-column="8" />
|
30
|
+
</state>
|
31
|
+
</provider>
|
32
|
+
</entry>
|
33
|
+
</file>
|
34
|
+
<file pinned="false" current-in-tab="false">
|
35
|
+
<entry file="file://$APPLICATION_HOME_DIR$/rubystubs26/object.rb">
|
36
|
+
<provider selected="true" editor-type-id="text-editor">
|
37
|
+
<state relative-caret-position="970">
|
38
|
+
<caret line="718" column="8" selection-start-line="718" selection-start-column="8" selection-end-line="718" selection-end-column="8" />
|
23
39
|
</state>
|
24
40
|
</provider>
|
25
41
|
</entry>
|
@@ -34,51 +50,58 @@
|
|
34
50
|
</entry>
|
35
51
|
</file>
|
36
52
|
<file pinned="false" current-in-tab="false">
|
37
|
-
<entry file="file://$PROJECT_DIR
|
38
|
-
<provider selected="true" editor-type-id="text-editor"
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
53
|
+
<entry file="file://$PROJECT_DIR$/README.md">
|
54
|
+
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
55
|
+
<state split_layout="SPLIT">
|
56
|
+
<first_editor relative-caret-position="234">
|
57
|
+
<caret line="54" column="3" selection-start-line="54" selection-start-column="3" selection-end-line="54" selection-end-column="3" />
|
58
|
+
</first_editor>
|
59
|
+
<second_editor />
|
60
|
+
</state>
|
61
|
+
</provider>
|
44
62
|
</entry>
|
45
63
|
</file>
|
46
64
|
<file pinned="false" current-in-tab="false">
|
47
|
-
<entry file="file://$PROJECT_DIR$/
|
65
|
+
<entry file="file://$PROJECT_DIR$/test/test_helper.rb">
|
48
66
|
<provider selected="true" editor-type-id="text-editor">
|
49
|
-
<state relative-caret-position="
|
50
|
-
<caret line="
|
67
|
+
<state relative-caret-position="104">
|
68
|
+
<caret line="4" selection-start-line="4" selection-end-line="4" />
|
51
69
|
</state>
|
52
70
|
</provider>
|
53
71
|
</entry>
|
54
72
|
</file>
|
55
73
|
<file pinned="false" current-in-tab="false">
|
56
|
-
<entry file="file://$PROJECT_DIR$/
|
57
|
-
<provider selected="true" editor-type-id="text-editor"
|
74
|
+
<entry file="file://$PROJECT_DIR$/test/binky/builder_test.rb">
|
75
|
+
<provider selected="true" editor-type-id="text-editor">
|
76
|
+
<state relative-caret-position="235">
|
77
|
+
<caret line="29" column="33" lean-forward="true" selection-start-line="29" selection-start-column="33" selection-end-line="29" selection-end-column="33" />
|
78
|
+
</state>
|
79
|
+
</provider>
|
58
80
|
</entry>
|
59
81
|
</file>
|
60
82
|
<file pinned="false" current-in-tab="false">
|
61
|
-
<entry file="file://$
|
62
|
-
<provider selected="true" editor-type-id="
|
63
|
-
<state
|
64
|
-
<
|
65
|
-
<caret column="27" selection-start-column="27" selection-end-column="77" />
|
66
|
-
</first_editor>
|
67
|
-
<second_editor />
|
83
|
+
<entry file="file://$APPLICATION_HOME_DIR$/rubystubs26/module.rb">
|
84
|
+
<provider selected="true" editor-type-id="text-editor">
|
85
|
+
<state relative-caret-position="190">
|
86
|
+
<caret line="719" column="33" selection-start-line="719" selection-start-column="18" selection-end-line="719" selection-end-column="33" />
|
68
87
|
</state>
|
69
88
|
</provider>
|
70
89
|
</entry>
|
71
90
|
</file>
|
72
91
|
<file pinned="false" current-in-tab="false">
|
73
|
-
<entry file="file://$
|
74
|
-
<provider selected="true" editor-type-id="text-editor"
|
92
|
+
<entry file="file://$APPLICATION_HOME_DIR$/rubystubs26/basic_object.rb">
|
93
|
+
<provider selected="true" editor-type-id="text-editor">
|
94
|
+
<state relative-caret-position="4913">
|
95
|
+
<caret line="231" column="8" selection-start-line="231" selection-start-column="8" selection-end-line="231" selection-end-column="8" />
|
96
|
+
</state>
|
97
|
+
</provider>
|
75
98
|
</entry>
|
76
99
|
</file>
|
77
100
|
<file pinned="false" current-in-tab="false">
|
78
|
-
<entry file="file://$
|
101
|
+
<entry file="file://$USER_HOME$/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/minitest-5.14.1/lib/minitest/test.rb">
|
79
102
|
<provider selected="true" editor-type-id="text-editor">
|
80
|
-
<state relative-caret-position="
|
81
|
-
<caret line="
|
103
|
+
<state relative-caret-position="147">
|
104
|
+
<caret line="198" selection-start-line="198" selection-end-line="198" />
|
82
105
|
</state>
|
83
106
|
</provider>
|
84
107
|
</entry>
|
@@ -92,6 +115,13 @@
|
|
92
115
|
</list>
|
93
116
|
</option>
|
94
117
|
</component>
|
118
|
+
<component name="FindInProjectRecents">
|
119
|
+
<findStrings>
|
120
|
+
<find>instance_</find>
|
121
|
+
<find>instance_method</find>
|
122
|
+
<find>block</find>
|
123
|
+
</findStrings>
|
124
|
+
</component>
|
95
125
|
<component name="Git.Settings">
|
96
126
|
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
97
127
|
</component>
|
@@ -119,8 +149,10 @@
|
|
119
149
|
</option>
|
120
150
|
</component>
|
121
151
|
<component name="ProjectFrameBounds" extendedState="6">
|
152
|
+
<option name="x" value="1920" />
|
153
|
+
<option name="y" value="28" />
|
122
154
|
<option name="width" value="1920" />
|
123
|
-
<option name="height" value="
|
155
|
+
<option name="height" value="1052" />
|
124
156
|
</component>
|
125
157
|
<component name="ProjectLevelVcsManager" settingsEditedManually="true" />
|
126
158
|
<component name="ProjectView">
|
@@ -173,7 +205,7 @@
|
|
173
205
|
</component>
|
174
206
|
<component name="PropertiesComponent">
|
175
207
|
<property name="WebServerToolWindowFactoryState" value="false" />
|
176
|
-
<property name="last_opened_file_path" value="$
|
208
|
+
<property name="last_opened_file_path" value="$PROJECT_DIR$/../vortrics" />
|
177
209
|
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
|
178
210
|
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
|
179
211
|
<property name="settings.editor.selected.configurable" value="preferences.lookFeel" />
|
@@ -190,7 +222,36 @@
|
|
190
222
|
</list>
|
191
223
|
</option>
|
192
224
|
</component>
|
193
|
-
<component name="RunManager">
|
225
|
+
<component name="RunManager" selected="Test::Unit/Shoulda/Minitest.Run test 'builder_test': binky-builder">
|
226
|
+
<configuration name="All tests in binky-builder: binky-builder" type="TestUnitRunConfigurationType" factoryName="Test::Unit/Shoulda/Minitest" temporary="true">
|
227
|
+
<module name="binky-builder" />
|
228
|
+
<predefined_log_file enabled="true" id="RUBY_TESTUNIT" />
|
229
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="RUBY_ARGS" VALUE="-Ilib:test" />
|
230
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="WORK DIR" VALUE="$MODULE_DIR$" />
|
231
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="SHOULD_USE_SDK" VALUE="false" />
|
232
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="ALTERN_SDK_NAME" VALUE="" />
|
233
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="myPassParentEnvs" VALUE="true" />
|
234
|
+
<envs>
|
235
|
+
<env name="JRUBY_OPTS" value="-X+O" />
|
236
|
+
</envs>
|
237
|
+
<EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="true" />
|
238
|
+
<EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
|
239
|
+
<EXTENSION ID="RubyCoverageRunConfigurationExtension" track_test_folders="true" runner="rcov">
|
240
|
+
<COVERAGE_PATTERN ENABLED="true">
|
241
|
+
<PATTERN REGEXPS="/.rvm/" INCLUDED="false" />
|
242
|
+
</COVERAGE_PATTERN>
|
243
|
+
</EXTENSION>
|
244
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TESTS_FOLDER_PATH" VALUE="$MODULE_DIR$" />
|
245
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_SCRIPT_PATH" VALUE="" />
|
246
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_FILE_MASK" VALUE="**/{*_test,test_*,*_spec}.rb" />
|
247
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_METHOD_NAME" VALUE="" />
|
248
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_TEST_TYPE" VALUE="ALL_IN_FOLDER" />
|
249
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="DRB" VALUE="false" />
|
250
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="ZEUS" VALUE="false" />
|
251
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="SPRING" VALUE="false" />
|
252
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="RUNNER_OPTIONS" VALUE="" />
|
253
|
+
<method v="2" />
|
254
|
+
</configuration>
|
194
255
|
<configuration name="All tests in test: binky-builder" type="TestUnitRunConfigurationType" factoryName="Test::Unit/Shoulda/Minitest" temporary="true">
|
195
256
|
<module name="binky-builder" />
|
196
257
|
<predefined_log_file enabled="true" id="RUBY_TESTUNIT" />
|
@@ -220,9 +281,70 @@
|
|
220
281
|
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="RUNNER_OPTIONS" VALUE="" />
|
221
282
|
<method v="2" />
|
222
283
|
</configuration>
|
284
|
+
<configuration name="Run test 'builder_test': binky-builder" type="TestUnitRunConfigurationType" factoryName="Test::Unit/Shoulda/Minitest" temporary="true">
|
285
|
+
<module name="binky-builder" />
|
286
|
+
<predefined_log_file enabled="true" id="RUBY_TESTUNIT" />
|
287
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="RUBY_ARGS" VALUE="-Ilib:test" />
|
288
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="WORK DIR" VALUE="$MODULE_DIR$" />
|
289
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="SHOULD_USE_SDK" VALUE="false" />
|
290
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="ALTERN_SDK_NAME" VALUE="" />
|
291
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="myPassParentEnvs" VALUE="true" />
|
292
|
+
<envs>
|
293
|
+
<env name="JRUBY_OPTS" value="-X+O" />
|
294
|
+
</envs>
|
295
|
+
<EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="true" />
|
296
|
+
<EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
|
297
|
+
<EXTENSION ID="RubyCoverageRunConfigurationExtension" track_test_folders="true" runner="rcov">
|
298
|
+
<COVERAGE_PATTERN ENABLED="true">
|
299
|
+
<PATTERN REGEXPS="/.rvm/" INCLUDED="false" />
|
300
|
+
</COVERAGE_PATTERN>
|
301
|
+
</EXTENSION>
|
302
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TESTS_FOLDER_PATH" VALUE="" />
|
303
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_SCRIPT_PATH" VALUE="$MODULE_DIR$/test/binky/builder_test.rb" />
|
304
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_FILE_MASK" VALUE="" />
|
305
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_METHOD_NAME" VALUE="" />
|
306
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_TEST_TYPE" VALUE="TEST_SCRIPT" />
|
307
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="DRB" VALUE="false" />
|
308
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="ZEUS" VALUE="false" />
|
309
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="SPRING" VALUE="false" />
|
310
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="RUNNER_OPTIONS" VALUE="" />
|
311
|
+
<method v="2" />
|
312
|
+
</configuration>
|
313
|
+
<configuration name="test_using_builder: binky-builder" type="TestUnitRunConfigurationType" factoryName="Test::Unit/Shoulda/Minitest" temporary="true">
|
314
|
+
<module name="binky-builder" />
|
315
|
+
<predefined_log_file enabled="true" id="RUBY_TESTUNIT" />
|
316
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="RUBY_ARGS" VALUE="-Ilib:test" />
|
317
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="WORK DIR" VALUE="$MODULE_DIR$" />
|
318
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="SHOULD_USE_SDK" VALUE="false" />
|
319
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="ALTERN_SDK_NAME" VALUE="" />
|
320
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="myPassParentEnvs" VALUE="true" />
|
321
|
+
<envs>
|
322
|
+
<env name="JRUBY_OPTS" value="-X+O" />
|
323
|
+
</envs>
|
324
|
+
<EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="true" />
|
325
|
+
<EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
|
326
|
+
<EXTENSION ID="RubyCoverageRunConfigurationExtension" track_test_folders="true" runner="rcov">
|
327
|
+
<COVERAGE_PATTERN ENABLED="true">
|
328
|
+
<PATTERN REGEXPS="/.rvm/" INCLUDED="false" />
|
329
|
+
</COVERAGE_PATTERN>
|
330
|
+
</EXTENSION>
|
331
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TESTS_FOLDER_PATH" VALUE="" />
|
332
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_SCRIPT_PATH" VALUE="$MODULE_DIR$/test/binky/builder_test.rb" />
|
333
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_FILE_MASK" VALUE="" />
|
334
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_METHOD_NAME" VALUE="test_using_builder" />
|
335
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_TEST_TYPE" VALUE="TEST_METHOD" />
|
336
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="DRB" VALUE="false" />
|
337
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="ZEUS" VALUE="false" />
|
338
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="SPRING" VALUE="false" />
|
339
|
+
<RTEST_RUN_CONFIG_SETTINGS_ID NAME="RUNNER_OPTIONS" VALUE="" />
|
340
|
+
<method v="2" />
|
341
|
+
</configuration>
|
223
342
|
<recent_temporary>
|
224
343
|
<list>
|
344
|
+
<item itemvalue="Test::Unit/Shoulda/Minitest.Run test 'builder_test': binky-builder" />
|
225
345
|
<item itemvalue="Test::Unit/Shoulda/Minitest.All tests in test: binky-builder" />
|
346
|
+
<item itemvalue="Test::Unit/Shoulda/Minitest.All tests in binky-builder: binky-builder" />
|
347
|
+
<item itemvalue="Test::Unit/Shoulda/Minitest.test_using_builder: binky-builder" />
|
226
348
|
</list>
|
227
349
|
</recent_temporary>
|
228
350
|
</component>
|
@@ -234,7 +356,9 @@
|
|
234
356
|
<option name="number" value="Default" />
|
235
357
|
<option name="presentableId" value="Default" />
|
236
358
|
<updated>1596190242171</updated>
|
237
|
-
<workItem from="1596190243364" duration="
|
359
|
+
<workItem from="1596190243364" duration="5305000" />
|
360
|
+
<workItem from="1596196456720" duration="5542000" />
|
361
|
+
<workItem from="1596439308667" duration="18892000" />
|
238
362
|
</task>
|
239
363
|
<task id="LOCAL-00001" summary="Binky Builder gem initial commit.">
|
240
364
|
<created>1596191104643</created>
|
@@ -257,40 +381,123 @@
|
|
257
381
|
<option name="project" value="LOCAL" />
|
258
382
|
<updated>1596194970038</updated>
|
259
383
|
</task>
|
260
|
-
<
|
384
|
+
<task id="LOCAL-00004" summary="Binky Builder gem initial commit.">
|
385
|
+
<created>1596199181225</created>
|
386
|
+
<option name="number" value="00004" />
|
387
|
+
<option name="presentableId" value="LOCAL-00004" />
|
388
|
+
<option name="project" value="LOCAL" />
|
389
|
+
<updated>1596199181225</updated>
|
390
|
+
</task>
|
391
|
+
<task id="LOCAL-00005" summary="Binky Builder gem initial commit.">
|
392
|
+
<created>1596203897529</created>
|
393
|
+
<option name="number" value="00005" />
|
394
|
+
<option name="presentableId" value="LOCAL-00005" />
|
395
|
+
<option name="project" value="LOCAL" />
|
396
|
+
<updated>1596203897529</updated>
|
397
|
+
</task>
|
398
|
+
<task id="LOCAL-00006" summary="Binky Builder gem initial commit.">
|
399
|
+
<created>1596442883197</created>
|
400
|
+
<option name="number" value="00006" />
|
401
|
+
<option name="presentableId" value="LOCAL-00006" />
|
402
|
+
<option name="project" value="LOCAL" />
|
403
|
+
<updated>1596442883197</updated>
|
404
|
+
</task>
|
405
|
+
<task id="LOCAL-00007" summary="Binky Builder gem initial commit.">
|
406
|
+
<created>1596445109199</created>
|
407
|
+
<option name="number" value="00007" />
|
408
|
+
<option name="presentableId" value="LOCAL-00007" />
|
409
|
+
<option name="project" value="LOCAL" />
|
410
|
+
<updated>1596445109199</updated>
|
411
|
+
</task>
|
412
|
+
<task id="LOCAL-00008" summary="Binky Builder gem initial commit.">
|
413
|
+
<created>1596447053126</created>
|
414
|
+
<option name="number" value="00008" />
|
415
|
+
<option name="presentableId" value="LOCAL-00008" />
|
416
|
+
<option name="project" value="LOCAL" />
|
417
|
+
<updated>1596447053126</updated>
|
418
|
+
</task>
|
419
|
+
<task id="LOCAL-00009" summary="Binky Builder gem initial commit.">
|
420
|
+
<created>1596447831202</created>
|
421
|
+
<option name="number" value="00009" />
|
422
|
+
<option name="presentableId" value="LOCAL-00009" />
|
423
|
+
<option name="project" value="LOCAL" />
|
424
|
+
<updated>1596447831202</updated>
|
425
|
+
</task>
|
426
|
+
<task id="LOCAL-00010" summary="Binky Builder gem initial commit.">
|
427
|
+
<created>1596461165447</created>
|
428
|
+
<option name="number" value="00010" />
|
429
|
+
<option name="presentableId" value="LOCAL-00010" />
|
430
|
+
<option name="project" value="LOCAL" />
|
431
|
+
<updated>1596461165447</updated>
|
432
|
+
</task>
|
433
|
+
<task id="LOCAL-00011" summary="Binky Builder gem initial commit.">
|
434
|
+
<created>1596462191383</created>
|
435
|
+
<option name="number" value="00011" />
|
436
|
+
<option name="presentableId" value="LOCAL-00011" />
|
437
|
+
<option name="project" value="LOCAL" />
|
438
|
+
<updated>1596462191383</updated>
|
439
|
+
</task>
|
440
|
+
<option name="localTasksCounter" value="12" />
|
261
441
|
<servers />
|
262
442
|
</component>
|
263
443
|
<component name="TestHistory">
|
264
|
-
<history-entry file="
|
444
|
+
<history-entry file="Run_test_'builder_test'__binky-builder - 2020.08.03 at 14h 57m 26s.xml">
|
445
|
+
<configuration name="Run test 'builder_test': binky-builder" configurationId="TestUnitRunConfigurationType" />
|
446
|
+
</history-entry>
|
447
|
+
<history-entry file="Run_test_'builder_test'__binky-builder - 2020.08.03 at 14h 57m 57s.xml">
|
448
|
+
<configuration name="Run test 'builder_test': binky-builder" configurationId="TestUnitRunConfigurationType" />
|
449
|
+
</history-entry>
|
450
|
+
<history-entry file="All_tests_in_test__binky-builder - 2020.08.03 at 15h 10m 49s.xml">
|
451
|
+
<configuration name="All tests in test: binky-builder" configurationId="TestUnitRunConfigurationType" />
|
452
|
+
</history-entry>
|
453
|
+
<history-entry file="All_tests_in_test__binky-builder - 2020.08.03 at 15h 16m 04s.xml">
|
454
|
+
<configuration name="All tests in test: binky-builder" configurationId="TestUnitRunConfigurationType" />
|
455
|
+
</history-entry>
|
456
|
+
<history-entry file="All_tests_in_binky-builder__binky-builder - 2020.08.03 at 15h 17m 03s.xml">
|
457
|
+
<configuration name="All tests in binky-builder: binky-builder" configurationId="TestUnitRunConfigurationType" />
|
458
|
+
</history-entry>
|
459
|
+
<history-entry file="Run_test_'builder_test'__binky-builder - 2020.08.03 at 15h 21m 06s.xml">
|
460
|
+
<configuration name="Run test 'builder_test': binky-builder" configurationId="TestUnitRunConfigurationType" />
|
461
|
+
</history-entry>
|
462
|
+
<history-entry file="All_tests_in_test__binky-builder - 2020.08.03 at 15h 40m 48s.xml">
|
463
|
+
<configuration name="All tests in test: binky-builder" configurationId="TestUnitRunConfigurationType" />
|
464
|
+
</history-entry>
|
465
|
+
<history-entry file="All_tests_in_test__binky-builder - 2020.08.03 at 15h 41m 20s.xml">
|
265
466
|
<configuration name="All tests in test: binky-builder" configurationId="TestUnitRunConfigurationType" />
|
266
467
|
</history-entry>
|
468
|
+
<history-entry file="Run_test_'builder_test'__binky-builder - 2020.08.03 at 15h 42m 11s.xml">
|
469
|
+
<configuration name="Run test 'builder_test': binky-builder" configurationId="TestUnitRunConfigurationType" />
|
470
|
+
</history-entry>
|
471
|
+
<history-entry file="Run_test_'builder_test'__binky-builder - 2020.08.03 at 15h 42m 54s.xml">
|
472
|
+
<configuration name="Run test 'builder_test': binky-builder" configurationId="TestUnitRunConfigurationType" />
|
473
|
+
</history-entry>
|
267
474
|
</component>
|
268
475
|
<component name="TimeTrackingManager">
|
269
|
-
<option name="totallyTimeSpent" value="
|
476
|
+
<option name="totallyTimeSpent" value="29739000" />
|
270
477
|
</component>
|
271
478
|
<component name="ToolWindowManager">
|
272
|
-
<frame x="
|
479
|
+
<frame x="1920" y="28" width="1920" height="1052" extended-state="6" />
|
273
480
|
<editor active="true" />
|
274
481
|
<layout>
|
275
|
-
<window_info id="
|
276
|
-
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.25" />
|
482
|
+
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.1625" />
|
277
483
|
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
|
278
|
-
<window_info
|
279
|
-
<window_info anchor="bottom" id="Database Changes" />
|
280
|
-
<window_info anchor="bottom" id="Version Control" />
|
281
|
-
<window_info anchor="bottom" id="Terminal" />
|
282
|
-
<window_info anchor="bottom" id="Event Log" side_tool="true" />
|
484
|
+
<window_info id="Favorites" order="2" side_tool="true" />
|
283
485
|
<window_info anchor="bottom" id="Message" order="0" />
|
284
486
|
<window_info anchor="bottom" id="Find" order="1" weight="0.32976827" />
|
285
|
-
<window_info anchor="bottom" id="Run" order="2" weight="0.
|
286
|
-
<window_info anchor="bottom" id="Debug" order="3" weight="0.
|
487
|
+
<window_info anchor="bottom" id="Run" order="2" visible="true" weight="0.23305956" />
|
488
|
+
<window_info anchor="bottom" id="Debug" order="3" weight="0.2422998" />
|
287
489
|
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
|
288
490
|
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
|
289
491
|
<window_info anchor="bottom" id="TODO" order="6" />
|
290
|
-
<window_info anchor="
|
492
|
+
<window_info anchor="bottom" id="Docker" order="7" />
|
493
|
+
<window_info anchor="bottom" id="Database Changes" order="8" />
|
494
|
+
<window_info anchor="bottom" id="Version Control" order="9" />
|
495
|
+
<window_info anchor="bottom" id="Terminal" order="10" />
|
496
|
+
<window_info anchor="bottom" id="Event Log" order="11" side_tool="true" />
|
291
497
|
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
|
292
498
|
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
293
499
|
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
500
|
+
<window_info anchor="right" id="Database" order="3" />
|
294
501
|
</layout>
|
295
502
|
</component>
|
296
503
|
<component name="TypeScriptGeneratedFilesManager">
|
@@ -300,60 +507,141 @@
|
|
300
507
|
<MESSAGE value="Binky Builder gem initial commit." />
|
301
508
|
<option name="LAST_COMMIT_MESSAGE" value="Binky Builder gem initial commit." />
|
302
509
|
</component>
|
510
|
+
<component name="XDebuggerManager">
|
511
|
+
<breakpoint-manager>
|
512
|
+
<breakpoints>
|
513
|
+
<line-breakpoint enabled="true" type="ruby-line">
|
514
|
+
<url>file://$PROJECT_DIR$/test/binky/builder_test.rb</url>
|
515
|
+
<line>50</line>
|
516
|
+
<option name="timeStamp" value="5" />
|
517
|
+
</line-breakpoint>
|
518
|
+
<line-breakpoint enabled="true" type="ruby-line">
|
519
|
+
<url>file://$PROJECT_DIR$/lib/binky/builder.rb</url>
|
520
|
+
<line>95</line>
|
521
|
+
<option name="timeStamp" value="6" />
|
522
|
+
</line-breakpoint>
|
523
|
+
</breakpoints>
|
524
|
+
</breakpoint-manager>
|
525
|
+
</component>
|
303
526
|
<component name="com.intellij.coverage.CoverageDataManagerImpl">
|
304
|
-
<SUITE FILE_PATH="coverage/binky_builder@
|
527
|
+
<SUITE FILE_PATH="coverage/binky_builder@All_tests_in_binky_builder__binky_builder.rcov" NAME="All tests in binky-builder: binky-builder Coverage Results" MODIFIED="1596460622083" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="rcov" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" MODULE_NAME="binky-builder" />
|
528
|
+
<SUITE FILE_PATH="coverage/binky_builder@All_tests_in_test__binky_builder.rcov" NAME="All tests in test: binky-builder Coverage Results" MODIFIED="1596462079827" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="rcov" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" MODULE_NAME="binky-builder" />
|
529
|
+
<SUITE FILE_PATH="coverage/binky_builder@Run_test__builder_test___binky_builder.rcov" NAME="Run test 'builder_test': binky-builder Coverage Results" MODIFIED="1596462172717" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="rcov" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" MODULE_NAME="binky-builder" />
|
530
|
+
<SUITE FILE_PATH="coverage/binky_builder@test_using_builder__binky_builder.rcov" NAME="test_using_builder: binky-builder Coverage Results" MODIFIED="1596457170843" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="rcov" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" MODULE_NAME="binky-builder" />
|
531
|
+
</component>
|
532
|
+
<component name="debuggerHistoryManager">
|
533
|
+
<expressions id="evaluateExpression">
|
534
|
+
<expression>
|
535
|
+
<expression-string>@obj.to_hash["id"]</expression-string>
|
536
|
+
<language-id>ruby</language-id>
|
537
|
+
<evaluation-mode>EXPRESSION</evaluation-mode>
|
538
|
+
</expression>
|
539
|
+
<expression>
|
540
|
+
<expression-string>@obj.to_hash</expression-string>
|
541
|
+
<language-id>ruby</language-id>
|
542
|
+
<evaluation-mode>EXPRESSION</evaluation-mode>
|
543
|
+
</expression>
|
544
|
+
<expression>
|
545
|
+
<expression-string>@obj.to_hash.id</expression-string>
|
546
|
+
<language-id>ruby</language-id>
|
547
|
+
<evaluation-mode>EXPRESSION</evaluation-mode>
|
548
|
+
</expression>
|
549
|
+
<expression>
|
550
|
+
<expression-string>@obj.id</expression-string>
|
551
|
+
<language-id>ruby</language-id>
|
552
|
+
<evaluation-mode>EXPRESSION</evaluation-mode>
|
553
|
+
</expression>
|
554
|
+
<expression>
|
555
|
+
<expression-string>nested_hash_value(json,key)</expression-string>
|
556
|
+
<language-id>ruby</language-id>
|
557
|
+
<evaluation-mode>EXPRESSION</evaluation-mode>
|
558
|
+
</expression>
|
559
|
+
</expressions>
|
305
560
|
</component>
|
306
561
|
<component name="editorHistoryManager">
|
307
562
|
<entry file="file://$PROJECT_DIR$/Gemfile">
|
308
563
|
<provider selected="true" editor-type-id="text-editor" />
|
309
564
|
</entry>
|
310
|
-
<entry file="file://$PROJECT_DIR$/
|
311
|
-
<provider selected="true" editor-type-id="text-editor" />
|
312
|
-
</entry>
|
565
|
+
<entry file="file://$PROJECT_DIR$/lib/binky/builder/builder_helper.rb" />
|
313
566
|
<entry file="file://$PROJECT_DIR$/.travis.yml">
|
314
567
|
<provider selected="true" editor-type-id="text-editor" />
|
315
568
|
</entry>
|
316
569
|
<entry file="file://$PROJECT_DIR$/.gitignore">
|
317
570
|
<provider selected="true" editor-type-id="text-editor" />
|
318
571
|
</entry>
|
572
|
+
<entry file="file://$PROJECT_DIR$/LICENSE.txt">
|
573
|
+
<provider selected="true" editor-type-id="text-editor" />
|
574
|
+
</entry>
|
575
|
+
<entry file="file://$PROJECT_DIR$/binky-builder.gemspec">
|
576
|
+
<provider selected="true" editor-type-id="text-editor">
|
577
|
+
<state relative-caret-position="416">
|
578
|
+
<caret line="16" column="47" selection-start-line="16" selection-start-column="47" selection-end-line="16" selection-end-column="47" />
|
579
|
+
</state>
|
580
|
+
</provider>
|
581
|
+
</entry>
|
582
|
+
<entry file="file://$PROJECT_DIR$/test/test_helper.rb">
|
583
|
+
<provider selected="true" editor-type-id="text-editor">
|
584
|
+
<state relative-caret-position="104">
|
585
|
+
<caret line="4" selection-start-line="4" selection-end-line="4" />
|
586
|
+
</state>
|
587
|
+
</provider>
|
588
|
+
</entry>
|
319
589
|
<entry file="file://$PROJECT_DIR$/README.md">
|
320
590
|
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
321
591
|
<state split_layout="SPLIT">
|
322
|
-
<first_editor>
|
323
|
-
<caret column="
|
592
|
+
<first_editor relative-caret-position="234">
|
593
|
+
<caret line="54" column="3" selection-start-line="54" selection-start-column="3" selection-end-line="54" selection-end-column="3" />
|
324
594
|
</first_editor>
|
325
595
|
<second_editor />
|
326
596
|
</state>
|
327
597
|
</provider>
|
328
598
|
</entry>
|
329
|
-
<entry file="file://$
|
330
|
-
<provider selected="true" editor-type-id="text-editor"
|
599
|
+
<entry file="file://$APPLICATION_HOME_DIR$/rubystubs26/basic_object.rb">
|
600
|
+
<provider selected="true" editor-type-id="text-editor">
|
601
|
+
<state relative-caret-position="4913">
|
602
|
+
<caret line="231" column="8" selection-start-line="231" selection-start-column="8" selection-end-line="231" selection-end-column="8" />
|
603
|
+
</state>
|
604
|
+
</provider>
|
331
605
|
</entry>
|
332
|
-
<entry file="file://$
|
606
|
+
<entry file="file://$APPLICATION_HOME_DIR$/rubystubs26/module.rb">
|
607
|
+
<provider selected="true" editor-type-id="text-editor">
|
608
|
+
<state relative-caret-position="190">
|
609
|
+
<caret line="719" column="33" selection-start-line="719" selection-start-column="18" selection-end-line="719" selection-end-column="33" />
|
610
|
+
</state>
|
611
|
+
</provider>
|
612
|
+
</entry>
|
613
|
+
<entry file="file://$APPLICATION_HOME_DIR$/rubystubs26/object.rb">
|
333
614
|
<provider selected="true" editor-type-id="text-editor">
|
334
|
-
<state relative-caret-position="
|
335
|
-
<caret line="
|
615
|
+
<state relative-caret-position="970">
|
616
|
+
<caret line="718" column="8" selection-start-line="718" selection-start-column="8" selection-end-line="718" selection-end-column="8" />
|
336
617
|
</state>
|
337
618
|
</provider>
|
338
619
|
</entry>
|
339
|
-
<entry file="file://$
|
620
|
+
<entry file="file://$USER_HOME$/.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/minitest-5.14.1/lib/minitest/test.rb">
|
340
621
|
<provider selected="true" editor-type-id="text-editor">
|
341
|
-
<state relative-caret-position="
|
342
|
-
<caret line="
|
622
|
+
<state relative-caret-position="147">
|
623
|
+
<caret line="198" selection-start-line="198" selection-end-line="198" />
|
624
|
+
</state>
|
625
|
+
</provider>
|
626
|
+
</entry>
|
627
|
+
<entry file="file://$APPLICATION_HOME_DIR$/rubystubs26/string.rb">
|
628
|
+
<provider selected="true" editor-type-id="text-editor">
|
629
|
+
<state relative-caret-position="-4057">
|
630
|
+
<caret line="1281" column="8" selection-start-line="1281" selection-start-column="8" selection-end-line="1281" selection-end-column="8" />
|
343
631
|
</state>
|
344
632
|
</provider>
|
345
633
|
</entry>
|
346
634
|
<entry file="file://$PROJECT_DIR$/lib/binky/builder.rb">
|
347
635
|
<provider selected="true" editor-type-id="text-editor">
|
348
|
-
<state relative-caret-position="
|
349
|
-
<caret line="
|
636
|
+
<state relative-caret-position="287">
|
637
|
+
<caret line="14" column="35" selection-start-line="14" selection-start-column="35" selection-end-line="14" selection-end-column="35" />
|
350
638
|
</state>
|
351
639
|
</provider>
|
352
640
|
</entry>
|
353
|
-
<entry file="file://$PROJECT_DIR$/binky
|
641
|
+
<entry file="file://$PROJECT_DIR$/test/binky/builder_test.rb">
|
354
642
|
<provider selected="true" editor-type-id="text-editor">
|
355
|
-
<state relative-caret-position="
|
356
|
-
<caret line="
|
643
|
+
<state relative-caret-position="235">
|
644
|
+
<caret line="29" column="33" lean-forward="true" selection-start-line="29" selection-start-column="33" selection-end-line="29" selection-end-column="33" />
|
357
645
|
</state>
|
358
646
|
</provider>
|
359
647
|
</entry>
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Binky::Builder  [ [](https://badge.fury.io/rb/binky-builder)
|
2
2
|
|
3
3
|
## Installation
|
4
4
|
|
@@ -17,8 +17,54 @@ Or install it yourself as:
|
|
17
17
|
$ gem install binky-builder
|
18
18
|
|
19
19
|
## Usage
|
20
|
+
OpenStruct and accessor builder modules.
|
21
|
+
|
22
|
+
### Used as OpenStruct
|
23
|
+
Initialize an instance using json data, including the Builder class on your class definition.
|
24
|
+
Once initialized just use the accessors as any other instance.
|
25
|
+
```ruby
|
26
|
+
class Issue
|
27
|
+
include Binky::Builder
|
28
|
+
alias :super_initialize :initialize
|
29
|
+
|
30
|
+
def initialize(json = nil)
|
31
|
+
super_initialize json
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
issue = Issue.new({id: 1234})
|
36
|
+
issue.id # => 1234
|
37
|
+
```
|
38
|
+
|
39
|
+
### Used on ActiveRecord models
|
40
|
+
Binky-Builder includes another helper that can be used to initialize *ActiveRecord* models based on its column names.
|
41
|
+
```ruby
|
42
|
+
class Issue < ApplicationRecord
|
43
|
+
include Binky::BuilderHelper
|
44
|
+
end
|
45
|
+
|
46
|
+
issue = Issue.new.build_by_keys({id: 1234},Issue.column_names) # => Issue.column_names = id:
|
47
|
+
issue.id # => 1234
|
48
|
+
```
|
49
|
+
|
50
|
+
Call *build_by_keys* method once the model has been initialized passing a json message,
|
51
|
+
it will *yield* self as a block in case you want to perform further actions.
|
52
|
+
This method will also create an instance variable called *@to_hash* contains a pair-value hash as a result.
|
53
|
+
```ruby
|
54
|
+
build_by_keys(json = {},keys = nil)
|
55
|
+
```
|
56
|
+
|
57
|
+
### Auxiliary methods
|
58
|
+
Binky-Builder comes with two extra methods to search and create instance variable and methods.
|
59
|
+
It creates a instance variable along with its accessor methods (read/write).
|
60
|
+
```ruby
|
61
|
+
accessor_builder(key, value)
|
62
|
+
```
|
63
|
+
This method goes through the whole object, being a hash, looking for the passed key and return the value found.
|
64
|
+
```ruby
|
65
|
+
nested_hash_value(obj, key)
|
66
|
+
```
|
20
67
|
|
21
|
-
Builder modules to create either class ghost methods from a given json or an open struct.
|
22
68
|
|
23
69
|
## Development
|
24
70
|
|
data/lib/binky/builder.rb
CHANGED
@@ -3,8 +3,22 @@ require "binky/builder/version"
|
|
3
3
|
module Binky
|
4
4
|
module BuilderHelper
|
5
5
|
|
6
|
+
# Parses a given json structure looking for specific keys inside the structure.
|
7
|
+
# Keys are given through a block.
|
8
|
+
# The result of it it's stored on a instance variable called to_hash and accessible through accessors with same name.
|
9
|
+
def build_by_keys(json = {}, keys = nil)
|
10
|
+
accessor_builder('to_hash',{})
|
11
|
+
k = keys || json&.keys
|
12
|
+
raise ArgumentError unless k&.respond_to?(:each)
|
13
|
+
json.transform_keys!(&:to_sym)
|
14
|
+
k.each do |key|
|
15
|
+
@to_hash.merge!({key.to_sym => nested_hash_value(json,key.to_sym)})
|
16
|
+
end unless json.nil?
|
17
|
+
yield self if block_given?
|
18
|
+
end
|
19
|
+
|
6
20
|
# Builds an instance variable as well as its class method accessors from a key value pair.
|
7
|
-
def accessor_builder
|
21
|
+
def accessor_builder(k, v)
|
8
22
|
self.instance_variable_set("@#{k}", v)
|
9
23
|
self.class.send(:define_method, "#{k}", proc {self.instance_variable_get("@#{k}")})
|
10
24
|
self.class.send(:define_method, "#{k}=", proc {|v| self.instance_variable_set("@#{k}", v)})
|
@@ -35,23 +49,11 @@ module Binky
|
|
35
49
|
end
|
36
50
|
end
|
37
51
|
|
38
|
-
# Parses a given json structure looking for specific keys inside the structure.
|
39
|
-
# The result of it it's stored on a instance variable called to_hash and accessible through accessors with same name.
|
40
|
-
def parse(json = {},keys = [])
|
41
|
-
accessor_builder('to_hash',{})
|
42
|
-
keys.each do |key|
|
43
|
-
@to_hash.merge!({key => nested_hash_value(json,key)})
|
44
|
-
end unless json.blank?
|
45
|
-
end
|
46
|
-
|
47
52
|
def attribute_from_inner_key(element, attribute, inner_key = nil)
|
48
|
-
{attribute.to_sym => nested_hash_value(element, inner_key
|
53
|
+
{attribute.to_sym => nested_hash_value(element, inner_key&.present? ? inner_key : attribute.to_s)}
|
49
54
|
end
|
50
|
-
|
51
55
|
end
|
52
56
|
|
53
|
-
|
54
|
-
|
55
57
|
module Builder
|
56
58
|
class Error < StandardError; end
|
57
59
|
include BuilderHelper
|
@@ -60,7 +62,7 @@ module Binky
|
|
60
62
|
@attributes = {}
|
61
63
|
json.each do |k, v|
|
62
64
|
self.send("#{k}=", v)
|
63
|
-
end unless json.
|
65
|
+
end unless json.nil?
|
64
66
|
end
|
65
67
|
|
66
68
|
def method_missing(name, *args)
|
@@ -81,10 +83,13 @@ module Binky
|
|
81
83
|
class Error < StandardError; end
|
82
84
|
include BuilderHelper
|
83
85
|
|
84
|
-
def initialize(json = {})
|
85
|
-
|
86
|
-
|
87
|
-
|
86
|
+
def initialize(json = {}, keys = nil)
|
87
|
+
k = keys || json&.keys
|
88
|
+
k&.reject! {|key| key.to_s.include?("=")}
|
89
|
+
json.transform_keys!(&:to_sym)
|
90
|
+
k&.each do |key|
|
91
|
+
self.send("#{key}=",nested_hash_value(json, key.to_sym))
|
92
|
+
end unless json.nil?
|
88
93
|
end
|
89
94
|
|
90
95
|
def method_missing(name,*args)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: binky-builder
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eduard Garcia Castello
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-08-03 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description:
|
14
14
|
email:
|