require 'spec_helper' describe 'licenses' do it 'matches the number of files in the _licenses folder' do expect(licenses.count).to eql(Dir["#{licenses_path}/*.html"].count) end licenses.each do |license| context "The #{license['title']} license" do let(:id) { license['id'] } it 'has an SPDX ID' do expect(spdx_ids).to include(id) end it 'uses its SPDX name' do spdx = find_spdx(id) expect(spdx).to_not be_nil expect(spdx[1]['name'].gsub(/ only$/, '')).to eql(license['title']) end 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.' end end context "minimum permissions" do let(:permissions) { license["permitted"] } it "should allow commercial use" do expect(permissions).to include("commercial-use") end it "should allow modification" do expect(permissions).to include("modifications") end it "should allow distribution" do expect(permissions).to include("distribution") end it "should allow private use" do expect(permissions).to include("private-use") end end end end end