This is what we came out of the call with.
This repo will have multiple moderators. The high level thinking is that the
SPDX test cases are around the License Identifier, License Text and Standard
License Header from the License List. Hopefully they would all be auto
generated (but we may need to craft some) each time a version of the license
list is published. The Contrib directory would include contributions from the
community.
Directory Layout
-----------------------
spdx/
Readme
spdx-test-file-results.json
license-id/
0BSD-id-good.[c|sh|js| whatever]
0BSD-id-bad.[c|sh|js| whatever]
...
license-full-text/
0BSD-full-text-good.txt
0BSD-full-text-bad.txt
...
license-header/
0BSD-header-good.[c|sh|js| whatever]
0BSD-header-bad.[c|sh|js| whatever]
...
contrib/
Readme
contrib-test-file-results.json
somefilename
...
The spdx-test-file-results.json file will contain a json file with the expected
test results for the license-id, license-full-text and license-header
directories (pass/fail etc). Idea is to be able to use the file to
programmatically check the results of say a scan.
license-id - This directory will contain test cases using the license
identifier. Initially they will be single licensed files, i.e.
SPDX-LICENSE-IDENTIFIER: 0BSD. In the future we will expand test cases to
include License Expressions (AND, OR, etc.,.). There should be test cases for
just the identifier in a file and for an identifier with a standard
header/license text.
license-full-text - This directory will contain full versions of the License
Text from the License List.
license-header - This directory will contain tets files using the standard
header as defined on the license list. There seem to be very few standard
license headers as defined by the list. For example there are none for BSD,
MIT Eclipse, etc.,. Need to work through that.
Contrib - These are user contributions. These can be much broader test cases
than the SPDX ones including files found in the wild. Thinking is that
multi-license header test files can be here vs. in SPDX.
- How to vet disputes on files and what goes in contrib?
- We probably need some sort of structure?
From: [email protected]
[mailto:[email protected]] On Behalf Of Manbeck, Jack via
Spdx-tech
Sent: Tuesday, October 03, 2017 1:05 PM
To: [email protected]
Subject: [EXTERNAL] [spdx-tech] Proposed license test files directory
Gary and I had been working on this for the call today. Still a bit of draft
but we can discuss.
This repo will have multiple moderators.
Directory Layout
-----------------------
spdx/
Readme
licenseid/
testfiles.json
0BSD-id-good.[c|sh|js| whatever]
0BSD-id-bad.[c|sh|js| whatever]
...
licensetext/
testfiles.json
0BSD-canonical-good.txt
0BSD-canonical-bad.txt
...
licenseheader/
testfiles.json
0BSD-header-good.[c|sh|js| whatever]
0BSD-header-bad.[c|sh|js| whatever]
...
contrib/
Readme
testfiles.json
somefilename
...
The testfiles.json directory will contain a json file with the expected test
results regardless of the directory the file (pass/fail etc). The directory
structure above is for us humans and this file is for programmatically checking
the results.
Spdx
---------
Split the spdx and contrib directories for clarity, ease of maintenance, etc. I
don't think we should comingle the files.
The SPDX text cases include detection of the license text, license identifier
and standard header as defined by the license
list. One item to work through. There seem to be very few standard license
headers as defined by the list. For example there
are none for BSD, MIT Eclipse, etc.,. Need to work through that.
licenseid/ directory contains test files using the SPDX-LICENSE-IDENTIFIER
licensetext/ directory contains canonical versions of the license text in a
text file. No comments or other text with it.
licenseheader/ directory contains test files using the standard license header.
Contrib
----------
These are user contributions. These can be much broader test cases than the
SPDX ones.
- Other than a good and bad directory do we need anything for structure? Should
it follow spdx format?
- How to vet disputes on files and what goes in?
_______________________________________________
Spdx-tech mailing list
[email protected]
https://lists.spdx.org/mailman/listinfo/spdx-tech