2017-01-18 13:31:19 -08:00
|
|
|
# frozen_string_literal: true
|
2015-08-22 15:25:16 -04:00
|
|
|
require 'spec_helper'
|
|
|
|
|
2016-02-08 15:37:19 -05:00
|
|
|
describe 'license meta' do
|
2016-01-20 10:20:04 -05:00
|
|
|
licenses.each do |license|
|
2016-02-09 12:26:24 -05:00
|
|
|
# Manually load the raw license so we don't get the defaults
|
2016-05-31 15:44:12 -07:00
|
|
|
raw_fields = SafeYAML.load_file("_licenses/#{license['spdx-lcase']}.txt")
|
2015-08-22 15:25:16 -04:00
|
|
|
|
2016-02-08 15:37:19 -05:00
|
|
|
context "The #{license['title']} license" do
|
|
|
|
it 'should only contain supported meta fields' do
|
|
|
|
extra_fields = raw_fields.keys - meta.map { |m| m['name'] }
|
2016-01-20 10:20:04 -05:00
|
|
|
expect(extra_fields).to be_empty
|
|
|
|
end
|
2015-08-22 15:25:16 -04:00
|
|
|
|
2016-02-08 15:37:19 -05:00
|
|
|
it 'should contain all required meta fields' do
|
|
|
|
required = meta.select { |m| m['required'] }.map { |m| m['name'] }
|
2016-01-20 10:20:04 -05:00
|
|
|
missing = required - raw_fields.keys
|
2015-08-22 15:25:16 -04:00
|
|
|
expect(missing).to be_empty
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|