license_finder 1.0.0.0-java → 1.1.1-java

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 (126) hide show
  1. checksums.yaml +4 -4
  2. data/.force-build +0 -0
  3. data/.travis.yml +8 -7
  4. data/CHANGELOG.rdoc +29 -1
  5. data/Rakefile +2 -2
  6. data/db/migrate/201311192003_reassociate_manual_approval.rb +2 -3
  7. data/db/migrate/201403181732_rename_manual_fields.rb +10 -0
  8. data/db/migrate/201403190028_add_manual_approvals.rb +22 -0
  9. data/db/migrate/201403191419_add_timestamps_to_manual_approvals.rb +15 -0
  10. data/db/migrate/201403191645_remove_license_aliases.rb +23 -0
  11. data/features/cli.feature +21 -20
  12. data/features/cocoapods_dependencies.feature +10 -0
  13. data/features/configure_bundler_groups.feature +23 -0
  14. data/features/configure_ignore_dependencies.feature +16 -0
  15. data/features/{project_name.feature → configure_project_name.feature} +1 -1
  16. data/features/{whitelist.feature → configure_whitelist.feature} +6 -6
  17. data/features/manually_added.feature +19 -0
  18. data/features/{approve_dependencies.feature → manually_approved.feature} +2 -2
  19. data/features/manually_assigned_license.feature +16 -0
  20. data/features/{text_report.feature → report_csv.feature} +2 -2
  21. data/features/{html_report.feature → report_html.feature} +2 -2
  22. data/features/step_definitions/cli_steps.rb +22 -32
  23. data/features/step_definitions/cocoapod_steps.rb +8 -0
  24. data/features/step_definitions/configure_bundler_groups_steps.rb +30 -0
  25. data/features/step_definitions/configure_ignore_dependencies.rb +35 -0
  26. data/features/step_definitions/{project_name_steps.rb → configure_project_name_steps.rb} +0 -0
  27. data/features/step_definitions/configure_whitelist_steps.rb +45 -0
  28. data/features/step_definitions/gradle_steps.rb +2 -2
  29. data/features/step_definitions/manually_added_steps.rb +28 -0
  30. data/features/step_definitions/manually_approved_steps.rb +24 -0
  31. data/features/step_definitions/manually_assigned_license_steps.rb +34 -0
  32. data/features/step_definitions/maven_steps.rb +2 -2
  33. data/features/step_definitions/node_steps.rb +2 -2
  34. data/features/step_definitions/python_steps.rb +1 -1
  35. data/features/step_definitions/report_csv_steps.rb +20 -0
  36. data/features/step_definitions/report_html_steps.rb +60 -0
  37. data/features/step_definitions/shared_steps.rb +125 -104
  38. data/{files/license_finder.yml → lib/data/license_finder.example.yml} +3 -0
  39. data/lib/license_finder.rb +3 -2
  40. data/lib/license_finder/cli.rb +94 -49
  41. data/lib/license_finder/configuration.rb +21 -14
  42. data/lib/license_finder/dependency_manager.rb +27 -19
  43. data/lib/license_finder/license.rb +33 -19
  44. data/lib/license_finder/license/definitions.rb +153 -104
  45. data/lib/license_finder/license/matcher.rb +6 -1
  46. data/lib/license_finder/license/none_matcher.rb +9 -0
  47. data/lib/license_finder/license/text.rb +1 -0
  48. data/lib/license_finder/package.rb +30 -6
  49. data/lib/license_finder/package_managers/bower.rb +2 -2
  50. data/lib/license_finder/package_managers/bower_package.rb +2 -2
  51. data/lib/license_finder/package_managers/bundler.rb +9 -17
  52. data/lib/license_finder/package_managers/bundler_package.rb +1 -1
  53. data/lib/license_finder/package_managers/cocoa_pods.rb +35 -0
  54. data/lib/license_finder/package_managers/cocoa_pods_package.rb +19 -0
  55. data/lib/license_finder/package_managers/gradle.rb +9 -5
  56. data/lib/license_finder/package_managers/gradle_package.rb +4 -4
  57. data/lib/license_finder/package_managers/maven.rb +7 -3
  58. data/lib/license_finder/package_managers/maven_package.rb +5 -5
  59. data/lib/license_finder/package_managers/npm.rb +2 -2
  60. data/lib/license_finder/package_managers/npm_package.rb +2 -2
  61. data/lib/license_finder/package_managers/pip.rb +2 -2
  62. data/lib/license_finder/package_managers/pip_package.rb +7 -11
  63. data/lib/license_finder/package_saver.rb +12 -10
  64. data/lib/license_finder/possible_license_file.rb +1 -1
  65. data/lib/license_finder/possible_license_files.rb +11 -15
  66. data/lib/license_finder/reports/formatted_report.rb +25 -6
  67. data/lib/license_finder/reports/html_report.rb +2 -1
  68. data/lib/license_finder/reports/reporter.rb +3 -3
  69. data/lib/license_finder/tables.rb +6 -4
  70. data/lib/license_finder/tables/dependency.rb +36 -16
  71. data/lib/license_finder/tables/manual_approval.rb +13 -0
  72. data/lib/license_finder/yml_to_sql.rb +12 -9
  73. data/lib/templates/html_report.erb +68 -74
  74. data/lib/templates/markdown_report.erb +20 -21
  75. data/license_finder.gemspec +7 -7
  76. data/readme.md +76 -79
  77. data/spec/fixtures/Podfile +3 -0
  78. data/spec/lib/license_finder/cli_spec.rb +71 -23
  79. data/spec/lib/license_finder/configuration_spec.rb +61 -21
  80. data/spec/lib/license_finder/dependency_manager_spec.rb +52 -33
  81. data/spec/lib/license_finder/license/definitions_spec.rb +30 -14
  82. data/spec/lib/license_finder/license_spec.rb +55 -12
  83. data/spec/lib/license_finder/package_managers/bower_package_spec.rb +38 -19
  84. data/spec/lib/license_finder/package_managers/bower_spec.rb +10 -16
  85. data/spec/lib/license_finder/package_managers/bundler_package_spec.rb +39 -15
  86. data/spec/lib/license_finder/package_managers/bundler_spec.rb +10 -22
  87. data/spec/lib/license_finder/package_managers/cocoa_pods_package_spec.rb +44 -0
  88. data/spec/lib/license_finder/package_managers/cocoa_pods_spec.rb +79 -0
  89. data/spec/lib/license_finder/package_managers/gradle_package_spec.rb +4 -5
  90. data/spec/lib/license_finder/package_managers/gradle_spec.rb +26 -20
  91. data/spec/lib/license_finder/package_managers/maven_package_spec.rb +4 -5
  92. data/spec/lib/license_finder/package_managers/maven_spec.rb +16 -19
  93. data/spec/lib/license_finder/package_managers/npm_package_spec.rb +39 -19
  94. data/spec/lib/license_finder/package_managers/npm_spec.rb +10 -16
  95. data/spec/lib/license_finder/package_managers/pip_package_spec.rb +8 -8
  96. data/spec/lib/license_finder/package_managers/pip_spec.rb +10 -16
  97. data/spec/lib/license_finder/package_saver_spec.rb +27 -3
  98. data/spec/lib/license_finder/possible_license_file_spec.rb +25 -23
  99. data/spec/lib/license_finder/reports/detailed_text_report_spec.rb +6 -8
  100. data/spec/lib/license_finder/reports/html_report_spec.rb +45 -44
  101. data/spec/lib/license_finder/reports/markdown_report_spec.rb +8 -9
  102. data/spec/lib/license_finder/reports/reporter_spec.rb +1 -1
  103. data/spec/lib/license_finder/reports/text_report_spec.rb +6 -8
  104. data/spec/lib/license_finder/tables/dependency_spec.rb +57 -41
  105. data/spec/lib/license_finder/yml_to_sql_spec.rb +94 -92
  106. data/spec/spec_helper.rb +1 -0
  107. data/spec/support/stdout_helpers.rb +25 -0
  108. metadata +86 -69
  109. data/MIT.LICENSE +0 -20
  110. data/features/ignore_bundle_groups.feature +0 -23
  111. data/features/manually_managed_dependencies.feature +0 -19
  112. data/features/set_license.feature +0 -10
  113. data/features/step_definitions/approve_dependencies_steps.rb +0 -25
  114. data/features/step_definitions/html_report_steps.rb +0 -62
  115. data/features/step_definitions/ignore_bundle_groups_steps.rb +0 -29
  116. data/features/step_definitions/manually_managed_steps.rb +0 -33
  117. data/features/step_definitions/set_license_steps.rb +0 -20
  118. data/features/step_definitions/text_report_steps.rb +0 -19
  119. data/features/step_definitions/whitelist_steps.rb +0 -45
  120. data/files/dependency_breakdown.png +0 -0
  121. data/files/report_breakdown.png +0 -0
  122. data/lib/license_finder/license_url.rb +0 -9
  123. data/lib/license_finder/tables/license_alias.rb +0 -22
  124. data/spec/lib/license_finder/license_url_spec.rb +0 -16
  125. data/spec/lib/license_finder/tables/license_alias_spec.rb +0 -37
  126. data/spec/support/silence_stdout.rb +0 -13
@@ -1,20 +0,0 @@
1
- Copyright (c) 2008-2014 Pivotal Labs
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining
4
- a copy of this software and associated documentation files (the
5
- "Software"), to deal in the Software without restriction, including
6
- without limitation the rights to use, copy, modify, merge, publish,
7
- distribute, sublicense, and/or sell copies of the Software, and to
8
- permit persons to whom the Software is furnished to do so, subject to
9
- the following conditions:
10
-
11
- The above copyright notice and this permission notice shall be
12
- included in all copies or substantial portions of the Software.
13
-
14
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,23 +0,0 @@
1
- Feature: Ignore Bundle Groups
2
- As a developer
3
- I want to ignore certain bundler groups
4
- So that any gems I use in development, or for testing, are automatically approved for use
5
-
6
- Scenario: Bundler groups can be added to the ignore list
7
- Given I have an app with license finder
8
- And I add the test group to the ignored bundler groups
9
- When I get the ignored groups
10
- Then I should see the test group in the output
11
-
12
- Scenario: Ignored bundler groups are not evaluated for licenses
13
- Given I have an app with license finder that depends on a GPL licensed gem in the test bundler group
14
- And I add the test group to the ignored bundler groups
15
- When I run license_finder
16
- Then I should not see the GPL licensed gem in the output
17
-
18
- Scenario: Bundler groups can be removed from the ignore list
19
- Given I have an app with license finder
20
- And I add the test group to the ignored bundler groups
21
- And I remove the test group from the ignored bundler groups
22
- When I get the ignored groups
23
- Then I should not see the test group in the output
@@ -1,19 +0,0 @@
1
- Feature: Tracking Unmanaged Dependencies
2
- So that I can track dependencies not managed by Bundler, NPM, etc.
3
- As an application developer using license finder
4
- I want to be able to manually track unmanaged dependencies
5
-
6
- Scenario: Adding a manually managed dependency
7
- Given I have an app with license finder
8
- When I add my JS dependency
9
- Then I should see the JS dependency in the console output
10
-
11
- Scenario: Auto approving a manually managed dependency I add
12
- Given I have an app with license finder
13
- When I add my JS dependency with an approval flag
14
- Then I should not see the JS dependency in the console output since it is approved
15
-
16
- Scenario: Removing a manually managed dependency
17
- Given I have an app with license finder and a JS dependency
18
- When I remove my JS dependency
19
- Then I should not see the JS dependency in the console output
@@ -1,10 +0,0 @@
1
- Feature: Set a dependency's license through a command line interface
2
- So that my dependencies all have the correct licenses
3
- As an application developer
4
- I want a command line interface to set licenses for specific dependencies
5
-
6
- Scenario: Setting a license for a dependency
7
- Given I have an app with license finder that depends on an other licensed gem
8
- When I set that gems license to MIT from the command line
9
- Then I should see that other gems license set to MIT
10
- And I see other licensed gems have not changed licenses
@@ -1,25 +0,0 @@
1
- Given(/^I have an app with license finder that depends on a GPL licensed gem$/) do
2
- @user = ::DSL::User.new
3
- @user.create_nonrails_app
4
- @user.add_dependency_to_app "gpl_gem", :license => "GPL"
5
- end
6
-
7
- When(/^I approve that gem$/) do
8
- @output = @user.execute_command "license_finder"
9
- @output.should include "gpl_gem"
10
- @output = @user.execute_command "license_finder approve gpl_gem"
11
- @output = @user.execute_command "license_finder --quiet"
12
- end
13
-
14
- Then(/^I should not see that gem in the console output$/) do
15
- @output.should_not include "gpl_gem"
16
- end
17
-
18
- Then(/^I should see that gem approved in dependencies\.html$/) do
19
- gem_name = "gpl_gem"
20
- css_class = "approved"
21
- html = File.read(@user.dependencies_html_path)
22
- page = Capybara.string(html)
23
- gpl_gem = page.find("##{gem_name}")
24
- gpl_gem[:class].should == css_class
25
- end
@@ -1,62 +0,0 @@
1
- Given(/^my app depends on a gem with specific details$/) do
2
- @gem_name = "mit_licensed_gem"
3
- @table = {
4
- license: "MIT",
5
- summary: "mit is cool",
6
- description: "seriously",
7
- version: "0.0.1",
8
- homepage: "http://mit_licensed_gem.github.com",
9
- bundler_groups: "test"
10
- }
11
- @user.add_dependency_to_app(@gem_name,
12
- :license => @table[:license],
13
- :summary => @table[:summary],
14
- :description => @table[:description],
15
- :version => @table[:version],
16
- :homepage => @table[:homepage],
17
- :bundler_groups => @table[:bundler_groups]
18
- )
19
- end
20
-
21
- Given(/^my app depends on MIT and GPL licensed gems$/) do
22
- @user.add_dependency_to_app 'gpl_licensed_gem', :license => "GPL"
23
- @user.add_dependency_to_app 'mit_licensed_gem', :license => "MIT"
24
- end
25
-
26
- When(/^I whitelist the MIT license$/) do
27
- @user.configure_license_finder_whitelist ["MIT"]
28
- @user.execute_command "license_finder --quiet"
29
- end
30
-
31
- Then(/^I should see my specific gem details listed in the html$/) do
32
- html = File.read(@user.dependencies_html_path)
33
- page = Capybara.string(html)
34
- section = page.find("##{@gem_name}")
35
-
36
- @table.first.each do |property_name, property_value|
37
- section.should have_content property_value
38
- end
39
- end
40
-
41
- Then(/^I should see the GPL gem unapproved in html$/) do
42
- is_html_status?('gpl_licensed_gem', 'unapproved')
43
- end
44
-
45
- Then(/^the MIT gem approved in html$/) do
46
- is_html_status?('mit_licensed_gem', 'approved')
47
- end
48
-
49
- Then(/^I should see only see GPL liceneses as unapproved in the html$/) do
50
- html = File.read(@user.dependencies_html_path)
51
- page = Capybara.string(html)
52
- page.should have_content '1 GPL'
53
- action_items = page.find('.action-items')
54
- action_items.should have_content '(GPL)'
55
- end
56
-
57
- def is_html_status?(gem, approval)
58
- html = File.read(@user.dependencies_html_path)
59
- page = Capybara.string(html)
60
- gpl_gem = page.find("##{gem}")
61
- gpl_gem[:class].should == approval
62
- end
@@ -1,29 +0,0 @@
1
- Given(/^I have an app with license finder that depends on a GPL licensed gem in the test bundler group$/) do
2
- @user = ::DSL::User.new
3
- @user.create_nonrails_app
4
- @user.add_dependency_to_app 'gpl_gem', :license => 'GPL', :bundler_groups => 'test'
5
- end
6
-
7
- When(/^I add the test group to the ignored bundler groups$/) do
8
- @user.execute_command('license_finder ignored_bundler_group add test')
9
- end
10
-
11
- When(/^I remove the test group from the ignored bundler groups$/) do
12
- @user.execute_command('license_finder ignored_bundler_group remove test')
13
- end
14
-
15
- When(/^I get the ignored groups$/) do
16
- @output = @user.execute_command('license_finder ignored_bundler_group list')
17
- end
18
-
19
- Then(/^I should not see the GPL licensed gem in the output$/) do
20
- @output.should_not include 'gpl_gem'
21
- end
22
-
23
- Then(/^I should see the test group in the output$/) do
24
- @output.should include 'test'
25
- end
26
-
27
- Then(/^I should not see the test group in the output$/) do
28
- @output.should_not include 'test'
29
- end
@@ -1,33 +0,0 @@
1
- Given(/^I have an app with license finder and a JS dependency$/) do
2
- @user = ::DSL::User.new
3
- @user.create_nonrails_app
4
- @output = @user.execute_command 'license_finder dependencies add MIT my_js_dep 1.2.3'
5
- end
6
-
7
- When(/^I add my JS dependency$/) do
8
- @output = @user.execute_command 'license_finder dependencies add MIT my_js_dep 1.2.3'
9
- end
10
-
11
- When(/^I add my JS dependency with an approval flag$/) do
12
- @output = @user.execute_command 'license_finder dependencies add --approve MIT my_js_dep 1.2.3'
13
- @output.should match /The my_js_dep dependency has been added and approved/
14
- end
15
-
16
- When(/^I remove my JS dependency$/) do
17
- @user.execute_command 'license_finder dependencies remove my_js_dep'
18
- end
19
-
20
- Then(/^I should see the JS dependency in the console output$/) do
21
- @output = @user.execute_command 'license_finder --quiet'
22
- @output.should include 'my_js_dep, 1.2.3, MIT'
23
- end
24
-
25
- Then(/^I should not see the JS dependency in the console output$/) do
26
- @output = @user.execute_command 'license_finder --quiet'
27
- @output.should_not include 'my_js_dep, 1.2.3, MIT'
28
- end
29
-
30
- Then(/^I should not see the JS dependency in the console output since it is approved$/) do
31
- @output = @user.execute_command 'license_finder --quiet'
32
- @output.should_not include 'my_js_dep, 1.2.3, MIT'
33
- end
@@ -1,20 +0,0 @@
1
- Given(/^I have an app with license finder that depends on an other licensed gem$/) do
2
- @user = ::DSL::User.new
3
- @user.create_nonrails_app
4
- @user.add_dependency_to_app 'other_gem', version: '1.0', license: 'other'
5
- @user.add_dependency_to_app 'control_gem', version: '1.0', license: 'other'
6
- end
7
-
8
- When(/^I set that gems license to MIT from the command line$/) do
9
- @user.execute_command 'license_finder --quiet'
10
- @user.execute_command 'license_finder license MIT other_gem'
11
- @output = @user.execute_command 'license_finder --quiet'
12
- end
13
-
14
- Then(/^I should see that other gems license set to MIT$/) do
15
- @output.should include 'other_gem, 1.0, MIT'
16
- end
17
-
18
- Then(/^I see other licensed gems have not changed licenses$/) do
19
- @output.should include 'control_gem, 1.0, other'
20
- end
@@ -1,19 +0,0 @@
1
- Given(/^I have an app with license finder that depends on a gem with license and version details$/) do
2
- @user = ::DSL::User.new
3
- @user.create_nonrails_app
4
- @user.add_dependency_to_app('info_gem', license: 'MIT', version: '1.1.1')
5
- end
6
-
7
- Given(/^I have a dependencies\.txt file$/) do
8
- Dir.mkdir(@user.app_path("doc"))
9
- File.open(@user.app_path("doc/dependencies.txt"), 'w+') { |file| file.puts("Legacy text file") }
10
- end
11
-
12
- Then(/^I should see those version and license details in the dependencies\.csv file$/) do
13
- File.read(@user.app_path("doc/dependencies.csv")).should include "info_gem, 1.1.1, MIT"
14
- end
15
-
16
- Then(/^I should see dependencies\.txt replaced by dependencies\.csv$/) do
17
- File.exists?(@user.app_path("doc/dependencies.txt")).should be_false
18
- File.exists?(@user.app_path("doc/dependencies.csv")).should be_true
19
- end
@@ -1,45 +0,0 @@
1
- Given(/^I have an app with license finder that depends on an MIT license$/) do
2
- @user = ::DSL::User.new
3
- @user.create_nonrails_app
4
- @user.add_dependency_to_app 'mit_gem', :license => 'MIT'
5
- end
6
-
7
- Given(/^I have an app with license finder that depends on an BSD license$/) do
8
- @user = ::DSL::User.new
9
- @user.create_nonrails_app
10
- @user.add_dependency_to_app 'bsd_gem', :license => 'BSD'
11
- end
12
-
13
- When(/^I whitelist the BSD license$/) do
14
- @user.execute_command 'license_finder whitelist add BSD'
15
- end
16
-
17
- When(/^I whitelist the Expat license$/) do
18
- @user.execute_command 'license_finder whitelist add Expat'
19
- end
20
-
21
- When(/^I view the whitelisted licenses$/) do
22
- @output = @user.execute_command 'license_finder whitelist list'
23
- end
24
-
25
- When(/^I remove Expat from the whitelist$/) do
26
- @output = @user.execute_command 'license_finder whitelist remove Expat'
27
- end
28
-
29
- Then(/^I should not see a MIT licensed gem unapproved$/) do
30
- @output = @user.execute_command 'license_finder --quiet'
31
- @output.should_not include 'mit_gem'
32
- end
33
-
34
- Then(/^I should see Expat in the output$/) do
35
- @output.should include 'Expat'
36
- end
37
-
38
- Then(/^I should not see Expat in the output$/) do
39
- @output.should_not include 'Expat'
40
- end
41
-
42
- Then(/^I should not see a BSD licensed gem unapproved$/) do
43
- @output = @user.execute_command 'license_finder --quiet'
44
- @output.should_not include 'bsd_gem'
45
- end
Binary file
@@ -1,9 +0,0 @@
1
- module LicenseFinder
2
- module LicenseUrl
3
- extend self
4
-
5
- def find_by_name(name)
6
- License.find_by_name(name.to_s).url
7
- end
8
- end
9
- end
@@ -1,22 +0,0 @@
1
- module LicenseFinder
2
- class LicenseAlias < Sequel::Model
3
- def self.named(name)
4
- find_or_create(name: name)
5
- end
6
-
7
- def initialize(*args)
8
- super
9
- self.url = LicenseUrl.find_by_name name
10
- end
11
-
12
- def whitelisted?
13
- !!(config.whitelisted?(name))
14
- end
15
-
16
- private
17
-
18
- def config
19
- LicenseFinder.config
20
- end
21
- end
22
- end
@@ -1,16 +0,0 @@
1
- require "spec_helper"
2
-
3
- module LicenseFinder
4
- describe LicenseUrl do
5
- describe ".find_by_name" do
6
- subject { LicenseUrl }
7
-
8
- before do
9
- License.stub(:find_by_name).with("Foo").
10
- and_return(double(:foo_license, url: "http://foo.license.com"))
11
- end
12
-
13
- specify { subject.find_by_name("Foo").should == "http://foo.license.com" }
14
- end
15
- end
16
- end
@@ -1,37 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module LicenseFinder
4
- describe LicenseAlias do
5
- describe 'initializes' do
6
- it "delegates to LicenseUrl.find_by_name for the url" do
7
- LicenseUrl.stub(:find_by_name).with("MIT").and_return "http://license-url.com"
8
- license = described_class.new(name: 'MIT')
9
- license.url.should == "http://license-url.com"
10
- end
11
- end
12
-
13
- describe "#whitelisted?" do
14
- let(:config) { Configuration.new('whitelist' => ['MIT', 'other']) }
15
-
16
- before do
17
- LicenseFinder.stub(:config).and_return config
18
- end
19
-
20
- it "should return true when the license is whitelisted" do
21
- described_class.new(name: 'MIT').should be_whitelisted
22
- end
23
-
24
- it "should return true when the license is an alternative name of a whitelisted license" do
25
- described_class.new(name: 'Expat').should be_whitelisted
26
- end
27
-
28
- it "should return true when the license has no matching license class, but is whitelisted anyways" do
29
- described_class.new(name: 'other').should be_whitelisted
30
- end
31
-
32
- it "should return false when the license is not whitelisted" do
33
- described_class.new(name: 'GPL').should_not be_whitelisted
34
- end
35
- end
36
- end
37
- end
@@ -1,13 +0,0 @@
1
- module SilenceStdout
2
- def silence_stdout
3
- orig_stdout = $stdout
4
- $stdout = File.open("/dev/null", "w")
5
- yield
6
- ensure
7
- $stdout = orig_stdout
8
- end
9
- end
10
-
11
- RSpec.configure do |c|
12
- c.include(SilenceStdout)
13
- end