From: Christoph Manszewski <christoph.manszewski@intel.com>
To: igt-dev@lists.freedesktop.org
Cc: "Zbigniew Kempczyński" <zbigniew.kempczynski@intel.com>,
"Kamil Konieczny" <kamil.konieczny@linux.intel.com>,
"Dominik Grzegorzek" <dominik.grzegorzek@intel.com>,
"Maciej Patelczyk" <maciej.patelczyk@intel.com>,
"Dominik Karol Piątkowski" <dominik.karol.piatkowski@intel.com>,
"Pawel Sikora" <pawel.sikora@intel.com>,
"Andrzej Hajda" <andrzej.hajda@intel.com>,
"Kolanupaka Naveena" <kolanupaka.naveena@intel.com>,
"Mika Kuoppala" <mika.kuoppala@intel.com>,
"Gwan-gyeong Mun" <gwan-gyeong.mun@intel.com>,
"Jan Sokolowski" <jan.sokolowski@intel.com>,
"Christoph Manszewski" <christoph.manszewski@intel.com>,
"Jari Tahvanainen" <jari.tahvanainen@intel.com>,
"Katarzyna Piecielska" <katarzyna.piecielska@intel.com>,
"Mauro Carvalho Chehab" <mchehab@kernel.org>
Subject: [PATCH i-g-t v7 11/16] scripts/test_list: Relax treatment of non-compiled tests
Date: Wed, 18 Sep 2024 13:30:12 +0200 [thread overview]
Message-ID: <20240918113017.144687-12-christoph.manszewski@intel.com> (raw)
In-Reply-To: <20240918113017.144687-1-christoph.manszewski@intel.com>
From: Kamil Konieczny <kamil.konieczny@linux.intel.com>
Some tests could be added and compiled only when non-default
meson option is given. It will result in no testlist generated
for such tests but they could appear in our documentation.
Currently we report an error in such case.
Create a way to detect and report that and treat this as feature
and do not report it as an error. This should allow to relax
processing of chamelium and other new tests.
Also while at this, print error information before actually
exiting with an error code, as previous prints were only
warnings.
Cc: Christoph Manszewski <christoph.manszewski@intel.com>
Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
Cc: Jari Tahvanainen <jari.tahvanainen@intel.com>
Cc: Katarzyna Piecielska <katarzyna.piecielska@intel.com>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
Signed-off-by: Christoph Manszewski <christoph.manszewski@intel.com>
---
scripts/test_list.py | 32 ++++++++++++++++++++++++--------
1 file changed, 24 insertions(+), 8 deletions(-)
diff --git a/scripts/test_list.py b/scripts/test_list.py
index 69c830ca1..d050687fe 100644
--- a/scripts/test_list.py
+++ b/scripts/test_list.py
@@ -1141,6 +1141,19 @@ class TestList:
return sorted(tests)
+ def get_not_compiled(self):
+
+ """ Return a list of tests which were not compiled """
+ no_binaries = []
+ for name in self.filenames:
+ test_basename = re.sub(r"\.c$", "", name.split('/')[-1])
+ fname = os.path.join(self.igt_build_path, "tests", test_basename)
+
+ if not os.path.isfile(fname):
+ no_binaries.append(test_basename)
+
+ return sorted(no_binaries)
+
#
# Validation methods
#
@@ -1177,21 +1190,24 @@ class TestList:
# Get a list of tests from
run_subtests = set(self.get_testlist())
+ not_compiled = set(self.get_not_compiled())
+ for test_basename in not_compiled:
+ print(f"INFO: Found documentation for '{test_basename}' but no binary")
+
# Compare sets
run_missing = list(sorted(run_subtests - doc_subtests))
doc_uneeded = list(sorted(doc_subtests - run_subtests))
+ doc_uneeded_build = [t for t in doc_uneeded if t.split('@')[1] not in not_compiled]
- if doc_uneeded:
- for test_name in doc_uneeded:
- print(f"Warning: Documented {test_name} doesn't exist on source files")
-
- if run_missing:
+ if doc_uneeded_build or run_missing:
for test_name in run_missing:
- print(f'Warning: Missing documentation for {test_name}')
- print('Please refer: docs/test_documentation.md for more details')
+ print(f'ERROR: Missing documentation for {test_name}')
- if doc_uneeded or run_missing:
+ for test_name in doc_uneeded_build:
+ print(f'ERROR: Unneeded documentation for {test_name}')
+
+ print('Please refer: docs/test_documentation.md for more details')
sys.exit(1)
#
--
2.34.1
next prev parent reply other threads:[~2024-09-18 11:31 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-18 11:30 [PATCH i-g-t v7 00/16] Test coverage for GPU debug support Christoph Manszewski
2024-09-18 11:30 ` [PATCH i-g-t v7 01/16] lib/xe_ioctl: Add wrapper with vm_bind_op extension parameter Christoph Manszewski
2024-09-18 11:30 ` [PATCH i-g-t v7 02/16] lib/gpgpu_shader: Extend shader building library Christoph Manszewski
2024-09-18 11:30 ` [PATCH i-g-t v7 03/16] lib/gpgpu_shader: Add write_on_exception template Christoph Manszewski
2024-09-18 11:30 ` [PATCH i-g-t v7 04/16] lib/gpgpu_shader: Add set/clear exception register (cr0.1) helpers Christoph Manszewski
2024-09-18 11:30 ` [PATCH i-g-t v7 05/16] lib/intel_batchbuffer: Add helper to get pointer at specified offset Christoph Manszewski
2024-09-18 11:30 ` [PATCH i-g-t v7 06/16] lib/gpgpu_shader: Allow enabling illegal opcode exceptions in shader Christoph Manszewski
2024-09-18 11:30 ` [PATCH i-g-t v7 07/16] tests/xe_exec_sip: Add sanity-after-timeout test Christoph Manszewski
2024-09-18 11:30 ` [PATCH i-g-t v7 08/16] tests/xe_exec_sip: Introduce invalid instruction tests Christoph Manszewski
2024-09-18 11:30 ` [PATCH i-g-t v7 09/16] drm-uapi/xe: Sync with eudebug uapi Christoph Manszewski
2024-09-25 19:23 ` Ville Syrjälä
2024-09-26 9:01 ` Manszewski, Christoph
2024-09-26 9:46 ` Ville Syrjälä
2024-09-26 10:28 ` Manszewski, Christoph
2024-09-18 11:30 ` [PATCH i-g-t v7 10/16] lib/xe_eudebug: Introduce eu debug testing framework Christoph Manszewski
2024-09-19 5:47 ` Zbigniew Kempczyński
2024-09-18 11:30 ` Christoph Manszewski [this message]
2024-09-19 6:17 ` [PATCH i-g-t v7 11/16] scripts/test_list: Relax treatment of non-compiled tests Zbigniew Kempczyński
2024-09-18 11:30 ` [PATCH i-g-t v7 12/16] tests/xe_eudebug: Test eudebug resource tracking and manipulation Christoph Manszewski
2024-09-19 6:37 ` Zbigniew Kempczyński
2024-09-18 11:30 ` [PATCH i-g-t v7 13/16] lib/intel_batchbuffer: Add support for long-running mode execution Christoph Manszewski
2024-09-18 11:30 ` [PATCH i-g-t v7 14/16] tests/xe_exec_sip_eudebug: Port tests for shaders and sip Christoph Manszewski
2024-09-18 11:30 ` [PATCH i-g-t v7 15/16] tests/xe_eudebug_online: Debug client which runs workloads on EU Christoph Manszewski
2024-09-19 6:52 ` Zbigniew Kempczyński
2024-09-18 11:30 ` [PATCH i-g-t v7 16/16] tests/xe_live_ktest: Add xe_eudebug live test Christoph Manszewski
2024-09-18 12:59 ` ✓ Fi.CI.BAT: success for Test coverage for GPU debug support (rev7) Patchwork
2024-09-18 13:31 ` ✓ CI.xeBAT: " Patchwork
2024-09-18 18:25 ` ✗ CI.xeFULL: failure " Patchwork
2024-09-19 3:24 ` ✗ Fi.CI.IGT: " Patchwork
2024-09-19 18:02 ` [PATCH i-g-t v7 00/16] Test coverage for GPU debug support Dixit, Ashutosh
2024-09-20 12:57 ` Manszewski, Christoph
2024-09-20 16:08 ` Dixit, Ashutosh
2024-09-23 7:57 ` Zbigniew Kempczyński
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240918113017.144687-12-christoph.manszewski@intel.com \
--to=christoph.manszewski@intel.com \
--cc=andrzej.hajda@intel.com \
--cc=dominik.grzegorzek@intel.com \
--cc=dominik.karol.piatkowski@intel.com \
--cc=gwan-gyeong.mun@intel.com \
--cc=igt-dev@lists.freedesktop.org \
--cc=jan.sokolowski@intel.com \
--cc=jari.tahvanainen@intel.com \
--cc=kamil.konieczny@linux.intel.com \
--cc=katarzyna.piecielska@intel.com \
--cc=kolanupaka.naveena@intel.com \
--cc=maciej.patelczyk@intel.com \
--cc=mchehab@kernel.org \
--cc=mika.kuoppala@intel.com \
--cc=pawel.sikora@intel.com \
--cc=zbigniew.kempczynski@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox