MuranoCLI 3.0.2 → 3.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +30 -59
  3. data/Gemfile +9 -3
  4. data/MuranoCLI.gemspec +11 -4
  5. data/bin/murano +2 -90
  6. data/lib/MrMurano.rb +5 -1
  7. data/lib/MrMurano/{spec_commander.rb → Commander-Entry.rb} +1 -2
  8. data/lib/MrMurano/Solution.rb +12 -15
  9. data/lib/MrMurano/SolutionId.rb +1 -5
  10. data/lib/MrMurano/SyncAllowed.rb +2 -2
  11. data/lib/MrMurano/SyncUpDown.rb +6 -3
  12. data/lib/MrMurano/progress.rb +11 -2
  13. data/lib/MrMurano/verbosing.rb +3 -2
  14. data/lib/MrMurano/version.rb +2 -2
  15. data/spec/Account-Passwords_spec.rb +34 -48
  16. data/spec/Account_spec.rb +58 -63
  17. data/spec/Business_spec.rb +151 -139
  18. data/spec/ConfigFile_spec.rb +15 -11
  19. data/spec/ConfigMigrate_spec.rb +23 -12
  20. data/spec/Config_spec.rb +57 -54
  21. data/spec/Content_spec.rb +233 -201
  22. data/spec/GatewayBase_spec.rb +35 -27
  23. data/spec/GatewayDevice_spec.rb +149 -149
  24. data/spec/GatewayResource_spec.rb +115 -102
  25. data/spec/GatewaySettings_spec.rb +69 -62
  26. data/spec/Http_spec.rb +66 -56
  27. data/spec/MakePretties_spec.rb +82 -73
  28. data/spec/Mock_spec.rb +38 -29
  29. data/spec/ProjectFile_spec.rb +118 -106
  30. data/spec/Setting_spec.rb +24 -15
  31. data/spec/Solution-ServiceConfig_spec.rb +168 -140
  32. data/spec/Solution-ServiceEventHandler_spec.rb +186 -188
  33. data/spec/Solution-ServiceModules_spec.rb +314 -232
  34. data/spec/Solution-UsersRoles_spec.rb +136 -86
  35. data/spec/Solution_spec.rb +78 -50
  36. data/spec/SyncRoot_spec.rb +26 -24
  37. data/spec/SyncUpDown_spec.rb +268 -249
  38. data/spec/Verbosing_spec.rb +95 -93
  39. data/spec/Webservice-Cors_spec.rb +141 -95
  40. data/spec/Webservice-Endpoint_spec.rb +382 -346
  41. data/spec/Webservice-File_spec.rb +148 -109
  42. data/spec/Webservice-Setting_spec.rb +47 -41
  43. data/spec/cmd_business_spec.rb +17 -17
  44. data/spec/cmd_common.rb +27 -7
  45. data/spec/cmd_config_spec.rb +31 -20
  46. data/spec/cmd_content_spec.rb +80 -68
  47. data/spec/cmd_cors_spec.rb +11 -5
  48. data/spec/cmd_device_spec.rb +16 -14
  49. data/spec/cmd_domain_spec.rb +10 -8
  50. data/spec/cmd_exchange_spec.rb +3 -3
  51. data/spec/cmd_init_spec.rb +100 -101
  52. data/spec/cmd_keystore_spec.rb +17 -12
  53. data/spec/cmd_link_spec.rb +22 -37
  54. data/spec/cmd_password_spec.rb +11 -7
  55. data/spec/cmd_setting_application_spec.rb +47 -33
  56. data/spec/cmd_setting_product_spec.rb +32 -27
  57. data/spec/cmd_status_spec.rb +125 -114
  58. data/spec/cmd_syncdown_spec.rb +70 -65
  59. data/spec/cmd_syncup_spec.rb +19 -15
  60. data/spec/cmd_usage_spec.rb +14 -10
  61. metadata +29 -15
@@ -1,5 +1,5 @@
1
- # Last Modified: 2017.08.16 /coding: utf-8
2
- # frozen_string_literal: probably not yet
1
+ # Last Modified: 2017.09.12 /coding: utf-8
2
+ # frozen_string_literal: true
3
3
 
4
4
  # Copyright © 2016-2017 Exosite LLC.
5
5
  # License: MIT. See LICENSE.txt.
@@ -11,7 +11,7 @@ require 'pathname'
11
11
  require 'cmd_common'
12
12
 
13
13
  RSpec.describe 'murano device', :cmd, :needs_password do
14
- include_context "CI_CMD"
14
+ include_context 'CI_CMD'
15
15
 
16
16
  before(:example) do
17
17
  @product_name = rname('deviceTest')
@@ -27,7 +27,7 @@ RSpec.describe 'murano device', :cmd, :needs_password do
27
27
  expect(status.exitstatus).to eq(0)
28
28
  end
29
29
 
30
- it "enables and lists" do
30
+ it 'enables and lists' do
31
31
  out, err, status = Open3.capture3(capcmd('murano', 'product', 'device', 'enable', '12345'))
32
32
  expect(out).to eq('')
33
33
  expect(err).to eq('')
@@ -44,7 +44,7 @@ RSpec.describe 'murano device', :cmd, :needs_password do
44
44
  expect(status.exitstatus).to eq(0)
45
45
  end
46
46
 
47
- it "enables a batch" do
47
+ it 'enables a batch' do
48
48
  File.open('ids.csv', 'w') do |io|
49
49
  io << "ID\n"
50
50
  io << "1234\n"
@@ -70,7 +70,7 @@ RSpec.describe 'murano device', :cmd, :needs_password do
70
70
  expect(status.exitstatus).to eq(0)
71
71
  end
72
72
 
73
- it "activates" do
73
+ it 'activates' do
74
74
  out, err, status = Open3.capture3(capcmd('murano', 'product', 'device', 'enable', '12345'))
75
75
  expect(out).to eq('')
76
76
  expect(err).to eq('')
@@ -85,7 +85,7 @@ RSpec.describe 'murano device', :cmd, :needs_password do
85
85
  expect(status.exitstatus).to eq(0)
86
86
  end
87
87
 
88
- it "writes and reads" do
88
+ it 'writes and reads' do
89
89
  FileUtils.mkpath('specs')
90
90
  FileUtils.copy(
91
91
  File.join(@testdir, 'spec/fixtures/product_spec_files/lightbulb.yaml'),
@@ -128,13 +128,15 @@ RSpec.describe 'murano device', :cmd, :needs_password do
128
128
  out, err, status = Open3.capture3(capcmd('murano', 'product', 'device', 'read', '12345', 'state'))
129
129
  #expect(out.strip).to eq('42')
130
130
  expect(err).to eq('')
131
- expect(out.lines).to match_array([
132
- /^(\+-+){4}\+$/,
133
- /^\| Alias\s+\| Reported\s+\| Set\s+\| Timestamp\s+\|$/,
134
- /^(\+-+){4}\+$/,
135
- /^\| state\s+\| \s+\| 42\s+\| \d+\s+\|$/,
136
- /^(\+-+){4}\+$/,
137
- ])
131
+ expect(out.lines).to match_array(
132
+ [
133
+ /^(\+-+){4}\+$/,
134
+ /^\| Alias\s+\| Reported\s+\| Set\s+\| Timestamp\s+\|$/,
135
+ /^(\+-+){4}\+$/,
136
+ /^\| state\s+\| \s+\| 42\s+\| \d+\s+\|$/,
137
+ /^(\+-+){4}\+$/,
138
+ ]
139
+ )
138
140
  expect(status.exitstatus).to eq(0)
139
141
  end
140
142
  end
@@ -1,5 +1,5 @@
1
- # Last Modified: 2017.08.16 /coding: utf-8
2
- # frozen_string_literal: probably not yet
1
+ # Last Modified: 2017.09.12 /coding: utf-8
2
+ # frozen_string_literal: true
3
3
 
4
4
  # Copyright © 2016-2017 Exosite LLC.
5
5
  # License: MIT. See LICENSE.txt.
@@ -11,7 +11,7 @@ require 'pathname'
11
11
  require 'cmd_common'
12
12
 
13
13
  RSpec.describe 'murano domain', :cmd, :needs_password do
14
- include_context "CI_CMD"
14
+ include_context 'CI_CMD'
15
15
 
16
16
  before(:example) do
17
17
  @product_name = rname('domainTest')
@@ -36,17 +36,19 @@ RSpec.describe 'murano domain', :cmd, :needs_password do
36
36
  expect(status.exitstatus).to eq(0)
37
37
  end
38
38
 
39
- it "show domain" do
39
+ it 'show domain' do
40
40
  out, err, status = Open3.capture3(capcmd('murano', 'domain'))
41
41
  # 2017-05-31: Previously, the project could be named whatever and
42
42
  # the URI would start with the same.
43
- # expect(out.chomp).to start_with("#{@product_name.downcase}.apps.exosite").and end_with(".io")
44
- # Now, it's: <ID>.m2.exosite.io, where ID is of the form, "j41fj45hhk82so0os"
43
+ # expect(out.chomp).to start_with("#{@product_name.downcase}.apps.exosite").and end_with('.io')
44
+ # Now, it's: <ID>.m2.exosite.io, where ID is of the form, 'j41fj45hhk82so0os'
45
45
  # Is there an expected length? [lb] has seen {16,17}
46
46
  #expect(out.split('.', 2)[0]).to match(/^[a-zA-Z0-9]{16,17}$/)
47
- #expect(out.chomp).to end_with("m2.exosite.io")
47
+ #expect(out.chomp).to end_with('m2.exosite.io')
48
48
  out.lines.each do |line|
49
- expect(line).to match(/^(Product|Application): domain[Tt]est[a-z0-9]+ <[a-z0-9]+> https:\/\/[.a-z0-9]+$/)
49
+ expect(line).to match(
50
+ %r{^(Product|Application): domain[Tt]est[a-z0-9]+ <[a-z0-9]+> https://[.a-z0-9]+$}
51
+ )
50
52
  end
51
53
  expect(err).to eq('')
52
54
  expect(status.exitstatus).to eq(0)
@@ -1,4 +1,4 @@
1
- # Last Modified: 2017.08.31 /coding: utf-8
1
+ # Last Modified: 2017.09.12 /coding: utf-8
2
2
  # frozen_string_literal: true
3
3
 
4
4
  # Copyright © 2016-2017 Exosite LLC.
@@ -107,8 +107,8 @@ RSpec.describe 'murano exchange', :cmd, :needs_password do
107
107
  element_id = stdout.strip
108
108
  stdout, stderr = murano_command_exits('exchange purchase', element_id)
109
109
  expect(stdout).to eq('')
110
- expect(stderr).to eq(
111
- "The specified element has already been purchased: ‘#{element_name} (#{element_id})\n"
110
+ expect(strip_fancy(stderr)).to eq(
111
+ "The specified element has already been purchased: '#{element_name}' (#{element_id})\n"
112
112
  )
113
113
  end
114
114
  end
@@ -1,4 +1,4 @@
1
- # Last Modified: 2017.08.29 /coding: utf-8
1
+ # Last Modified: 2017.09.12 /coding: utf-8
2
2
  # frozen_string_literal: true
3
3
 
4
4
  # Copyright © 2016-2017 Exosite LLC.
@@ -11,9 +11,9 @@ require 'pathname'
11
11
  require 'cmd_common'
12
12
 
13
13
  RSpec.describe 'murano init', :cmd do
14
- include_context "CI_CMD"
14
+ include_context 'CI_CMD'
15
15
 
16
- def expectedResponseWhenIdsFoundInConfig(
16
+ def expected_response_when_ids_found_in_config(
17
17
  t,
18
18
  expect_rebasing: false,
19
19
  has_one_each_soln: false,
@@ -74,9 +74,9 @@ RSpec.describe 'murano init', :cmd do
74
74
  ]
75
75
  end
76
76
  expecting += [
77
- t.a_string_matching(%r{Linked ‘\w+’ to ‘\w+’\n}),
77
+ t.a_string_matching(/Linked '\w+' to '\w+'\n/),
78
78
  "\n",
79
- t.a_string_matching(%r{Created default event handler\n}),
79
+ t.a_string_matching(/Created default event handler\n/),
80
80
  "\n",
81
81
  ]
82
82
  if expect_proj_file_write
@@ -128,26 +128,26 @@ RSpec.describe 'murano init', :cmd do
128
128
  expecting += [
129
129
  "Success!\n",
130
130
  "\n",
131
- t.a_string_matching(%r{\s+Business ID: \w+\n}),
132
- t.a_string_matching(%r{(\s+Application ID: \w+\n)?}),
133
- t.a_string_matching(%r{(\s+Product ID: \w+\n)?}),
131
+ t.a_string_matching(/\s+Business ID: \w+\n/),
132
+ t.a_string_matching(/(\s+Application ID: \w+\n)?/),
133
+ t.a_string_matching(/(\s+Product ID: \w+\n)?/),
134
134
  "\n",
135
135
  ]
136
136
  expecting
137
137
  end
138
138
 
139
- it "Won't init in HOME (gracefully)" do
139
+ it %(Won't init in HOME (gracefully)) do
140
140
  # this is in the project dir. Want to be in HOME
141
141
  Dir.chdir(ENV['HOME']) do
142
142
  out, err, status = Open3.capture3(capcmd('murano', 'init'))
143
- expect(out).to eq("")
143
+ expect(out).to eq('')
144
144
  expect(err).to eq("\e[31mCannot init a project in your HOME directory.\e[0m\n")
145
145
  expect(status.exitstatus).to eq(2)
146
146
  end
147
147
  end
148
148
 
149
- context "in empty directory", :needs_password do
150
- context "with" do
149
+ context 'in empty directory', :needs_password do
150
+ context 'with' do
151
151
  # Setup a product and application to use.
152
152
  # Doing this in a context with before&after so that after runs even when test
153
153
  # fails.
@@ -181,30 +181,30 @@ RSpec.describe 'murano init', :cmd do
181
181
  expect(status.exitstatus).to eq(0)
182
182
  end
183
183
 
184
- it "existing project" do
184
+ it 'existing project' do
185
185
  # The test account will have one business, one product, and one application.
186
186
  # So it won't ask any questions.
187
187
  out, err, status = Open3.capture3(capcmd('murano', 'init'))
188
- expecting = expectedResponseWhenIdsFoundInConfig(
188
+ expecting = expected_response_when_ids_found_in_config(
189
189
  self,
190
190
  has_one_each_soln: true,
191
191
  )
192
- out_lines = out.lines.map { |line| line.encode!('UTF-8', 'UTF-8') }
192
+ out_lines = out.lines.map { |line| strip_fancy(line) }
193
193
  expect(out_lines).to match_array(expecting)
194
194
  expect(err).to eq('')
195
195
  expect(status.exitstatus).to eq(0)
196
196
 
197
- expect(File.directory?(".murano")).to be true
198
- expect(File.exist?(".murano/config")).to be true
199
- expect(File.directory?("routes")).to be true
200
- expect(File.directory?("services")).to be true
201
- expect(File.directory?("files")).to be true
202
- expect(File.directory?("modules")).to be true
203
- expect(File.directory?("specs")).to be true
197
+ expect(File.directory?('.murano')).to be true
198
+ expect(File.exist?('.murano/config')).to be true
199
+ expect(File.directory?('routes')).to be true
200
+ expect(File.directory?('services')).to be true
201
+ expect(File.directory?('files')).to be true
202
+ expect(File.directory?('modules')).to be true
203
+ expect(File.directory?('specs')).to be true
204
204
  end
205
205
  end
206
206
 
207
- context "without", :needs_password do
207
+ context 'without', :needs_password do
208
208
  before(:example) do
209
209
  murano_solutions_expunge_yes
210
210
  @applctn_name = rname('initCreatingApp')
@@ -222,7 +222,7 @@ RSpec.describe 'murano init', :cmd do
222
222
  expect(status.exitstatus).to eq(0)
223
223
  end
224
224
 
225
- it "existing project" do
225
+ it 'existing project' do
226
226
  # The test account will have one business.
227
227
  # It will ask to create an application and product.
228
228
  # MAGIC_NUMBER: !!!! the 8 is hardcoded indention here !!!!
@@ -233,12 +233,12 @@ RSpec.describe 'murano init', :cmd do
233
233
  EOT
234
234
  # 2017-07-05: [lb] added line numbers to use debugger to help maintain this test.
235
235
  out, err, status = Open3.capture3(capcmd('murano', 'init'), stdin_data: data)
236
- expecting = expectedResponseWhenIdsFoundInConfig(
236
+ expecting = expected_response_when_ids_found_in_config(
237
237
  self,
238
238
  has_no_solutions: true,
239
239
  expect_proj_file_write: true,
240
240
  )
241
- out_lines = out.lines.map { |line| line.encode!('UTF-8', 'UTF-8') }
241
+ out_lines = out.lines.map { |line| strip_fancy(line) }
242
242
  expect(out_lines).to match_array(expecting)
243
243
  #expect(out.lines).to match_array([
244
244
  # "\n", # 0
@@ -258,7 +258,7 @@ RSpec.describe 'murano init', :cmd do
258
258
  # "Please enter the Product name: \n", # 14
259
259
  # a_string_starting_with('Created new Product: '), # 15
260
260
  # "\n", # 16
261
- # a_string_starting_with('Linked '), # 17
261
+ # a_string_starting_with("Linked '"), # 17
262
262
  # "\n", # 18
263
263
  # "Created default event handler\n", # 19
264
264
  # "\n", # 20
@@ -273,21 +273,21 @@ RSpec.describe 'murano init', :cmd do
273
273
  # a_string_starting_with(' Product ID: '), # 29
274
274
  # "\n", # 30
275
275
  #])
276
- expect(err).to eq("")
276
+ expect(err).to eq('')
277
277
  expect(status.exitstatus).to eq(0)
278
278
 
279
- expect(File.directory?(".murano")).to be true
280
- expect(File.exist?(".murano/config")).to be true
281
- expect(File.directory?("routes")).to be true
282
- expect(File.directory?("services")).to be true
283
- expect(File.directory?("files")).to be true
284
- expect(File.directory?("modules")).to be true
285
- expect(File.directory?("specs")).to be true
279
+ expect(File.directory?('.murano')).to be true
280
+ expect(File.exist?('.murano/config')).to be true
281
+ expect(File.directory?('routes')).to be true
282
+ expect(File.directory?('services')).to be true
283
+ expect(File.directory?('files')).to be true
284
+ expect(File.directory?('modules')).to be true
285
+ expect(File.directory?('specs')).to be true
286
286
  end
287
287
  end
288
288
  end
289
289
 
290
- context "in existing project directory", :needs_password do
290
+ context 'in existing project directory', :needs_password do
291
291
  before(:example) do
292
292
  murano_solutions_expunge_yes
293
293
 
@@ -324,11 +324,11 @@ RSpec.describe 'murano init', :cmd do
324
324
  end
325
325
  end
326
326
 
327
- it "without ProjectFile" do
327
+ it 'without ProjectFile' do
328
328
  # The test account will have one business, one product, and one application.
329
329
  # So it won't ask any questions.
330
330
  out, err, status = Open3.capture3(capcmd('murano', 'init'))
331
- the_expected = expectedResponseWhenIdsFoundInConfig(
331
+ the_expected = expected_response_when_ids_found_in_config(
332
332
  self,
333
333
  expect_rebasing: true,
334
334
  creates_some_default_directories: true,
@@ -336,26 +336,26 @@ RSpec.describe 'murano init', :cmd do
336
336
  # murano init *will* download all the event handlers.
337
337
  #local_files_found: true,
338
338
  )
339
- out_lines = out.lines.map { |line| line.encode!('UTF-8', 'UTF-8') }
339
+ out_lines = out.lines.map { |line| strip_fancy(line) }
340
340
  expect(out_lines).to match_array(the_expected)
341
- expect(err).to eq("")
341
+ expect(err).to eq('')
342
342
  expect(status.exitstatus).to eq(0)
343
343
 
344
- expect(File.directory?(".murano")).to be true
345
- expect(File.exist?(".murano/config")).to be true
346
- expect(File.directory?("routes")).to be true
347
- expect(File.directory?("services")).to be true
348
- expect(File.directory?("files")).to be true
349
- expect(File.directory?("modules")).to be true
350
- expect(File.directory?("specs")).to be true
344
+ expect(File.directory?('.murano')).to be true
345
+ expect(File.exist?('.murano/config')).to be true
346
+ expect(File.directory?('routes')).to be true
347
+ expect(File.directory?('services')).to be true
348
+ expect(File.directory?('files')).to be true
349
+ expect(File.directory?('modules')).to be true
350
+ expect(File.directory?('specs')).to be true
351
351
  end
352
352
 
353
- it "with ProjectFile" do
353
+ it 'with ProjectFile' do
354
354
  FileUtils.copy(File.join(@testdir, 'spec/fixtures/ProjectFiles/only_meta.yaml'), 'test.murano')
355
355
  # The test account will have one business, one product, and one application.
356
356
  # So it won't ask any questions.
357
357
  out, err, status = Open3.capture3(capcmd('murano', 'init'))
358
- expected = expectedResponseWhenIdsFoundInConfig(
358
+ expected = expected_response_when_ids_found_in_config(
359
359
  self,
360
360
  expect_rebasing: true,
361
361
  expect_proj_file_write: false,
@@ -364,40 +364,40 @@ RSpec.describe 'murano init', :cmd do
364
364
  # murano init *will* download all the event handlers.
365
365
  #local_files_found: true,
366
366
  )
367
- out_lines = out.lines.map { |line| line.encode!('UTF-8', 'UTF-8') }
367
+ out_lines = out.lines.map { |line| strip_fancy(line) }
368
368
  expect(out_lines).to match_array(expected)
369
- expect(err).to eq("")
369
+ expect(err).to eq('')
370
370
  expect(status.exitstatus).to eq(0)
371
371
 
372
- expect(File.directory?(".murano")).to be true
373
- expect(File.exist?(".murano/config")).to be true
374
- expect(File.directory?("routes")).to be true
375
- expect(File.directory?("services")).to be true
376
- expect(File.directory?("files")).to be true
377
- expect(File.directory?("modules")).to be true
378
- expect(File.directory?("specs")).to be true
372
+ expect(File.directory?('.murano')).to be true
373
+ expect(File.exist?('.murano/config')).to be true
374
+ expect(File.directory?('routes')).to be true
375
+ expect(File.directory?('services')).to be true
376
+ expect(File.directory?('files')).to be true
377
+ expect(File.directory?('modules')).to be true
378
+ expect(File.directory?('specs')).to be true
379
379
  end
380
380
 
381
- it "with SolutionFile 0.2.0" do
381
+ it 'with SolutionFile 0.2.0' do
382
382
  File.open('Solutionfile.json', 'wb') do |io|
383
383
  io << {
384
- :default_page => 'index.html',
385
- :file_dir => 'files',
386
- :custom_api => 'routes/manyRoutes.lua',
387
- :modules => {
388
- :table_util => 'modules/table_util.lua'
384
+ default_page: 'index.html',
385
+ file_dir: 'files',
386
+ custom_api: 'routes/manyRoutes.lua',
387
+ modules: {
388
+ table_util: 'modules/table_util.lua',
389
+ },
390
+ event_handler: {
391
+ device: {
392
+ datapoint: 'services/devdata.lua',
393
+ },
389
394
  },
390
- :event_handler => {
391
- :device => {
392
- :datapoint => 'services/devdata.lua'
393
- }
394
- }
395
395
  }.to_json
396
396
  end
397
397
  # The test account will have one business, one product, and one application.
398
398
  # So it won't ask any questions.
399
399
  out, err, status = Open3.capture3(capcmd('murano', 'init'))
400
- expected = expectedResponseWhenIdsFoundInConfig(
400
+ expected = expected_response_when_ids_found_in_config(
401
401
  self,
402
402
  expect_rebasing: true,
403
403
  creates_some_default_directories: true,
@@ -406,41 +406,41 @@ RSpec.describe 'murano init', :cmd do
406
406
  ##local_files_found_application: true,
407
407
  #local_files_found_product: true,
408
408
  )
409
- out_lines = out.lines.map { |line| line.encode!('UTF-8', 'UTF-8') }
409
+ out_lines = out.lines.map { |line| strip_fancy(line) }
410
410
  expect(out_lines).to match_array(expected)
411
- expect(err).to eq("")
411
+ expect(err).to eq('')
412
412
  expect(status.exitstatus).to eq(0)
413
413
 
414
- expect(File.directory?(".murano")).to be true
415
- expect(File.exist?(".murano/config")).to be true
416
- expect(File.directory?("routes")).to be true
417
- expect(File.directory?("services")).to be true
418
- expect(File.directory?("files")).to be true
419
- expect(File.directory?("modules")).to be true
420
- expect(File.directory?("specs")).to be true
414
+ expect(File.directory?('.murano')).to be true
415
+ expect(File.exist?('.murano/config')).to be true
416
+ expect(File.directory?('routes')).to be true
417
+ expect(File.directory?('services')).to be true
418
+ expect(File.directory?('files')).to be true
419
+ expect(File.directory?('modules')).to be true
420
+ expect(File.directory?('specs')).to be true
421
421
  end
422
422
 
423
- it "with SolutionFile 0.3.0" do
423
+ it 'with SolutionFile 0.3.0' do
424
424
  File.open('Solutionfile.json', 'wb') do |io|
425
425
  io << {
426
- :default_page => 'index.html',
427
- :assets => 'files',
428
- :routes => 'routes/manyRoutes.lua',
429
- :modules => {
430
- :table_util => 'modules/table_util.lua'
426
+ default_page: 'index.html',
427
+ assets: 'files',
428
+ routes: 'routes/manyRoutes.lua',
429
+ modules: {
430
+ table_util: 'modules/table_util.lua',
431
431
  },
432
- :services => {
433
- :device => {
434
- :datapoint => 'services/devdata.lua'
435
- }
432
+ services: {
433
+ device: {
434
+ datapoint: 'services/devdata.lua',
435
+ },
436
436
  },
437
- :version => '0.3.0',
437
+ version: '0.3.0',
438
438
  }.to_json
439
439
  end
440
440
  # The test account will have one business, one product, and one application.
441
441
  # So it won't ask any questions.
442
442
  out, err, status = Open3.capture3(capcmd('murano', 'init'))
443
- expected = expectedResponseWhenIdsFoundInConfig(
443
+ expected = expected_response_when_ids_found_in_config(
444
444
  self,
445
445
  expect_rebasing: true,
446
446
  creates_some_default_directories: true,
@@ -449,20 +449,19 @@ RSpec.describe 'murano init', :cmd do
449
449
  ##local_files_found_application: true,
450
450
  #local_files_found_product: true,
451
451
  )
452
- out_lines = out.lines.map { |line| line.encode!('UTF-8', 'UTF-8') }
452
+ out_lines = out.lines.map { |line| strip_fancy(line) }
453
453
  expect(out_lines).to match_array(expected)
454
- expect(err).to eq("")
454
+ expect(err).to eq('')
455
455
  expect(status.exitstatus).to eq(0)
456
456
 
457
- expect(File.directory?(".murano")).to be true
458
- expect(File.exist?(".murano/config")).to be true
459
- expect(File.directory?("routes")).to be true
460
- expect(File.directory?("services")).to be true
461
- expect(File.directory?("files")).to be true
462
- expect(File.directory?("modules")).to be true
463
- expect(File.directory?("specs")).to be true
457
+ expect(File.directory?('.murano')).to be true
458
+ expect(File.exist?('.murano/config')).to be true
459
+ expect(File.directory?('routes')).to be true
460
+ expect(File.directory?('services')).to be true
461
+ expect(File.directory?('files')).to be true
462
+ expect(File.directory?('modules')).to be true
463
+ expect(File.directory?('specs')).to be true
464
464
  end
465
465
  end
466
-
467
466
  end
468
467