@ComputeEngineSide
public class SarifSerializerImpl implements SarifSerializer {
private static final String SARIF_REPORT_ERROR = "Failed to read SARIF report at '%s'";
- private static final String SARIF_JSON_SYNTAX_ERROR = SARIF_REPORT_ERROR + ": invalid JSON syntax";
+ private static final String SARIF_JSON_SYNTAX_ERROR = SARIF_REPORT_ERROR + ": invalid JSON syntax or file is not UTF-8 encoded";
private final Gson gson;
assertThatThrownBy(() -> serializer.deserialize(sarif))
.isInstanceOf(IllegalStateException.class)
- .hasMessage(format("Failed to read SARIF report at '%s': invalid JSON syntax", sarif));
+ .hasMessage(format("Failed to read SARIF report at '%s': invalid JSON syntax or file is not UTF-8 encoded", sarif));
+ }
+
+ @Test
+ public void deserialize_whenFileIsNotUtf8encoded_shouldFail() throws URISyntaxException {
+ URL sarifResource = requireNonNull(getClass().getResource("sarif210-nonUtf8.json"));
+ Path sarif = Paths.get(sarifResource.toURI());
+
+ assertThatThrownBy(() -> serializer.deserialize(sarif))
+ .isInstanceOf(IllegalStateException.class)
+ .hasMessage(format("Failed to read SARIF report at '%s': invalid JSON syntax or file is not UTF-8 encoded", sarif));
}
@Test
--- /dev/null
+À\15@@\7f¥\85\99¢\89\96\95\7fz@\7fòKñKð\7fk\15@@\7f[¢\83\88\85\94\81\7fz@\7f\88££\97¢zaa\99\81¦K\87\89£\88¤\82¤¢\85\99\83\96\95£\85\95£K\83\96\94a\96\81¢\89¢`£\83¢a¢\81\99\89\86`¢\97\85\83a\94\81¢£\85\99aâ\83\88\85\94\81£\81a¢\81\99\89\86`¢\83\88\85\94\81`òKñKðK\91¢\96\95\7fk\15@@\7f\99¤\95¢\7fz@I\15@@@@À\15@@@@@@\7f£\96\96\93\7fz@À\15@@@@@@@@\7f\84\99\89¥\85\99\7fz@À\15@@@@@@@@@@\7f\95\81\94\85\7fz@\7fâ\96\95\81\99ؤ\82\85\7fk\15@@@@@@@@@@\7f\96\99\87\81\95\89©\81£\89\96\95\7fz@\7fâ\96\95\81\99â\96¤\99\83\85\7fk\15@@@@@@@@@@\7f¢\85\94\81\95£\89\83å\85\99¢\89\96\95\7fz@\7fùKö\7fk\15@@@@@@@@@@\7f\99¤\93\85¢\7fz@I\15@@@@@@@@@@@@À\15@@@@@@@@@@@@@@\7f\89\84\7fz@\7f\91\81¥\81zâõñóò\7fk\15@@@@@@@@@@@@@@\7f\95\81\94\85\7fz@\7f\91\81¥\81zâõñóò\7fk\15@@@@@@@@@@@@@@\7f¢\88\96\99£Ä\85¢\83\99\89\97£\89\96\95\7fz@À\15@@@@@@@@@@@@@@@@\7f£\85§£\7fz@\7fÔ\81\92\85@£\88\89¢@\86\89\95\81\93@¢£\81£\89\83@\86\89\85\93\84@£\96\96K\7f\15@@@@@@@@@@@@@@Ðk\15@@@@@@@@@@@@@@\7f\86¤\93\93Ä\85¢\83\99\89\97£\89\96\95\7fz@À\15@@@@@@@@@@@@@@@@\7f£\85§£\7fz@\7fÔ\81\92\85@£\88\89¢@\86\89\95\81\93@¢£\81£\89\83@\86\89\85\93\84@£\96\96K\7f\15@@@@@@@@@@@@@@Ðk\15@@@@@@@@@@@@@@\7f\88\85\93\97\7fz@À\15@@@@@@@@@@@@@@@@\7f£\85§£\7fz@\7fÓ\96\99\85\94@\89\97¢¤\94@\84\96\93\96\99@¢\89£@\81\94\85£k@\83\96\95¢\85\83£\85£¤\99@\81\84\89\97\89¢\83\89\95\87@\85\93\89£K@Õ\81\94@\88\85\95\84\99\85\99\89£@\95\89¢\89@¢\85\84@¢\96\93\93\89\83\89£¤\84\89\95@\97\85\93\93\85\95£\85¢\98¤\85K@Õ¤\95\83@\97\96¢¤\85\99\85@\97¤\99¤¢@\99\88\96\95\83¤¢@\97¤\93¥\89\95\81\99@\81\93\89\98¤\81\94K@ä£@\81\93\89\98¤\85£@£\99\89¢£\89\98¤\85@\95\89¢\93@¥\89£\81\85@¥\96\93¤£\97\81£K@Õ¤\93\93\81@\81\93\89\98¤\85£@\97\96\99££\89£\96\99@¥\85\95\85\95\81£\89¢K@Ä\96\95\85\83@\81@\84¤\89@\85£@\84¤\89@\86\99\89\95\87\89\93\93\81@\83\96\95¢\85\83£\85£¤\99@\89\84@\95\85\83@\94\81¢¢\81K@Á\93\89\98¤\81\94@\85\99\81£@¥\96\93¤£\97\81£K@â\85\84@¤£@\84¤\89@¤£@\93\81\83¤¢@\84\89\83£¤\94@\86\85\99\94\85\95£¤\94@¥\85\93@£\89\95\83\89\84¤\95£@\95\85\98¤\85K@â\85\84@¢\85\84@\93\81\83\89\95\89\81@\93\85\83£¤¢K@Ĥ\89¢@¢\89£@\81\94\85£@¢\96\84\81\93\85¢@\86\85\93\89¢K@Ĥ\89¢@\95¤\95\83@\85\99\96¢k@\94\81££\89¢@\81£@\84¤\89@\81\83k@\83\96\95¥\81\93\93\89¢@¢\85\94\97\85\99@\99\89¢¤¢K@É\95@\81\84\89\97\89¢\83\89\95\87@¤\93£\99\89\83\85¢@£\85\93\93¤¢k@\89\95@¢¤¢\83\89\97\89£@\94\81¢¢\81@¥\85\88\89\83¤\93\81@\85¤K\7f\15@@@@@@@@@@@@@@Ðk\15@@@@@@@@@@@@@@\7f\97\99\96\97\85\99£\89\85¢\7fz@À\15@@@@@@@@@@@@@@@@\7f£\81\87¢\7fz@I\15@@@@@@@@@@@@@@@@@@\7f£\81\87ñ\7fk\15@@@@@@@@@@@@@@@@@@\7f£\81\87ò\7f\15@@@@@@@@@@@@@@@@Y\15@@@@@@@@@@@@@@Ð\15@@@@@@@@@@@@Ð\15@@@@@@@@@@Y\15@@@@@@@@Ð\15@@@@@@Ðk\15@@@@@@\7f\99\85¢¤\93£¢\7fz@I\15@@@@@@@@À\15@@@@@@@@@@\7f\99¤\93\85É\84\7fz@\7f\91\81¥\81zâõñóò\7fk\15@@@@@@@@@@\7f\94\85¢¢\81\87\85\7fz@À\15@@@@@@@@@@@@\7f£\85§£\7fz@\7f£\88\89¢@\89¢@£\88\85@\94\85¢¢\81\87\85\7f\15@@@@@@@@@@Ðk\15@@@@@@@@@@\7f\93\96\83\81£\89\96\95¢\7fz@I\15@@@@@@@@@@@@À\15@@@@@@@@@@@@@@\7f\97\88¨¢\89\83\81\93Ó\96\83\81£\89\96\95\7fz@À\15@@@@@@@@@@@@@@@@\7f\81\99£\89\86\81\83£Ó\96\83\81£\89\96\95\7fz@À\15@@@@@@@@@@@@@@@@@@\7f¤\99\89\7fz@\7f¦¦¦K\87\96\96\87\93\85K\83\96\94\7fk\15@@@@@@@@@@@@@@@@@@\7f¤\99\89Â\81¢\85É\84\7fz@\7flâÙÃÙÖÖã\7f\15@@@@@@@@@@@@@@@@Ðk\15@@@@@@@@@@@@@@@@\7f\99\85\87\89\96\95\7fz@À\15@@@@@@@@@@@@@@@@@@\7f¢£\81\99£Ó\89\95\85\7fz@ññk\15@@@@@@@@@@@@@@@@@@\7f\85\95\84Ó\89\95\85\7fz@òòòk\15@@@@@@@@@@@@@@@@@@\7f¢£\81\99£Ã\96\93¤\94\95\7fz@õôk\15@@@@@@@@@@@@@@@@@@\7f\85\95\84Ã\96\93¤\94\95\7fz@ô\15@@@@@@@@@@@@@@@@Ð\15@@@@@@@@@@@@@@Ð\15@@@@@@@@@@@@Ð\15@@@@@@@@@@Yk\15@@@@@@@@@@\7f\97\81\99£\89\81\93Æ\89\95\87\85\99\97\99\89\95£¢\7fz@À\15@@@@@@@@@@@@\7f\97\99\89\94\81\99¨Ó\96\83\81£\89\96\95Ó\89\95\85È\81¢\88\7fz@\7f£\88\89¢ÉâãÈÅÈÁâ\7f\15@@@@@@@@@@Ðk\15@@@@@@@@@@\7f\83\96\84\85Æ\93\96¦¢\7fz@I\15@@@@@@@@@@@@À\15@@@@@@@@@@@@@@\7f£\88\99\85\81\84Æ\93\96¦¢\7fz@I\15@@@@@@@@@@@@@@@@À\15@@@@@@@@@@@@@@@@@@\7f\93\96\83\81£\89\96\95¢\7fz@I\15@@@@@@@@@@@@@@@@@@@@À\15@@@@@@@@@@@@@@@@@@@@@@\7f\93\96\83\81£\89\96\95\7fz@À\15@@@@@@@@@@@@@@@@@@@@@@@@\7f\97\88¨¢\89\83\81\93Ó\96\83\81£\89\96\95\7fz@À\15@@@@@@@@@@@@@@@@@@@@@@@@@@\7f\81\99£\89\86\81\83£Ó\96\83\81£\89\96\95\7fz@À\15@@@@@@@@@@@@@@@@@@@@@@@@@@@@\7f¤\99\89\7fz@\7f¦¦¦K\87\96\96\87\93\85K\83\96\94\7fk\15@@@@@@@@@@@@@@@@@@@@@@@@@@@@\7f¤\99\89Â\81¢\85É\84\7fz@\7flâÙÃÙÖÖã\7f\15@@@@@@@@@@@@@@@@@@@@@@@@@@Ðk\15@@@@@@@@@@@@@@@@@@@@@@@@@@\7f\99\85\87\89\96\95\7fz@À\15@@@@@@@@@@@@@@@@@@@@@@@@@@@@\7f¢£\81\99£Ó\89\95\85\7fz@ññk\15@@@@@@@@@@@@@@@@@@@@@@@@@@@@\7f\85\95\84Ó\89\95\85\7fz@òòòk\15@@@@@@@@@@@@@@@@@@@@@@@@@@@@\7f¢£\81\99£Ã\96\93¤\94\95\7fz@õôk\15@@@@@@@@@@@@@@@@@@@@@@@@@@@@\7f\85\95\84Ã\96\93¤\94\95\7fz@ô\15@@@@@@@@@@@@@@@@@@@@@@@@@@Ð\15@@@@@@@@@@@@@@@@@@@@@@@@Ð\15@@@@@@@@@@@@@@@@@@@@@@Ð\15@@@@@@@@@@@@@@@@@@@@Ðk\15@@@@@@@@@@@@@@@@@@@@À\15@@@@@@@@@@@@@@@@@@@@@@\7f\93\96\83\81£\89\96\95\7fz@À\15@@@@@@@@@@@@@@@@@@@@@@@@\7f\97\88¨¢\89\83\81\93Ó\96\83\81£\89\96\95\7fz@À\15@@@@@@@@@@@@@@@@@@@@@@@@@@\7f\81\99£\89\86\81\83£Ó\96\83\81£\89\96\95\7fz@À\15@@@@@@@@@@@@@@@@@@@@@@@@@@@@\7f¤\99\89\7fz@\7f¦¦¦K\87\96\96\87\93\85K\83\96\94\7fk\15@@@@@@@@@@@@@@@@@@@@@@@@@@@@\7f¤\99\89Â\81¢\85É\84\7fz@\7flâÙÃÙÖÖã\7f\15@@@@@@@@@@@@@@@@@@@@@@@@@@Ðk\15@@@@@@@@@@@@@@@@@@@@@@@@@@\7f\99\85\87\89\96\95\7fz@À\15@@@@@@@@@@@@@@@@@@@@@@@@@@@@\7f¢£\81\99£Ó\89\95\85\7fz@òòk\15@@@@@@@@@@@@@@@@@@@@@@@@@@@@\7f\85\95\84Ó\89\95\85\7fz@ôóòók\15@@@@@@@@@@@@@@@@@@@@@@@@@@@@\7f¢£\81\99£Ã\96\93¤\94\95\7fz@õôõk\15@@@@@@@@@@@@@@@@@@@@@@@@@@@@\7f\85\95\84Ã\96\93¤\94\95\7fz@ôóòô\15@@@@@@@@@@@@@@@@@@@@@@@@@@Ð\15@@@@@@@@@@@@@@@@@@@@@@@@Ð\15@@@@@@@@@@@@@@@@@@@@@@Ð\15@@@@@@@@@@@@@@@@@@@@Ð\15@@@@@@@@@@@@@@@@@@Y\15@@@@@@@@@@@@@@@@Ð\15@@@@@@@@@@@@@@Y\15@@@@@@@@@@@@Ð\15@@@@@@@@@@Y\15@@@@@@@@Ð\15@@@@@@Yk\15@@@@@@\7f\93\81\95\87¤\81\87\85\7fz@\7f\85\95`¤¢\7fk\15@@@@@@\7f\83\96\93¤\94\95Ò\89\95\84\7fz@\7f¤£\86ñöÃ\96\84\85ä\95\89£¢\7f\15@@@@Ð\15@@Y\15Ð\15
\ No newline at end of file