liquid-diagrams 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 (63) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +15 -16
  3. data/features/diagrams/bitfield.feature +48 -0
  4. data/features/diagrams/blockdiag.feature +19 -0
  5. data/features/diagrams/erd.feature +19 -0
  6. data/features/diagrams/graphviz.feature +19 -0
  7. data/features/diagrams/mermaid.feature +20 -0
  8. data/features/diagrams/netlistsvg.feature +27 -0
  9. data/features/diagrams/nomnoml.feature +19 -0
  10. data/features/diagrams/plantuml.feature +17 -0
  11. data/features/diagrams/smcat.feature +23 -0
  12. data/features/diagrams/svgbob.feature +19 -0
  13. data/features/diagrams/syntrax.feature +20 -0
  14. data/features/diagrams/vega.feature +23 -0
  15. data/features/diagrams/vegalite.feature +23 -0
  16. data/features/diagrams/wavedrom.feature +24 -0
  17. data/features/step_definitions/diagrams.rb +21 -0
  18. data/features/support/env.rb +15 -0
  19. data/lib/liquid_diagrams.rb +9 -17
  20. data/lib/liquid_diagrams/basic_block.rb +12 -42
  21. data/lib/liquid_diagrams/basic_renderer.rb +43 -1
  22. data/lib/liquid_diagrams/blocks.rb +14 -0
  23. data/lib/liquid_diagrams/renderers.rb +10 -0
  24. data/lib/liquid_diagrams/renderers/bitfield_renderer.rb +9 -13
  25. data/lib/liquid_diagrams/renderers/blockdiag_renderer.rb +7 -15
  26. data/lib/liquid_diagrams/renderers/erd_renderer.rb +7 -15
  27. data/lib/liquid_diagrams/renderers/graphviz_renderer.rb +10 -10
  28. data/lib/liquid_diagrams/renderers/mermaid_renderer.rb +2 -9
  29. data/lib/liquid_diagrams/renderers/netlistsvg_renderer.rb +13 -0
  30. data/lib/liquid_diagrams/renderers/nomnoml_renderer.rb +0 -4
  31. data/lib/liquid_diagrams/renderers/plantuml_renderer.rb +5 -5
  32. data/lib/liquid_diagrams/renderers/smcat_renderer.rb +0 -10
  33. data/lib/liquid_diagrams/renderers/svgbob_renderer.rb +0 -10
  34. data/lib/liquid_diagrams/renderers/syntrax_renderer.rb +0 -10
  35. data/lib/liquid_diagrams/renderers/vega_renderer.rb +9 -23
  36. data/lib/liquid_diagrams/renderers/vegalite_renderer.rb +19 -0
  37. data/lib/liquid_diagrams/renderers/wavedrom_renderer.rb +1 -1
  38. data/lib/liquid_diagrams/rendering.rb +8 -6
  39. data/lib/liquid_diagrams/utils.rb +21 -14
  40. data/lib/liquid_diagrams/version.rb +1 -1
  41. data/spec/liquid_diagrams/basic_block_spec.rb +25 -62
  42. data/spec/liquid_diagrams/basic_renderer_spec.rb +27 -5
  43. data/spec/liquid_diagrams/blocks_spec.rb +0 -0
  44. data/spec/liquid_diagrams/renderers/bitfield_renderer_spec.rb +1 -19
  45. data/spec/liquid_diagrams/renderers/blockdiag_renderer_spec.rb +3 -31
  46. data/spec/liquid_diagrams/renderers/erd_renderer_spec.rb +3 -37
  47. data/spec/liquid_diagrams/renderers/graphviz_renderer_spec.rb +11 -21
  48. data/spec/liquid_diagrams/renderers/mermaid_renderer_spec.rb +3 -19
  49. data/spec/liquid_diagrams/renderers/netlistsvg_renderer_spec.rb +9 -0
  50. data/spec/liquid_diagrams/renderers/nomnoml_renderer_spec.rb +1 -7
  51. data/spec/liquid_diagrams/renderers/plantuml_renderer_spec.rb +4 -14
  52. data/spec/liquid_diagrams/renderers/smcat_renderer_spec.rb +1 -25
  53. data/spec/liquid_diagrams/renderers/svgbob_renderer_spec.rb +1 -23
  54. data/spec/liquid_diagrams/renderers/syntrax_renderer_spec.rb +1 -23
  55. data/spec/liquid_diagrams/renderers/vega_renderer_spec.rb +3 -21
  56. data/spec/liquid_diagrams/renderers/vegalite_renderer_spec.rb +15 -0
  57. data/spec/liquid_diagrams/renderers/wavedrom_renderer_spec.rb +3 -3
  58. data/spec/liquid_diagrams/utils_spec.rb +20 -8
  59. data/spec/liquid_diagrams_spec.rb +52 -0
  60. data/spec/spec_helper.rb +5 -0
  61. data/spec/support/shared_examples.rb +8 -19
  62. data/vendor/{mermaid_puppeteer_config.json → puppeteer.json} +0 -0
  63. metadata +70 -19
@@ -1,6 +1,54 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe LiquidDiagrams do
4
+ describe '.configuration' do
5
+ let(:key) { :liquid_diagrams }
6
+
7
+ context 'with no key' do
8
+ it 'default is empty hash' do
9
+ expect(described_class.configuration({})).to eq({})
10
+ end
11
+
12
+ it 'allow symbol key' do
13
+ expect(described_class.configuration({ key => 'sym' })).to eq 'sym'
14
+ end
15
+
16
+ it 'allow string key' do
17
+ expect(described_class.configuration({ key.to_s => 'str' })).to eq 'str'
18
+ end
19
+
20
+ it 'prefer symbol key' do
21
+ expect(
22
+ described_class.configuration({ key => 'sym', key.to_s => 'str' })
23
+ ).to eq 'sym'
24
+ end
25
+ end
26
+
27
+ context 'with optional key' do
28
+ it 'default is empty hash' do
29
+ expect(described_class.configuration({}, key: :test)).to eq({})
30
+ end
31
+
32
+ it 'allow symbol key' do
33
+ expect(
34
+ described_class.configuration({ key => { k1: :v1 } }, key: :k1)
35
+ ).to eq :v1
36
+ end
37
+
38
+ it 'allow string key' do
39
+ expect(
40
+ described_class.configuration({ key => { 'k1' => :v1 } }, key: :k1)
41
+ ).to eq :v1
42
+ end
43
+
44
+ it 'prefer symbol key' do
45
+ expect(
46
+ described_class.configuration({ key => { k1: :v1, 'k1' => :v2 } }, key: :k1)
47
+ ).to eq :v1
48
+ end
49
+ end
50
+ end
51
+
4
52
  describe '.diagrams' do
5
53
  before do
6
54
  allow(described_class).to receive(:renderers).and_return({})
@@ -29,6 +77,10 @@ RSpec.describe LiquidDiagrams do
29
77
  end
30
78
  end
31
79
 
80
+ describe '.registered_diagrams' do
81
+ it { expect(described_class.registered_diagrams).to eq({}) }
82
+ end
83
+
32
84
  describe '.register_diagrams' do
33
85
  before { allow(described_class).to receive(:register_diagram).and_return '!' }
34
86
 
@@ -2,12 +2,17 @@
2
2
 
3
3
  require 'bundler/setup'
4
4
 
5
+ require 'deep_cover/builtin_takeover'
5
6
  require 'simplecov'
6
7
  require 'pry-byebug'
7
8
 
8
9
  require 'liquid-diagrams'
9
10
 
11
+ format = ENV['CI'] ? 'progress' : 'documentation'
12
+
10
13
  RSpec.configure do |config|
14
+ config.formatter = format
15
+
11
16
  # Enable flags like --only-failures and --next-failure
12
17
  config.example_status_persistence_file_path = '.rspec_status'
13
18
 
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- RSpec.shared_examples 'render with stdin and stdout' do |kclass|
4
- let(:renderer) { kclass.new 'content' }
3
+ RSpec.shared_examples 'render with stdin and stdout' do |klass|
4
+ let(:renderer) { klass.new 'content' }
5
5
 
6
6
  before do
7
7
  allow(renderer).to receive(:build_command).and_return 'cmd'
@@ -10,38 +10,27 @@ RSpec.shared_examples 'render with stdin and stdout' do |kclass|
10
10
  ).and_return 'ok'
11
11
  end
12
12
 
13
- it 'call build_command' do
14
- renderer.render
15
-
16
- expect(renderer).to have_received(:build_command)
17
- end
18
-
19
- it 'render with tempfile' do
13
+ it 'render with stdin and stdout' do
20
14
  expect(renderer.render).to eq 'ok'
21
15
 
22
16
  expect(LiquidDiagrams::Rendering).to have_received(
23
17
  :render_with_stdin_stdout
24
- ).with('cmd', renderer.instance_variable_get(:@content))
18
+ ).with('cmd', 'content')
25
19
  end
26
20
  end
27
21
 
28
- RSpec.shared_examples 'render with tempfile' do |kclass|
29
- let(:renderer) { kclass.new 'content' }
22
+ RSpec.shared_examples 'render with tempfile' do |klass|
23
+ let(:renderer) { klass.new 'content' }
30
24
 
31
25
  before do
32
26
  allow(renderer).to receive(:build_command)
33
27
  allow(LiquidDiagrams::Rendering).to receive(
34
28
  :render_with_tempfile
35
- ).and_yield('in', 'out')
36
-
37
- renderer.render
38
- end
39
-
40
- it 'call build_command' do
41
- expect(renderer).to have_received(:build_command)
29
+ ).and_yield('in', 'out').and_return 'ok'
42
30
  end
43
31
 
44
32
  it 'render with tempfile' do
33
+ expect(renderer.render).to eq 'ok'
45
34
  expect(LiquidDiagrams::Rendering).to have_received(:render_with_tempfile)
46
35
  end
47
36
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: liquid-diagrams
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
  - zhustec
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-05-05 00:00:00.000000000 Z
11
+ date: 2020-05-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: liquid
@@ -153,47 +153,70 @@ extra_rdoc_files: []
153
153
  files:
154
154
  - LICENSE
155
155
  - README.md
156
+ - features/diagrams/bitfield.feature
157
+ - features/diagrams/blockdiag.feature
158
+ - features/diagrams/erd.feature
159
+ - features/diagrams/graphviz.feature
160
+ - features/diagrams/mermaid.feature
161
+ - features/diagrams/netlistsvg.feature
162
+ - features/diagrams/nomnoml.feature
163
+ - features/diagrams/plantuml.feature
164
+ - features/diagrams/smcat.feature
165
+ - features/diagrams/svgbob.feature
166
+ - features/diagrams/syntrax.feature
167
+ - features/diagrams/vega.feature
168
+ - features/diagrams/vegalite.feature
169
+ - features/diagrams/wavedrom.feature
170
+ - features/step_definitions/diagrams.rb
171
+ - features/support/env.rb
156
172
  - lib/liquid-diagrams.rb
157
173
  - lib/liquid_diagrams.rb
158
174
  - lib/liquid_diagrams/basic_block.rb
159
175
  - lib/liquid_diagrams/basic_renderer.rb
176
+ - lib/liquid_diagrams/blocks.rb
160
177
  - lib/liquid_diagrams/errors.rb
178
+ - lib/liquid_diagrams/renderers.rb
161
179
  - lib/liquid_diagrams/renderers/bitfield_renderer.rb
162
180
  - lib/liquid_diagrams/renderers/blockdiag_renderer.rb
163
181
  - lib/liquid_diagrams/renderers/erd_renderer.rb
164
182
  - lib/liquid_diagrams/renderers/graphviz_renderer.rb
165
183
  - lib/liquid_diagrams/renderers/mermaid_renderer.rb
184
+ - lib/liquid_diagrams/renderers/netlistsvg_renderer.rb
166
185
  - lib/liquid_diagrams/renderers/nomnoml_renderer.rb
167
186
  - lib/liquid_diagrams/renderers/plantuml_renderer.rb
168
187
  - lib/liquid_diagrams/renderers/smcat_renderer.rb
169
188
  - lib/liquid_diagrams/renderers/svgbob_renderer.rb
170
189
  - lib/liquid_diagrams/renderers/syntrax_renderer.rb
171
190
  - lib/liquid_diagrams/renderers/vega_renderer.rb
191
+ - lib/liquid_diagrams/renderers/vegalite_renderer.rb
172
192
  - lib/liquid_diagrams/renderers/wavedrom_renderer.rb
173
193
  - lib/liquid_diagrams/rendering.rb
174
194
  - lib/liquid_diagrams/utils.rb
175
195
  - lib/liquid_diagrams/version.rb
176
196
  - spec/liquid_diagrams/basic_block_spec.rb
177
197
  - spec/liquid_diagrams/basic_renderer_spec.rb
198
+ - spec/liquid_diagrams/blocks_spec.rb
178
199
  - spec/liquid_diagrams/renderers/bitfield_renderer_spec.rb
179
200
  - spec/liquid_diagrams/renderers/blockdiag_renderer_spec.rb
180
201
  - spec/liquid_diagrams/renderers/erd_renderer_spec.rb
181
202
  - spec/liquid_diagrams/renderers/graphviz_renderer_spec.rb
182
203
  - spec/liquid_diagrams/renderers/mermaid_renderer_spec.rb
204
+ - spec/liquid_diagrams/renderers/netlistsvg_renderer_spec.rb
183
205
  - spec/liquid_diagrams/renderers/nomnoml_renderer_spec.rb
184
206
  - spec/liquid_diagrams/renderers/plantuml_renderer_spec.rb
185
207
  - spec/liquid_diagrams/renderers/smcat_renderer_spec.rb
186
208
  - spec/liquid_diagrams/renderers/svgbob_renderer_spec.rb
187
209
  - spec/liquid_diagrams/renderers/syntrax_renderer_spec.rb
188
210
  - spec/liquid_diagrams/renderers/vega_renderer_spec.rb
211
+ - spec/liquid_diagrams/renderers/vegalite_renderer_spec.rb
189
212
  - spec/liquid_diagrams/renderers/wavedrom_renderer_spec.rb
190
213
  - spec/liquid_diagrams/rendering_spec.rb
191
214
  - spec/liquid_diagrams/utils_spec.rb
192
215
  - spec/liquid_diagrams_spec.rb
193
216
  - spec/spec_helper.rb
194
217
  - spec/support/shared_examples.rb
195
- - vendor/mermaid_puppeteer_config.json
196
218
  - vendor/plantuml.1.2020.1.jar
219
+ - vendor/puppeteer.json
197
220
  homepage: https://github.com/zhustec/liquid-diagrams
198
221
  licenses:
199
222
  - MIT
@@ -202,13 +225,22 @@ metadata:
202
225
  changelog_uri: https://github.com/zhustec/liquid-diagrams/releases
203
226
  source_code_uri: https://github.com/zhustec/liquid-diagrams
204
227
  bug_tracker_uri: https://github.com/zhustec/liquid-diagrams/issues
205
- post_install_message: "\n __________________________________________________________\n
206
- \ ..........................................................\n\n Thank you
207
- for installing liquid-diagrams.\n\n But it doesn't mean that you can use all
208
- diagrams for now,\n You still need to install some dependencies by your self.\n\n
209
- \ Please refer to the link below for more details:\n\n https://github.com/zhustec/liquid-diagrams#prerequisites\n\n
210
- \ ..........................................................\n __________________________________________________________\n
211
- \ "
228
+ post_install_message: |+
229
+ __________________________________________________________
230
+ ..........................................................
231
+
232
+ Thank you for installing liquid-diagrams.
233
+
234
+ But it doesn't mean that you can use all diagrams for now,
235
+ You still need to install some dependencies by your self.
236
+
237
+ Please refer to the link below for more details:
238
+
239
+ https://github.com/zhustec/liquid-diagrams#prerequisites
240
+
241
+ ..........................................................
242
+ __________________________________________________________
243
+
212
244
  rdoc_options: []
213
245
  require_paths:
214
246
  - lib
@@ -228,22 +260,41 @@ signing_key:
228
260
  specification_version: 4
229
261
  summary: Liquid plugins for diagrams support.
230
262
  test_files:
231
- - spec/liquid_diagrams/basic_block_spec.rb
263
+ - features/step_definitions/diagrams.rb
264
+ - features/support/env.rb
265
+ - features/diagrams/graphviz.feature
266
+ - features/diagrams/smcat.feature
267
+ - features/diagrams/netlistsvg.feature
268
+ - features/diagrams/plantuml.feature
269
+ - features/diagrams/bitfield.feature
270
+ - features/diagrams/wavedrom.feature
271
+ - features/diagrams/vega.feature
272
+ - features/diagrams/blockdiag.feature
273
+ - features/diagrams/erd.feature
274
+ - features/diagrams/nomnoml.feature
275
+ - features/diagrams/syntrax.feature
276
+ - features/diagrams/svgbob.feature
277
+ - features/diagrams/mermaid.feature
278
+ - features/diagrams/vegalite.feature
279
+ - spec/spec_helper.rb
280
+ - spec/support/shared_examples.rb
281
+ - spec/liquid_diagrams/rendering_spec.rb
232
282
  - spec/liquid_diagrams/basic_renderer_spec.rb
283
+ - spec/liquid_diagrams/basic_block_spec.rb
284
+ - spec/liquid_diagrams/blocks_spec.rb
285
+ - spec/liquid_diagrams/renderers/nomnoml_renderer_spec.rb
233
286
  - spec/liquid_diagrams/renderers/bitfield_renderer_spec.rb
234
- - spec/liquid_diagrams/renderers/blockdiag_renderer_spec.rb
235
- - spec/liquid_diagrams/renderers/erd_renderer_spec.rb
236
- - spec/liquid_diagrams/renderers/graphviz_renderer_spec.rb
287
+ - spec/liquid_diagrams/renderers/vegalite_renderer_spec.rb
237
288
  - spec/liquid_diagrams/renderers/mermaid_renderer_spec.rb
238
- - spec/liquid_diagrams/renderers/nomnoml_renderer_spec.rb
239
289
  - spec/liquid_diagrams/renderers/plantuml_renderer_spec.rb
240
290
  - spec/liquid_diagrams/renderers/smcat_renderer_spec.rb
241
291
  - spec/liquid_diagrams/renderers/svgbob_renderer_spec.rb
242
- - spec/liquid_diagrams/renderers/syntrax_renderer_spec.rb
243
292
  - spec/liquid_diagrams/renderers/vega_renderer_spec.rb
293
+ - spec/liquid_diagrams/renderers/blockdiag_renderer_spec.rb
294
+ - spec/liquid_diagrams/renderers/netlistsvg_renderer_spec.rb
295
+ - spec/liquid_diagrams/renderers/graphviz_renderer_spec.rb
296
+ - spec/liquid_diagrams/renderers/syntrax_renderer_spec.rb
244
297
  - spec/liquid_diagrams/renderers/wavedrom_renderer_spec.rb
245
- - spec/liquid_diagrams/rendering_spec.rb
298
+ - spec/liquid_diagrams/renderers/erd_renderer_spec.rb
246
299
  - spec/liquid_diagrams/utils_spec.rb
247
300
  - spec/liquid_diagrams_spec.rb
248
- - spec/spec_helper.rb
249
- - spec/support/shared_examples.rb