mirror of
https://github.com/github/choosealicense.com
synced 2024-12-22 12:50:24 +01:00
spec_helper: Adjust to new 'licenses' key in the FSF API
The old root object has been moved under 'licenses' with wking/fsf-api@8398a357 (pull: Add JSON-LD markup, 2018-01-04, wking/fsf-api#12) for better forward/backward compatibility. Unfortunately, this results in another one-time incompatible change, which this commit accommodates. The protection from future changes (which should be rare) isn't great, because we're still parsing the document as JSON. There is at least one JSON-LD parser for Ruby [1], but I've stuck with vanilla JSON to avoid pullling in an external dependency just for this rather peripheral functionality. [1]: https://github.com/ruby-rdf/json-ld/
This commit is contained in:
parent
5513a3baab
commit
24fbf6685d
@ -104,7 +104,7 @@ def fsf_approved_licenses
|
|||||||
url = 'https://wking.github.io/fsf-api/licenses-full.json'
|
url = 'https://wking.github.io/fsf-api/licenses-full.json'
|
||||||
object = JSON.parse(OpenURI.open_uri(url).read)
|
object = JSON.parse(OpenURI.open_uri(url).read)
|
||||||
licenses = {}
|
licenses = {}
|
||||||
object.each_value do |meta|
|
object['licenses'].each_value do |meta|
|
||||||
next unless (meta.include? 'identifiers') && (meta['identifiers'].include? 'spdx') && (meta.include? 'tags') && (meta['tags'].include? 'libre')
|
next unless (meta.include? 'identifiers') && (meta['identifiers'].include? 'spdx') && (meta.include? 'tags') && (meta['tags'].include? 'libre')
|
||||||
meta['identifiers']['spdx'].each do |identifier|
|
meta['identifiers']['spdx'].each do |identifier|
|
||||||
licenses[identifier.downcase] = meta['name']
|
licenses[identifier.downcase] = meta['name']
|
||||||
|
Loading…
x
Reference in New Issue
Block a user