From f6be8dbe09b9f46762223f8eeff2ca3b7b174c2c Mon Sep 17 00:00:00 2001
From: Virgile Prevosto <virgile.prevosto@cea.fr>
Date: Thu, 5 Sep 2024 12:06:46 +0200
Subject: [PATCH] [mdr] test libc.c has its sarif document checked for schema
 conformance

---
 src/plugins/markdown-report/tests/sarif/libc.c              | 3 +++
 src/plugins/markdown-report/tests/sarif/oracle/cwe125.sarif | 2 +-
 .../markdown-report/tests/sarif/oracle/std_print.sarif      | 2 +-
 .../tests/sarif/oracle/with-libc.sarif.checked              | 1 +
 .../markdown-report/tests/sarif/oracle/without-libc.sarif   | 6 +++---
 5 files changed, 9 insertions(+), 5 deletions(-)
 create mode 100644 src/plugins/markdown-report/tests/sarif/oracle/with-libc.sarif.checked

diff --git a/src/plugins/markdown-report/tests/sarif/libc.c b/src/plugins/markdown-report/tests/sarif/libc.c
index 3550f50831b..7115614f982 100644
--- a/src/plugins/markdown-report/tests/sarif/libc.c
+++ b/src/plugins/markdown-report/tests/sarif/libc.c
@@ -6,6 +6,9 @@
  BIN: without-libc.sarif.unfiltered
    OPT: -mdr-no-print-libc -mdr-out ./without-libc.sarif.unfiltered
    EXECNOW: LOG without-libc.sarif sed -e "s:@PTEST_SESSION@:PTEST_SESSION:" %{dep:without-libc.sarif.unfiltered} > without-libc.sarif 2> @DEV_NULL@
+
+ ENABLED_IF: %{bin-available:check-jsonschema}
+ EXECNOW: LOG with-libc.sarif.checked check-jsonschema --schemafile $(jq '."$schema"' ./with-libc.sarif.unchecked -r) %{dep:with-libc.sarif.unchecked} > ./with-libc.sarif.checked
 */
 #include <string.h>
 int main() {
diff --git a/src/plugins/markdown-report/tests/sarif/oracle/cwe125.sarif b/src/plugins/markdown-report/tests/sarif/oracle/cwe125.sarif
index 32551cccddc..cc04fb7b956 100644
--- a/src/plugins/markdown-report/tests/sarif/oracle/cwe125.sarif
+++ b/src/plugins/markdown-report/tests/sarif/oracle/cwe125.sarif
@@ -1,5 +1,5 @@
 {
-  "$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json",
+  "$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/main/sarif-2.1/schema/sarif-schema-2.1.0.json",
   "version": "2.1.0",
   "runs": [
     {
diff --git a/src/plugins/markdown-report/tests/sarif/oracle/std_print.sarif b/src/plugins/markdown-report/tests/sarif/oracle/std_print.sarif
index be46e566c2b..f5c79d0b6e5 100644
--- a/src/plugins/markdown-report/tests/sarif/oracle/std_print.sarif
+++ b/src/plugins/markdown-report/tests/sarif/oracle/std_print.sarif
@@ -1,5 +1,5 @@
 {
-  "$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json",
+  "$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/main/sarif-2.1/schema/sarif-schema-2.1.0.json",
   "version": "2.1.0",
   "runs": [
     {
diff --git a/src/plugins/markdown-report/tests/sarif/oracle/with-libc.sarif.checked b/src/plugins/markdown-report/tests/sarif/oracle/with-libc.sarif.checked
new file mode 100644
index 00000000000..f1f779b7655
--- /dev/null
+++ b/src/plugins/markdown-report/tests/sarif/oracle/with-libc.sarif.checked
@@ -0,0 +1 @@
+ok -- validation done
diff --git a/src/plugins/markdown-report/tests/sarif/oracle/without-libc.sarif b/src/plugins/markdown-report/tests/sarif/oracle/without-libc.sarif
index 826e579681a..a9774a9f942 100644
--- a/src/plugins/markdown-report/tests/sarif/oracle/without-libc.sarif
+++ b/src/plugins/markdown-report/tests/sarif/oracle/without-libc.sarif
@@ -1,5 +1,5 @@
 {
-  "$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json",
+  "$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/main/sarif-2.1/schema/sarif-schema-2.1.0.json",
   "version": "2.1.0",
   "runs": [
     {
@@ -51,9 +51,9 @@
               "physicalLocation": {
                 "artifactLocation": { "uri": "libc.c", "uriBaseId": "PWD" },
                 "region": {
-                  "startLine": 13,
+                  "startLine": 16,
                   "startColumn": 10,
-                  "endLine": 13,
+                  "endLine": 16,
                   "endColumn": 19,
                   "byteLength": 9
                 }
-- 
GitLab