1
0
mirror of https://github.com/github/choosealicense.com synced 2025-01-05 11:32:01 +01:00
choosealicense.com/spec/license_spec.rb

49 lines
1.3 KiB
Ruby
Raw Normal View History

2015-03-07 12:47:24 -05:00
require 'spec_helper'
2016-02-08 15:37:19 -05:00
describe 'licenses' do
it 'matches the number of files in the _licenses folder' do
expect(licenses.count).to eql(Dir["#{licenses_path}/*.html"].count)
2016-01-29 12:44:28 -05:00
end
2016-01-20 10:20:04 -05:00
licenses.each do |license|
2016-02-08 15:37:19 -05:00
context "The #{license['title']} license" do
let(:id) { license['id'] }
2016-01-15 17:40:32 -05:00
2016-02-08 15:37:19 -05:00
it 'has an SPDX ID' do
2016-01-20 10:20:04 -05:00
expect(spdx_ids).to include(id)
end
2016-01-15 17:40:32 -05:00
2016-02-08 15:37:19 -05:00
it 'uses its SPDX name' do
2016-01-20 10:20:04 -05:00
spdx = find_spdx(id)
expect(spdx).to_not be_nil
2016-02-08 15:37:19 -05:00
expect(spdx[1]['name'].gsub(/ only$/, '')).to eql(license['title'])
2016-01-20 10:20:04 -05:00
end
2016-01-15 17:40:32 -05:00
2016-02-08 15:37:19 -05:00
context 'industry approval' do
it 'should be approved by OSI or FSF or OD' do
expect(approved_licenses).to include(id), 'See https://git.io/vzCTV.'
2016-01-20 10:20:04 -05:00
end
2016-01-15 18:01:07 -05:00
end
context "minimum permissions" do
2016-02-08 14:02:07 -08:00
let(:permissions) { license["permitted"] }
it "should allow commercial use" do
expect(permissions).to include("commercial-use")
end
2016-02-08 14:02:07 -08:00
it "should allow modification" do
expect(permissions).to include("modifications")
end
2016-02-08 14:02:07 -08:00
it "should allow distribution" do
expect(permissions).to include("distribution")
end
2016-02-08 14:02:07 -08:00
it "should allow private use" do
expect(permissions).to include("private-use")
end
end
2015-03-07 13:38:52 -05:00
end
2015-03-07 12:47:24 -05:00
end
end