kpm 0.8.0 → 0.10.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +2 -0
  3. data/.rubocop.yml +80 -8
  4. data/README.adoc +37 -2
  5. data/docker/docker-compose.ci.mysql.yml +21 -0
  6. data/kpm.gemspec +4 -3
  7. data/lib/kpm/account.rb +4 -3
  8. data/lib/kpm/coordinates.rb +4 -3
  9. data/lib/kpm/database.rb +8 -3
  10. data/lib/kpm/formatter.rb +2 -2
  11. data/lib/kpm/inspector.rb +2 -2
  12. data/lib/kpm/migrations.rb +18 -4
  13. data/lib/kpm/nexus_helper/actions.rb +9 -5
  14. data/lib/kpm/nexus_helper/cloudsmith_api_calls.rb +85 -0
  15. data/lib/kpm/nexus_helper/github_api_calls.rb +70 -0
  16. data/lib/kpm/nexus_helper/nexus_api_calls_v2.rb +79 -50
  17. data/lib/kpm/plugins_directory.yml +14 -6
  18. data/lib/kpm/system.rb +1 -1
  19. data/lib/kpm/tasks.rb +23 -7
  20. data/lib/kpm/tenant_config.rb +1 -1
  21. data/lib/kpm/tomcat_manager.rb +1 -0
  22. data/lib/kpm/version.rb +1 -1
  23. data/pom.xml +211 -40
  24. data/spec/kpm/remote/base_artifact_spec.rb +15 -13
  25. data/spec/kpm/remote/base_installer_spec.rb +13 -13
  26. data/spec/kpm/remote/cloudsmith_api_calls_spec.rb +109 -0
  27. data/spec/kpm/remote/github_api_calls_spec.rb +40 -0
  28. data/spec/kpm/remote/installer_spec.rb +38 -37
  29. data/spec/kpm/remote/kaui_artifact_spec.rb +4 -4
  30. data/spec/kpm/remote/killbill_plugin_artifact_spec.rb +19 -19
  31. data/spec/kpm/remote/killbill_server_artifact_spec.rb +13 -13
  32. data/spec/kpm/remote/migrations_spec.rb +9 -9
  33. data/spec/kpm/remote/nexus_facade_spec.rb +2 -2
  34. data/spec/kpm/remote/tenant_config_spec.rb +3 -3
  35. data/spec/kpm/remote/tomcat_manager_spec.rb +2 -2
  36. data/spec/kpm/unit/actions_spec.rb +2 -2
  37. data/spec/kpm/unit/base_artifact_spec.rb +14 -14
  38. data/spec/kpm/unit/inspector_spec.rb +28 -28
  39. data/spec/kpm/unit/installer_spec.rb +4 -4
  40. data/spec/kpm/unit/plugins_directory_spec.rb +31 -31
  41. data/spec/kpm/unit/plugins_manager_spec.rb +54 -54
  42. data/spec/kpm/unit/sha1_checker_spec.rb +2 -2
  43. data/spec/kpm/unit/uninstaller_spec.rb +21 -21
  44. data/spec/kpm/unit_mysql/account_spec.rb +13 -13
  45. data/spec/spec_helper.rb +1 -1
  46. metadata +28 -16
@@ -18,16 +18,16 @@ describe KPM::KillbillServerArtifact do
18
18
  KPM::BaseArtifact::KILLBILL_CLASSIFIER,
19
19
  'LATEST',
20
20
  dir)
21
- info[:file_name].should eq "killbill-profiles-killbill-#{info[:version]}.war"
22
- info[:size].should eq File.size(info[:file_path])
21
+ expect(info[:file_name]).to eq "killbill-profiles-killbill-#{info[:version]}.war"
22
+ expect(info[:size]).to eq File.size(info[:file_path])
23
23
  end
24
24
  end
25
25
 
26
26
  it 'should be able to list versions' do
27
27
  versions = KPM::KillbillServerArtifact.versions(KPM::BaseArtifact::KILLBILL_ARTIFACT_ID).to_a
28
28
  expect(versions.size).to be >= 2
29
- versions[0].should eq '0.11.10'
30
- versions[1].should eq '0.11.11'
29
+ expect(versions[0]).to eq '0.11.10'
30
+ expect(versions[1]).to eq '0.11.11'
31
31
  end
32
32
 
33
33
  it 'should get dependencies information' do
@@ -36,23 +36,23 @@ describe KPM::KillbillServerArtifact do
36
36
  Dir.mktmpdir do |dir|
37
37
  sha1_file = "#{dir}/sha1.yml"
38
38
  info = KPM::KillbillServerArtifact.info('0.15.9', sha1_file)
39
- info['killbill'].should eq '0.15.9'
40
- info['killbill-oss-parent'].should eq '0.62'
41
- info['killbill-api'].should eq '0.27'
42
- info['killbill-plugin-api'].should eq '0.16'
43
- info['killbill-commons'].should eq '0.10'
44
- info['killbill-platform'].should eq '0.13'
45
- KPM::Sha1Checker.from_file(sha1_file).killbill_info('0.15.9').should eq info
39
+ expect(info['killbill']).to eq '0.15.9'
40
+ expect(info['killbill-oss-parent']).to eq '0.62'
41
+ expect(info['killbill-api']).to eq '0.27'
42
+ expect(info['killbill-plugin-api']).to eq '0.16'
43
+ expect(info['killbill-commons']).to eq '0.10'
44
+ expect(info['killbill-platform']).to eq '0.13'
45
+ expect(KPM::Sha1Checker.from_file(sha1_file).killbill_info('0.15.9')).to eq info
46
46
 
47
47
  # Verify the download is skipped gracefully when Nexus isn't reachable
48
48
  KPM::KillbillServerArtifact.info('0.15.9', sha1_file, false, nil, nexus_down)
49
49
 
50
50
  # Verify the download fails when Nexus isn't reachable and force_download is set
51
- expect { KPM::KillbillServerArtifact.info('0.15.9', sha1_file, true, nil, nexus_down) }.to raise_error
51
+ expect { KPM::KillbillServerArtifact.info('0.15.9', sha1_file, true, nil, nexus_down) }.to raise_exception(SocketError, /(Failed to open TCP connection to does.not.exist:443|getaddrinfo)/)
52
52
 
53
53
  # Verify the download fails when Nexus isn't reachable and the Nexus cache is empty
54
54
  KPM::Sha1Checker.from_file(sha1_file).cache_killbill_info('0.15.9', nil)
55
- expect { KPM::KillbillServerArtifact.info('0.15.9', sha1_file, false, nil, nexus_down) }.to raise_error
55
+ expect { KPM::KillbillServerArtifact.info('0.15.9', sha1_file, false, nil, nexus_down) }.to raise_exception(SocketError, /(Failed to open TCP connection to does.not.exist:443|getaddrinfo)/)
56
56
  end
57
57
  end
58
58
  end
@@ -7,13 +7,13 @@ describe KPM::Migrations, skip_me_if_nil: ENV['TOKEN'].nil? do
7
7
  it 'should be able to find migrations for a java plugin' do
8
8
  migrations = KPM::Migrations.new('analytics-plugin-3.0.2', nil, 'killbill/killbill-analytics-plugin', ENV['TOKEN']).migrations
9
9
  # No migration yet
10
- migrations.size.should eq 0
10
+ expect(migrations.size).to eq 0
11
11
  end
12
12
 
13
13
  it 'should be able to find migrations for a ruby plugin' do
14
14
  migrations = KPM::Migrations.new('master', nil, 'killbill/killbill-cybersource-plugin', ENV['TOKEN']).migrations
15
15
  # No migration yet
16
- migrations.size.should eq 1
16
+ expect(migrations.size).to eq 1
17
17
  end
18
18
  end
19
19
 
@@ -21,19 +21,19 @@ describe KPM::Migrations, skip_me_if_nil: ENV['TOKEN'].nil? do
21
21
  it 'should be able to find migrations between two versions' do
22
22
  migrations = KPM::Migrations.new('killbill-0.16.3', 'killbill-0.16.4', 'killbill/killbill', ENV['TOKEN']).migrations
23
23
 
24
- migrations.size.should eq 1
25
- migrations.first[:name].should eq 'V20160324060345__revisit_payment_methods_indexes_509.sql'
26
- migrations.first[:sql].should eq "drop index payment_methods_active_accnt on payment_methods;\n"
24
+ expect(migrations.size).to eq 1
25
+ expect(migrations.first[:name]).to eq 'V20160324060345__revisit_payment_methods_indexes_509.sql'
26
+ expect(migrations.first[:sql]).to eq "drop index payment_methods_active_accnt on payment_methods;\n"
27
27
 
28
- KPM::Migrations.new('master', 'master', 'killbill/killbill', ENV['TOKEN']).migrations.size.should eq 0
28
+ expect(KPM::Migrations.new('master', 'master', 'killbill/killbill', ENV['TOKEN']).migrations.size).to eq 0
29
29
  end
30
30
 
31
31
  it 'should be able to find migrations for a given version' do
32
32
  migrations = KPM::Migrations.new('killbill-0.16.4', nil, 'killbill/killbill', ENV['TOKEN']).migrations
33
33
 
34
- migrations.size.should eq 1
35
- migrations.first[:name].should eq 'V20160324060345__revisit_payment_methods_indexes_509.sql'
36
- migrations.first[:sql].should eq "drop index payment_methods_active_accnt on payment_methods;\n"
34
+ expect(migrations.size).to eq 1
35
+ expect(migrations.first[:name]).to eq 'V20160324060345__revisit_payment_methods_indexes_509.sql'
36
+ expect(migrations.first[:sql]).to eq "drop index payment_methods_active_accnt on payment_methods;\n"
37
37
  end
38
38
  end
39
39
  end
@@ -51,7 +51,7 @@ describe KPM::NexusFacade do
51
51
  destination = Dir.mktmpdir('artifact')
52
52
  expect { response = nexus_remote.pull_artifact(coordinates, destination) }.not_to raise_exception
53
53
  destination = File.join(File.expand_path(destination), response[:file_name])
54
- expect(File.exist?(destination)).to be_true
54
+ expect(File.exist?(destination)).to be_truthy
55
55
  end
56
56
 
57
57
  it 'when pull artifact with classifier' do
@@ -59,6 +59,6 @@ describe KPM::NexusFacade do
59
59
  destination = Dir.mktmpdir('artifact')
60
60
  expect { response = nexus_remote.pull_artifact(coordinates_with_classifier, destination) }.not_to raise_exception
61
61
  destination = File.join(File.expand_path(destination), response[:file_name])
62
- expect(File.exist?(destination)).to be_true
62
+ expect(File.exist?(destination)).to be_truthy
63
63
  end
64
64
  end
@@ -29,7 +29,7 @@ describe KPM::TenantConfig do
29
29
  end
30
30
 
31
31
  it 'when initialized with options' do
32
- tenant_config_class.should be_an_instance_of(KPM::TenantConfig)
32
+ expect(tenant_config_class).to be_an_instance_of(KPM::TenantConfig)
33
33
  expect(tenant_config_class.instance_variable_get(:@killbill_api_key)).to eq(killbill_api_key)
34
34
  expect(tenant_config_class.instance_variable_get(:@killbill_api_secret)).to eq(killbill_api_secret)
35
35
  expect(tenant_config_class.instance_variable_get(:@killbill_user)).to eq(killbill_user)
@@ -49,8 +49,8 @@ describe KPM::TenantConfig do
49
49
 
50
50
  # get created tenant config
51
51
  export_file = tenant_config_class.export(key)
52
- expect(File.exist?(export_file)).to be_true
53
- expect(File.readlines(export_file).grep(/#{key}/)).to be_true
52
+ expect(File.exist?(export_file)).to be_truthy
53
+ expect(File.readlines(export_file).grep(/#{key}/)).to be_truthy
54
54
 
55
55
  # remove created tenant config
56
56
  KillBillClient::Model::Tenant.delete_tenant_user_key_value(key, user, nil, nil, options)
@@ -13,10 +13,10 @@ describe KPM::TomcatManager do
13
13
  manager = KPM::TomcatManager.new(dir, @logger)
14
14
 
15
15
  tomcat_path = manager.download
16
- tomcat_path.should_not be_nil
16
+ expect(tomcat_path).not_to be_nil
17
17
 
18
18
  root_war_path = manager.setup
19
- root_war_path.should_not be_nil
19
+ expect(root_war_path).not_to be_nil
20
20
  end
21
21
  end
22
22
  end
@@ -8,7 +8,7 @@ describe KPM::NexusFacade::Actions do
8
8
  let(:nexus_mock) { double(KPM::NexusFacade::NexusApiCallsV2) }
9
9
 
10
10
  before do
11
- KPM::NexusFacade::NexusApiCallsV2.stub(:new).and_return(nexus_mock)
11
+ allow(KPM::NexusFacade::NexusApiCallsV2).to receive(:new).and_return(nexus_mock)
12
12
  end
13
13
 
14
14
  context 'when Nexus throws a non-retryable exception' do
@@ -45,7 +45,7 @@ describe KPM::NexusFacade::Actions do
45
45
  raise OpenSSL::SSL::SSLErrorWaitReadable if calls < 2
46
46
 
47
47
  true
48
- end).to be_true
48
+ end).to be_truthy
49
49
  expect(calls).to eq(2)
50
50
  end
51
51
  end
@@ -14,16 +14,16 @@ describe KPM::BaseArtifact do
14
14
  Dir.mktmpdir do |dir|
15
15
  info = KPM::BaseArtifact.pull_from_fs(@logger, file_path, dir)
16
16
 
17
- info[:skipped].should be_false
18
- info[:is_tgz].should be_false
19
- info[:repository_path].should eq file_path
20
- info[:dir_name].should eq dir
21
- info[:bundle_dir].should eq dir
22
- info[:file_name].should eq 'sha1_test.yml'
17
+ expect(info[:skipped]).to be_falsey
18
+ expect(info[:is_tgz]).to be_falsey
19
+ expect(info[:repository_path]).to eq file_path
20
+ expect(info[:dir_name]).to eq dir
21
+ expect(info[:bundle_dir]).to eq dir
22
+ expect(info[:file_name]).to eq 'sha1_test.yml'
23
23
 
24
24
  files_in_dir = Dir[dir + '/*']
25
- files_in_dir.size.should eq 1
26
- files_in_dir[0].should eq info[:file_path]
25
+ expect(files_in_dir.size).to eq 1
26
+ expect(files_in_dir[0]).to eq info[:file_path]
27
27
  end
28
28
  end
29
29
 
@@ -83,11 +83,11 @@ describe KPM::BaseArtifact do
83
83
 
84
84
  KPM::BaseArtifact.send('populate_fs_info', info, specified_destination_path)
85
85
 
86
- info[:repository_path].should eq repository_path
87
- info[:is_tgz].should eq is_tgz
88
- info[:version].should eq version
89
- info[:dir_name].should eq expected_dir_name
90
- info[:file_name].should eq expected_file_name
91
- info[:file_path].should eq expected_file_path
86
+ expect(info[:repository_path]).to eq repository_path
87
+ expect(info[:is_tgz]).to eq is_tgz
88
+ expect(info[:version]).to eq version
89
+ expect(info[:dir_name]).to eq expected_dir_name
90
+ expect(info[:file_name]).to eq expected_file_name
91
+ expect(info[:file_path]).to eq expected_file_path
92
92
  end
93
93
  end
@@ -31,34 +31,34 @@ describe KPM::Inspector do
31
31
 
32
32
  inspector = KPM::Inspector.new
33
33
  all_plugins = inspector.inspect(@bundles_dir)
34
- all_plugins.size.should eq 2
35
-
36
- all_plugins['plugin_bar'][:plugin_key].should eq 'bar'
37
- all_plugins['plugin_bar'][:plugin_path].should eq @java_plugins_dir.join('plugin_bar').to_s
38
- all_plugins['plugin_bar'][:versions].size.should eq 1
39
- all_plugins['plugin_bar'][:versions][0][:version].should eq '1.0.0'
40
- all_plugins['plugin_bar'][:versions][0][:is_default].should eq false
41
- all_plugins['plugin_bar'][:versions][0][:is_disabled].should eq false
42
- all_plugins['plugin_bar'][:versions][0][:sha1].should eq '98765'
43
-
44
- all_plugins['plugin_foo'][:plugin_key].should eq 'foo'
45
- all_plugins['plugin_foo'][:plugin_path].should eq @ruby_plugins_dir.join('plugin_foo').to_s
46
- all_plugins['plugin_foo'][:versions].size.should eq 3
47
-
48
- all_plugins['plugin_foo'][:versions][0][:version].should eq '1.2.3'
49
- all_plugins['plugin_foo'][:versions][0][:is_default].should eq false
50
- all_plugins['plugin_foo'][:versions][0][:is_disabled].should eq true
51
- all_plugins['plugin_foo'][:versions][0][:sha1].should eq '12345'
52
-
53
- all_plugins['plugin_foo'][:versions][1][:version].should eq '2.0.0'
54
- all_plugins['plugin_foo'][:versions][1][:is_default].should eq false
55
- all_plugins['plugin_foo'][:versions][1][:is_disabled].should eq false
56
- all_plugins['plugin_foo'][:versions][1][:sha1].should eq '23456'
57
-
58
- all_plugins['plugin_foo'][:versions][2][:version].should eq '2.0.1'
59
- all_plugins['plugin_foo'][:versions][2][:is_default].should eq true
60
- all_plugins['plugin_foo'][:versions][2][:is_disabled].should eq false
61
- all_plugins['plugin_foo'][:versions][2][:sha1].should eq '34567'
34
+ expect(all_plugins.size).to eq 2
35
+
36
+ expect(all_plugins['plugin_bar'][:plugin_key]).to eq 'bar'
37
+ expect(all_plugins['plugin_bar'][:plugin_path]).to eq @java_plugins_dir.join('plugin_bar').to_s
38
+ expect(all_plugins['plugin_bar'][:versions].size).to eq 1
39
+ expect(all_plugins['plugin_bar'][:versions][0][:version]).to eq '1.0.0'
40
+ expect(all_plugins['plugin_bar'][:versions][0][:is_default]).to eq false
41
+ expect(all_plugins['plugin_bar'][:versions][0][:is_disabled]).to eq false
42
+ expect(all_plugins['plugin_bar'][:versions][0][:sha1]).to eq '98765'
43
+
44
+ expect(all_plugins['plugin_foo'][:plugin_key]).to eq 'foo'
45
+ expect(all_plugins['plugin_foo'][:plugin_path]).to eq @ruby_plugins_dir.join('plugin_foo').to_s
46
+ expect(all_plugins['plugin_foo'][:versions].size).to eq 3
47
+
48
+ expect(all_plugins['plugin_foo'][:versions][0][:version]).to eq '1.2.3'
49
+ expect(all_plugins['plugin_foo'][:versions][0][:is_default]).to eq false
50
+ expect(all_plugins['plugin_foo'][:versions][0][:is_disabled]).to eq true
51
+ expect(all_plugins['plugin_foo'][:versions][0][:sha1]).to eq '12345'
52
+
53
+ expect(all_plugins['plugin_foo'][:versions][1][:version]).to eq '2.0.0'
54
+ expect(all_plugins['plugin_foo'][:versions][1][:is_default]).to eq false
55
+ expect(all_plugins['plugin_foo'][:versions][1][:is_disabled]).to eq false
56
+ expect(all_plugins['plugin_foo'][:versions][1][:sha1]).to eq '23456'
57
+
58
+ expect(all_plugins['plugin_foo'][:versions][2][:version]).to eq '2.0.1'
59
+ expect(all_plugins['plugin_foo'][:versions][2][:is_default]).to eq true
60
+ expect(all_plugins['plugin_foo'][:versions][2][:is_disabled]).to eq false
61
+ expect(all_plugins['plugin_foo'][:versions][2][:sha1]).to eq '34567'
62
62
  end
63
63
 
64
64
  private
@@ -8,11 +8,11 @@ describe KPM::Installer do
8
8
 
9
9
  it 'finds the right stable versions' do
10
10
  config = KPM::Installer.build_default_config(all_kb_versions)
11
- config['killbill'].should_not be_nil
12
- config['killbill']['version'].should eq '0.16.11'
11
+ expect(config['killbill']).not_to be_nil
12
+ expect(config['killbill']['version']).to eq '0.16.11'
13
13
 
14
- config['kaui'].should_not be_nil
15
- config['kaui']['version'].should eq 'LATEST'
14
+ expect(config['kaui']).not_to be_nil
15
+ expect(config['kaui']['version']).to eq 'LATEST'
16
16
  end
17
17
  end
18
18
  end
@@ -5,48 +5,48 @@ require 'spec_helper'
5
5
  describe KPM::PluginsDirectory do
6
6
  it 'should parse the plugins directory' do
7
7
  directory = KPM::PluginsDirectory.all(false)
8
- directory.size.should > 0
8
+ expect(directory.size).to be > 0
9
9
  end
10
10
 
11
11
  it 'should lookup plugins' do
12
12
  group_id, artifact_id, packaging, classifier, version, type = KPM::PluginsDirectory.lookup('analytics', false, '0.20.11')
13
- group_id.should eq 'org.kill-bill.billing.plugin.java'
14
- artifact_id.should eq 'analytics-plugin'
15
- packaging.should eq 'jar'
16
- classifier.should be_nil
17
- version.should eq '6.0.1'
18
- type.should eq :java
13
+ expect(group_id).to eq 'org.kill-bill.billing.plugin.java'
14
+ expect(artifact_id).to eq 'analytics-plugin'
15
+ expect(packaging).to eq 'jar'
16
+ expect(classifier).to be_nil
17
+ expect(version).to eq '6.0.1'
18
+ expect(type).to eq :java
19
19
 
20
20
  group_id, artifact_id, packaging, classifier, version, type = KPM::PluginsDirectory.lookup('analytics', false, '0.20.11-SNAPSHOT')
21
- group_id.should eq 'org.kill-bill.billing.plugin.java'
22
- artifact_id.should eq 'analytics-plugin'
23
- packaging.should eq 'jar'
24
- classifier.should be_nil
25
- version.should eq '6.0.1'
26
- type.should eq :java
21
+ expect(group_id).to eq 'org.kill-bill.billing.plugin.java'
22
+ expect(artifact_id).to eq 'analytics-plugin'
23
+ expect(packaging).to eq 'jar'
24
+ expect(classifier).to be_nil
25
+ expect(version).to eq '6.0.1'
26
+ expect(type).to eq :java
27
27
 
28
28
  group_id, artifact_id, packaging, classifier, version, type = KPM::PluginsDirectory.lookup('analytics', false, '0.20')
29
- group_id.should eq 'org.kill-bill.billing.plugin.java'
30
- artifact_id.should eq 'analytics-plugin'
31
- packaging.should eq 'jar'
32
- classifier.should be_nil
33
- version.should eq '6.0.1'
34
- type.should eq :java
29
+ expect(group_id).to eq 'org.kill-bill.billing.plugin.java'
30
+ expect(artifact_id).to eq 'analytics-plugin'
31
+ expect(packaging).to eq 'jar'
32
+ expect(classifier).to be_nil
33
+ expect(version).to eq '6.0.1'
34
+ expect(type).to eq :java
35
35
 
36
36
  group_id, artifact_id, packaging, classifier, version, type = KPM::PluginsDirectory.lookup('analytics', false, 'LATEST')
37
- group_id.should eq 'org.kill-bill.billing.plugin.java'
38
- artifact_id.should eq 'analytics-plugin'
39
- packaging.should eq 'jar'
40
- classifier.should be_nil
41
- version.should eq 'LATEST'
42
- type.should eq :java
37
+ expect(group_id).to eq 'org.kill-bill.billing.plugin.java'
38
+ expect(artifact_id).to eq 'analytics-plugin'
39
+ expect(packaging).to eq 'jar'
40
+ expect(classifier).to be_nil
41
+ expect(version).to eq 'LATEST'
42
+ expect(type).to eq :java
43
43
 
44
44
  group_id, artifact_id, packaging, classifier, version, type = KPM::PluginsDirectory.lookup('analytics', false, '0.42')
45
- group_id.should eq 'org.kill-bill.billing.plugin.java'
46
- artifact_id.should eq 'analytics-plugin'
47
- packaging.should eq 'jar'
48
- classifier.should be_nil
49
- version.should eq 'LATEST'
50
- type.should eq :java
45
+ expect(group_id).to eq 'org.kill-bill.billing.plugin.java'
46
+ expect(artifact_id).to eq 'analytics-plugin'
47
+ expect(packaging).to eq 'jar'
48
+ expect(classifier).to be_nil
49
+ expect(version).to eq 'LATEST'
50
+ expect(type).to eq :java
51
51
  end
52
52
  end
@@ -15,7 +15,7 @@ describe KPM::PluginsManager do
15
15
  FileUtils.mkdir_p(@plugin_dir.join('1.0.0'))
16
16
  FileUtils.mkdir_p(@plugin_dir.join('2.0.0'))
17
17
 
18
- File.exist?(@plugin_dir.join('SET_DEFAULT')).should be_false
18
+ expect(File.exist?(@plugin_dir.join('SET_DEFAULT'))).to be_falsey
19
19
  end
20
20
 
21
21
  after(:each) do
@@ -25,74 +25,74 @@ describe KPM::PluginsManager do
25
25
  it 'creates a plugin identifier entry with no coordinate' do
26
26
  # Verifies file gets created if does not exist
27
27
  identifiers = @manager.add_plugin_identifier_key('foo', 'foo_name', 'type', nil)
28
- identifiers.size.should eq 1
29
- identifiers['foo']['plugin_name'].should eq 'foo_name'
28
+ expect(identifiers.size).to eq 1
29
+ expect(identifiers['foo']['plugin_name']).to eq 'foo_name'
30
30
  end
31
31
 
32
32
  it 'creates a plugin identifier entry with coordinates' do
33
33
  # Verifies file gets created if does not exist
34
34
  coordinate_map = { group_id: 'group', artifact_id: 'artifact', packaging: 'packaging', version: 'version' }
35
35
  identifiers = @manager.add_plugin_identifier_key('bar', 'bar_name', 'type', coordinate_map)
36
- identifiers.size.should eq 1
37
- identifiers['bar']['plugin_name'].should eq 'bar_name'
38
- identifiers['bar']['group_id'].should eq 'group'
39
- identifiers['bar']['artifact_id'].should eq 'artifact'
40
- identifiers['bar']['packaging'].should eq 'packaging'
41
- identifiers['bar']['classifier'].should.nil?
42
- identifiers['bar']['version'].should eq 'version'
36
+ expect(identifiers.size).to eq 1
37
+ expect(identifiers['bar']['plugin_name']).to eq 'bar_name'
38
+ expect(identifiers['bar']['group_id']).to eq 'group'
39
+ expect(identifiers['bar']['artifact_id']).to eq 'artifact'
40
+ expect(identifiers['bar']['packaging']).to eq 'packaging'
41
+ expect(identifiers['bar']['classifier']).to be_nil
42
+ expect(identifiers['bar']['version']).to eq 'version'
43
43
  end
44
44
 
45
45
  it 'creates plugin identifier with multiple entries' do
46
46
  # Verifies file gets created if does not exist
47
47
  identifiers = @manager.add_plugin_identifier_key('foo', 'foo_name', 'type', nil)
48
- identifiers.size.should eq 1
49
- identifiers['foo']['plugin_name'].should eq 'foo_name'
48
+ expect(identifiers.size).to eq 1
49
+ expect(identifiers['foo']['plugin_name']).to eq 'foo_name'
50
50
 
51
51
  # Verify file was created from previous entry (prev value was read)
52
52
  identifiers = @manager.add_plugin_identifier_key('bar', 'bar_name', 'type', nil)
53
- identifiers.size.should eq 2
54
- identifiers['foo']['plugin_name'].should eq 'foo_name'
55
- identifiers['bar']['plugin_name'].should eq 'bar_name'
53
+ expect(identifiers.size).to eq 2
54
+ expect(identifiers['foo']['plugin_name']).to eq 'foo_name'
55
+ expect(identifiers['bar']['plugin_name']).to eq 'bar_name'
56
56
 
57
57
  # Verify file was created from previous entry (prev value was read)
58
58
  identifiers = @manager.add_plugin_identifier_key('zoe', 'zoe_name', 'type', nil)
59
- identifiers.size.should eq 3
60
- identifiers['bar']['plugin_name'].should eq 'bar_name'
61
- identifiers['foo']['plugin_name'].should eq 'foo_name'
62
- identifiers['zoe']['plugin_name'].should eq 'zoe_name'
59
+ expect(identifiers.size).to eq 3
60
+ expect(identifiers['bar']['plugin_name']).to eq 'bar_name'
61
+ expect(identifiers['foo']['plugin_name']).to eq 'foo_name'
62
+ expect(identifiers['zoe']['plugin_name']).to eq 'zoe_name'
63
63
  end
64
64
 
65
65
  it 'creates plugin identifiers with duplicate entries' do
66
66
  # Verifies file gets created if does not exist
67
67
  identifiers = @manager.add_plugin_identifier_key('kewl', 'kewl_name', 'type', nil)
68
- identifiers.size.should eq 1
69
- identifiers['kewl']['plugin_name'].should eq 'kewl_name'
68
+ expect(identifiers.size).to eq 1
69
+ expect(identifiers['kewl']['plugin_name']).to eq 'kewl_name'
70
70
 
71
71
  # Add with a different plugin_name
72
72
  identifiers = @manager.add_plugin_identifier_key('kewl', 'kewl_name2', 'type', nil)
73
- identifiers.size.should eq 1
74
- identifiers['kewl']['plugin_name'].should eq 'kewl_name'
73
+ expect(identifiers.size).to eq 1
74
+ expect(identifiers['kewl']['plugin_name']).to eq 'kewl_name'
75
75
  end
76
76
 
77
77
  it 'creates plugin identifiers and remove entry' do
78
78
  # Verifies file gets created if does not exist
79
79
  identifiers = @manager.add_plugin_identifier_key('lol', 'lol_name', 'type', nil)
80
- identifiers.size.should eq 1
81
- identifiers['lol']['plugin_name'].should eq 'lol_name'
80
+ expect(identifiers.size).to eq 1
81
+ expect(identifiers['lol']['plugin_name']).to eq 'lol_name'
82
82
 
83
83
  # Remove wrong entry, nothing happens
84
84
  identifiers = @manager.remove_plugin_identifier_key('lol2')
85
- identifiers.size.should eq 1
86
- identifiers['lol']['plugin_name'].should eq 'lol_name'
85
+ expect(identifiers.size).to eq 1
86
+ expect(identifiers['lol']['plugin_name']).to eq 'lol_name'
87
87
 
88
88
  # Remove correct entry
89
89
  identifiers = @manager.remove_plugin_identifier_key('lol')
90
- identifiers.size.should eq 0
90
+ expect(identifiers.size).to eq 0
91
91
 
92
92
  # Add same entry again
93
93
  identifiers = @manager.add_plugin_identifier_key('lol', 'lol_name', 'type', nil)
94
- identifiers.size.should eq 1
95
- identifiers['lol']['plugin_name'].should eq 'lol_name'
94
+ expect(identifiers.size).to eq 1
95
+ expect(identifiers['lol']['plugin_name']).to eq 'lol_name'
96
96
  end
97
97
 
98
98
  it 'creates plugin identifiers and validate entry' do
@@ -100,15 +100,15 @@ describe KPM::PluginsManager do
100
100
  coordinate_map = { group_id: 'group', artifact_id: 'artifact', packaging: 'packaging', version: 'version' }
101
101
 
102
102
  identifiers = @manager.add_plugin_identifier_key('yoyo', 'yoyo_name', 'type', coordinate_map)
103
- identifiers.size.should eq 1
104
- identifiers['yoyo']['plugin_name'].should eq 'yoyo_name'
103
+ expect(identifiers.size).to eq 1
104
+ expect(identifiers['yoyo']['plugin_name']).to eq 'yoyo_name'
105
105
 
106
- @manager.validate_plugin_identifier_key('yoyo', coordinate_map).should eq true
106
+ expect(@manager.validate_plugin_identifier_key('yoyo', coordinate_map)).to eq true
107
107
 
108
108
  # Negative validation
109
109
  invalid_coordinate_map = { group_id: 'group1', artifact_id: 'artifact', packaging: 'packaging', version: 'version' }
110
110
 
111
- @manager.validate_plugin_identifier_key('yoyo', invalid_coordinate_map).should eq false
111
+ expect(@manager.validate_plugin_identifier_key('yoyo', invalid_coordinate_map)).to eq false
112
112
  end
113
113
 
114
114
  it 'creates a plugin identifier entry with a new version' do
@@ -117,36 +117,36 @@ describe KPM::PluginsManager do
117
117
  coordinate_map1 = { group_id: 'group', artifact_id: 'artifact', packaging: 'packaging', version: 'version1' }
118
118
 
119
119
  identifiers = @manager.add_plugin_identifier_key('bar', 'bar_name', 'type', coordinate_map1)
120
- identifiers.size.should eq 1
121
- identifiers['bar']['plugin_name'].should eq 'bar_name'
122
- identifiers['bar']['version'].should eq 'version1'
120
+ expect(identifiers.size).to eq 1
121
+ expect(identifiers['bar']['plugin_name']).to eq 'bar_name'
122
+ expect(identifiers['bar']['version']).to eq 'version1'
123
123
 
124
124
  coordinate_map2 = { group_id: 'group', artifact_id: 'artifact', packaging: 'packaging', version: 'version2' }
125
125
 
126
126
  identifiers = @manager.add_plugin_identifier_key('bar', 'bar_name', 'type', coordinate_map2)
127
- identifiers.size.should eq 1
128
- identifiers['bar']['plugin_name'].should eq 'bar_name'
129
- identifiers['bar']['version'].should eq 'version2'
127
+ expect(identifiers.size).to eq 1
128
+ expect(identifiers['bar']['plugin_name']).to eq 'bar_name'
129
+ expect(identifiers['bar']['version']).to eq 'version2'
130
130
  end
131
131
 
132
132
  it 'sets a path as active' do
133
133
  @manager.set_active(@plugin_dir.join('1.0.0'))
134
- File.exist?(@plugin_dir.join('SET_DEFAULT')).should be_true
135
- File.readlink(@plugin_dir.join('SET_DEFAULT')).should eq @plugin_dir.join('1.0.0').to_s
134
+ expect(File.exist?(@plugin_dir.join('SET_DEFAULT'))).to be_truthy
135
+ expect(File.readlink(@plugin_dir.join('SET_DEFAULT'))).to eq @plugin_dir.join('1.0.0').to_s
136
136
 
137
137
  @manager.set_active(@plugin_dir.join('2.0.0'))
138
- File.exist?(@plugin_dir.join('SET_DEFAULT')).should be_true
139
- File.readlink(@plugin_dir.join('SET_DEFAULT')).should eq @plugin_dir.join('2.0.0').to_s
138
+ expect(File.exist?(@plugin_dir.join('SET_DEFAULT'))).to be_truthy
139
+ expect(File.readlink(@plugin_dir.join('SET_DEFAULT'))).to eq @plugin_dir.join('2.0.0').to_s
140
140
  end
141
141
 
142
142
  it 'sets a plugin version as active' do
143
143
  @manager.set_active('killbill-stripe', '2.0.0')
144
- File.exist?(@plugin_dir.join('SET_DEFAULT')).should be_true
145
- File.readlink(@plugin_dir.join('SET_DEFAULT')).should eq @plugin_dir.join('2.0.0').to_s
144
+ expect(File.exist?(@plugin_dir.join('SET_DEFAULT'))).to be_truthy
145
+ expect(File.readlink(@plugin_dir.join('SET_DEFAULT'))).to eq @plugin_dir.join('2.0.0').to_s
146
146
 
147
147
  @manager.set_active('killbill-stripe', '1.0.0')
148
- File.exist?(@plugin_dir.join('SET_DEFAULT')).should be_true
149
- File.readlink(@plugin_dir.join('SET_DEFAULT')).should eq @plugin_dir.join('1.0.0').to_s
148
+ expect(File.exist?(@plugin_dir.join('SET_DEFAULT'))).to be_truthy
149
+ expect(File.readlink(@plugin_dir.join('SET_DEFAULT'))).to eq @plugin_dir.join('1.0.0').to_s
150
150
  end
151
151
 
152
152
  it 'uninstalls a plugin via a path' do
@@ -190,19 +190,19 @@ describe KPM::PluginsManager do
190
190
  end
191
191
 
192
192
  it 'guesses the plugin name' do
193
- @manager.guess_plugin_name('tripe').should be_nil
193
+ expect(@manager.guess_plugin_name('tripe')).to be_nil
194
194
  # Short name
195
- @manager.guess_plugin_name('stripe').should eq 'killbill-stripe'
195
+ expect(@manager.guess_plugin_name('stripe')).to eq 'killbill-stripe'
196
196
  # Artifact id
197
- @manager.guess_plugin_name('stripe-plugin').should eq 'killbill-stripe'
197
+ expect(@manager.guess_plugin_name('stripe-plugin')).to eq 'killbill-stripe'
198
198
  # Plugin name (top directory in the .tar.gz)
199
- @manager.guess_plugin_name('killbill-stripe').should eq 'killbill-stripe'
199
+ expect(@manager.guess_plugin_name('killbill-stripe')).to eq 'killbill-stripe'
200
200
  end
201
201
 
202
202
  private
203
203
 
204
204
  def check_state(version, has_restart, has_disabled)
205
- File.exist?(@plugin_dir.join(version).join('tmp').join('restart.txt')).should eq has_restart
206
- File.exist?(@plugin_dir.join(version).join('tmp').join('disabled.txt')).should eq has_disabled
205
+ expect(File.exist?(@plugin_dir.join(version).join('tmp').join('restart.txt'))).to eq has_restart
206
+ expect(File.exist?(@plugin_dir.join(version).join('tmp').join('disabled.txt'))).to eq has_disabled
207
207
  end
208
208
  end