MuranoCLI 3.0.2 → 3.0.4

Sign up to get free protection for your applications and to get access to all the features.
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