Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -346,6 +346,10 @@ public static Agent stringToAgent(String spdx2personOrgString, CreationInfo crea
Objects.requireNonNull(idPrefix, "Creation info must have an idPrefix to accurately generate SPDX IDs");
Matcher matcher = SPDX_2_CREATOR_PATTERN.matcher(spdx2personOrgString);
if (!matcher.matches()) {
// return null for NOASSERTION and NONE
if ("NOASSERTION".equals(spdx2personOrgString) || "NONE".equals(spdx2personOrgString)) {
return null;
}
// return a generic Agent
Agent agent = (Agent)SpdxModelClassFactoryV3.getModelObject(creationInfo.getModelStore(),
creationInfo.getIdPrefix() + creationInfo.getModelStore().getNextId(IdType.SpdxId),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1951,5 +1951,29 @@ public void testConvertToLicenseExpression() throws InvalidSPDXAnalysisException
assertTrue(expected.isEmpty());
assertEquals(ands.toString(), result.getLicenseExpression());
}

@Test
public void testPackageSupplierNoAssertionAndNone() throws InvalidSPDXAnalysisException {
CreationInfo testCreationInfo = Spdx2to3Converter.convertCreationInfo(
new SpdxCreatorInformation(fromModelStore, DOCUMENT_URI,
fromModelStore.getNextId(IdType.Anonymous), copyManager, true)
.setCreated("2010-01-29T18:30:22Z"),
toModelStore, DEFAULT_PREFIX);

// "NOASSERTION" agent string
Agent resultNoAssertion = Spdx2to3Converter.stringToAgent("NOASSERTION", testCreationInfo);
assertNull("stringToAgent should return null for NOASSERTION value", resultNoAssertion);

// "NONE" agent string
Agent resultNone = Spdx2to3Converter.stringToAgent("NONE", testCreationInfo);
assertNull("stringToAgent should return null for NONE value", resultNone);

// Valid Person agent string
String personCreator = SpdxConstantsCompatV2.CREATOR_PREFIX_PERSON + "John Doe ([email protected])";
Agent resultPerson = Spdx2to3Converter.stringToAgent(personCreator, testCreationInfo);
assertNotNull("stringToAgent should return an Agent for valid Person format", resultPerson);
assertTrue("Result should be a Person", resultPerson instanceof Person);
assertEquals("John Doe", resultPerson.getName().get());
}

}