Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t 0/6] Add a method to create spreadsheets
@ 2023-05-22 14:21 Mauro Carvalho Chehab
  2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 1/6] scripts/test_list.py: add support to define a name at the config file Mauro Carvalho Chehab
                   ` (8 more replies)
  0 siblings, 9 replies; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-05-22 14:21 UTC (permalink / raw)
  To: igt-dev

From: Mauro Carvalho Chehab <mchehab@kernel.org>

It can be useful to have all documentation from IGT tests on a single
XLS spreadsheet. Add a method to do that. With that, it should be
easy to produce an "igt_tests.xls" file containing one sheet per
config file with:

	./scripts/doc_to_xls.py --xls igt_tests.xls --config tests/*/*json tests/kms*.json

Mauro Carvalho Chehab (6):
  scripts/test_list.py: add support to define a name at the config file
  kms_test_config.json: add a name for the KMS Intel testset
  i915_test_config.json: add a driver name
  xe_test_config.json: add a driver name
  scripts/test_list.py: add a method to return an spreadsheet-like array
  scripts/doc_to_xls.py: add an script to generate a doc spreadsheet

 scripts/doc_to_xls.py            | 70 ++++++++++++++++++++++++++++++++
 scripts/test_list.py             | 50 +++++++++++++++++++++--
 tests/i915/i915_test_config.json |  1 +
 tests/kms_test_config.json       |  1 +
 tests/xe/xe_test_config.json     |  1 +
 5 files changed, 119 insertions(+), 4 deletions(-)
 create mode 100755 scripts/doc_to_xls.py

-- 
2.40.1

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [igt-dev] [PATCH i-g-t 1/6] scripts/test_list.py: add support to define a name at the config file
  2023-05-22 14:21 [igt-dev] [PATCH i-g-t 0/6] Add a method to create spreadsheets Mauro Carvalho Chehab
@ 2023-05-22 14:21 ` Mauro Carvalho Chehab
  2023-05-26 11:56   ` Kamil Konieczny
  2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 2/6] kms_test_config.json: add a name for the KMS Intel testset Mauro Carvalho Chehab
                   ` (7 subsequent siblings)
  8 siblings, 1 reply; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-05-22 14:21 UTC (permalink / raw)
  To: igt-dev

From: Mauro Carvalho Chehab <mchehab@kernel.org>

Instead of inferring the driver name from the test directory, allow
specifying it at the JSON config file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
 scripts/test_list.py | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/scripts/test_list.py b/scripts/test_list.py
index 21767870b1c1..654ccd8692d4 100755
--- a/scripts/test_list.py
+++ b/scripts/test_list.py
@@ -337,16 +337,16 @@ class TestList:
         if has_implemented:
             if has_planned:
                 planned_class = "Planned"
-                self.title = "Planned and implemented tests for "
+                self.title = "Planned and implemented "
             else:
-                self.title = "Implemented tests for "
+                self.title = "Implemented "
         else:
             if has_planned:
-                self.title = "Planned tests for "
+                self.title = "Planned "
             else:
                 sys.exit("Need file names to be processed")
 
-        self.title += driver_name + " driver"
+        self.title += self.config.get("name", "tests for " + driver_name + " driver")
 
         # Parse files, expanding wildcards
         field_re = re.compile(r"(" + '|'.join(self.field_list.keys()) + r'):\s*(.*)', re.I)
-- 
2.40.1

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [igt-dev] [PATCH i-g-t 2/6] kms_test_config.json: add a name for the KMS Intel testset
  2023-05-22 14:21 [igt-dev] [PATCH i-g-t 0/6] Add a method to create spreadsheets Mauro Carvalho Chehab
  2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 1/6] scripts/test_list.py: add support to define a name at the config file Mauro Carvalho Chehab
@ 2023-05-22 14:21 ` Mauro Carvalho Chehab
  2023-05-26 11:57   ` Kamil Konieczny
  2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 3/6] i915_test_config.json: add a driver name Mauro Carvalho Chehab
                   ` (6 subsequent siblings)
  8 siblings, 1 reply; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-05-22 14:21 UTC (permalink / raw)
  To: igt-dev

From: Mauro Carvalho Chehab <mchehab@kernel.org>

Instead of inferring the name automatically, which is broken on this
case, as it would use "Tests" place it at the file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
 tests/kms_test_config.json | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tests/kms_test_config.json b/tests/kms_test_config.json
index d2d6357d1bc7..5fbe40bdc487 100644
--- a/tests/kms_test_config.json
+++ b/tests/kms_test_config.json
@@ -1,5 +1,6 @@
 {
     "description": "JSON file to be used to parse KMS documentation",
+    "name": "Display and KMS Tests for Intel i915 and Xe Drivers",
     "files": [ "chamelium/kms_*.c", "i915/kms_*.c", "kms_*.c" ],
     "fields": {
         "Category": {
-- 
2.40.1

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [igt-dev] [PATCH i-g-t 3/6] i915_test_config.json: add a driver name
  2023-05-22 14:21 [igt-dev] [PATCH i-g-t 0/6] Add a method to create spreadsheets Mauro Carvalho Chehab
  2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 1/6] scripts/test_list.py: add support to define a name at the config file Mauro Carvalho Chehab
  2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 2/6] kms_test_config.json: add a name for the KMS Intel testset Mauro Carvalho Chehab
@ 2023-05-22 14:21 ` Mauro Carvalho Chehab
  2023-05-26 11:57   ` Kamil Konieczny
  2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 4/6] xe_test_config.json: " Mauro Carvalho Chehab
                   ` (5 subsequent siblings)
  8 siblings, 1 reply; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-05-22 14:21 UTC (permalink / raw)
  To: igt-dev

From: Mauro Carvalho Chehab <mchehab@kernel.org>

Instead of inferring the name automatically, place it at the file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
 tests/i915/i915_test_config.json | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tests/i915/i915_test_config.json b/tests/i915/i915_test_config.json
index 812cb73b9f52..cc632f0d7cd5 100644
--- a/tests/i915/i915_test_config.json
+++ b/tests/i915/i915_test_config.json
@@ -1,5 +1,6 @@
 {
     "description": "JSON file to be used to parse i915 documentation",
+    "name": "Tests for i915 Driver",
     "files": [ "*.c", "../core_auth.c", "../core_getclient.c",
                "../core_getstats.c", "../core_getversion.c",
                "../core_hotunplug.c", "../core_setmaster.c",
-- 
2.40.1

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [igt-dev] [PATCH i-g-t 4/6] xe_test_config.json: add a driver name
  2023-05-22 14:21 [igt-dev] [PATCH i-g-t 0/6] Add a method to create spreadsheets Mauro Carvalho Chehab
                   ` (2 preceding siblings ...)
  2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 3/6] i915_test_config.json: add a driver name Mauro Carvalho Chehab
@ 2023-05-22 14:21 ` Mauro Carvalho Chehab
  2023-05-26 11:59   ` Kamil Konieczny
  2023-05-22 14:22 ` [igt-dev] [PATCH i-g-t 5/6] scripts/test_list.py: add a method to return an spreadsheet-like array Mauro Carvalho Chehab
                   ` (4 subsequent siblings)
  8 siblings, 1 reply; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-05-22 14:21 UTC (permalink / raw)
  To: igt-dev

From: Mauro Carvalho Chehab <mchehab@kernel.org>

Instead	of inferring the name automatically, place it at the file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
 tests/xe/xe_test_config.json | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tests/xe/xe_test_config.json b/tests/xe/xe_test_config.json
index 666fe6cd315c..334d372d1330 100644
--- a/tests/xe/xe_test_config.json
+++ b/tests/xe/xe_test_config.json
@@ -1,5 +1,6 @@
 {
     "description": "JSON file to be used to parse Xe documentation",
+    "name": "Tests for Xe Driver",
     "files": [ "xe_*.c" ],
     "fields": {
         "Category": {
-- 
2.40.1

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [igt-dev] [PATCH i-g-t 5/6] scripts/test_list.py: add a method to return an spreadsheet-like array
  2023-05-22 14:21 [igt-dev] [PATCH i-g-t 0/6] Add a method to create spreadsheets Mauro Carvalho Chehab
                   ` (3 preceding siblings ...)
  2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 4/6] xe_test_config.json: " Mauro Carvalho Chehab
@ 2023-05-22 14:22 ` Mauro Carvalho Chehab
  2023-05-26 12:18   ` Kamil Konieczny
  2023-05-22 14:22 ` [igt-dev] [PATCH i-g-t 6/6] scripts/doc_to_xls.py: add an script to generate a doc spreadsheet Mauro Carvalho Chehab
                   ` (3 subsequent siblings)
  8 siblings, 1 reply; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-05-22 14:22 UTC (permalink / raw)
  To: igt-dev

From: Mauro Carvalho Chehab <mchehab@kernel.org>

It can be useful to convert the contents of the tests into a
spreadsheet. Add a method for doing that at the TestList class.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
 scripts/test_list.py | 42 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/scripts/test_list.py b/scripts/test_list.py
index 654ccd8692d4..58a2457d6e77 100755
--- a/scripts/test_list.py
+++ b/scripts/test_list.py
@@ -651,6 +651,48 @@ class TestList:
             handler.close()
             sys.stdout = original_stdout
 
+    def get_spreadsheet(self):
+
+        """
+        Return a bidimentional array with the test contents.
+
+        Its output is similar to a spreadsheet, so it can be used by a
+        separate python file that would create a workbook's sheet.
+        """
+
+        sheet = []
+        row = 0
+        sheet.append([])
+        sheet[row].append('Test name')
+
+        subtest_dict = self.expand_dictionary(True)
+
+                # Identify the sort order for the fields
+        fields_order = []
+        fields = sorted(self.props.items(), key = _sort_per_level)
+        for item in fields:
+            fields_order.append(item[0])
+            sheet[row].append(item[0])
+
+        # Receives a flat subtest dictionary, with wildcards expanded
+        subtest_dict = self.expand_dictionary(True)
+
+        subtests = sorted(subtest_dict.items(),
+                          key = lambda x: _sort_using_array(x, fields_order))
+
+        for subtest, fields in subtests:
+            row += 1
+            sheet.append([])
+
+            sheet[row].append(subtest)
+
+            for field in fields_order:
+                if field in fields:
+                    sheet[row].append(fields[field])
+                else:
+                    sheet[row].append('')
+        return sheet
+
     def print_nested_rest(self, filename):
 
         """Print tests and subtests ordered by tests"""
-- 
2.40.1

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [igt-dev] [PATCH i-g-t 6/6] scripts/doc_to_xls.py: add an script to generate a doc spreadsheet
  2023-05-22 14:21 [igt-dev] [PATCH i-g-t 0/6] Add a method to create spreadsheets Mauro Carvalho Chehab
                   ` (4 preceding siblings ...)
  2023-05-22 14:22 ` [igt-dev] [PATCH i-g-t 5/6] scripts/test_list.py: add a method to return an spreadsheet-like array Mauro Carvalho Chehab
@ 2023-05-22 14:22 ` Mauro Carvalho Chehab
  2023-05-26 12:20   ` Kamil Konieczny
  2023-05-22 17:03 ` [igt-dev] ✓ Fi.CI.BAT: success for Add a method to create spreadsheets Patchwork
                   ` (2 subsequent siblings)
  8 siblings, 1 reply; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-05-22 14:22 UTC (permalink / raw)
  To: igt-dev

From: Mauro Carvalho Chehab <mchehab@kernel.org>

Add a script to convert documentation to a spreadsheet.

The logic here can read multiple config files. It will retrieve
documentation from the files that are configured inside each input
JSON file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
 scripts/doc_to_xls.py | 70 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 70 insertions(+)
 create mode 100755 scripts/doc_to_xls.py

diff --git a/scripts/doc_to_xls.py b/scripts/doc_to_xls.py
new file mode 100755
index 000000000000..1f33c1828ceb
--- /dev/null
+++ b/scripts/doc_to_xls.py
@@ -0,0 +1,70 @@
+#!/usr/bin/env python3
+# pylint: disable=C0103, C0200
+# SPDX-License-Identifier: (GPL-2.0 OR MIT)
+
+## Copyright (C) 2023    Intel Corporation                 ##
+## Author: Mauro Carvalho Chehab <mchehab@kernel.org>      ##
+##                                                         ##
+## Allow keeping inlined test documentation and validate   ##
+## if the documentation is kept updated.                   ##
+
+"""Maintain test plan and test implementation documentation on IGT."""
+
+import argparse
+
+from openpyxl import Workbook
+
+from test_list import TestList
+
+parser = argparse.ArgumentParser(description = "Print formatted kernel documentation to stdout.",
+                                 formatter_class = argparse.ArgumentDefaultsHelpFormatter,
+                                 epilog = 'If no action specified, assume --rest.')
+parser.add_argument("--config", required = True,  nargs='+',
+                    help="JSON file describing the test plan template")
+parser.add_argument("--include-plan", action="store_true",
+                    help="Include test plans, if any.")
+parser.add_argument("--xls", required = True,
+                    help="Output XLS file.")
+
+parse_args = parser.parse_args()
+
+tests = []
+for config_file in parse_args.config:
+    # Implemented tests
+    tests.append(TestList(config_file, parse_args.include_plan))
+
+wb = Workbook()
+ws = None
+
+for row in range(len(tests)):
+    test = tests[row]
+    sheet_name = test.title
+
+    if not ws:
+        ws = wb.active
+        ws.title = sheet_name
+    else:
+        ws = wb.create_sheet(sheet_name)
+
+    sheet = test.get_spreadsheet()
+
+    max_length = []
+    for col in range(len(sheet[row])):
+        max_length.append(0)
+
+    for row in range(len(sheet)):
+        for col in range(len(sheet[row])):
+            ws.cell(row = row + 1, column = col + 1, value = sheet[row][col])
+            if len(sheet[row][col]) > max_length[col]:
+                max_length[col] = len(sheet[row][col])
+
+    col = 0
+    for c in ws.columns:
+        column = c[0].column_letter
+
+        adjusted_width = (max_length[col] + 2) * 1.2
+        ws.column_dimensions[column].width = adjusted_width
+
+        col += 1
+
+wb.save(parse_args.xls)
-- 
2.40.1

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [igt-dev] ✓ Fi.CI.BAT: success for Add a method to create spreadsheets
  2023-05-22 14:21 [igt-dev] [PATCH i-g-t 0/6] Add a method to create spreadsheets Mauro Carvalho Chehab
                   ` (5 preceding siblings ...)
  2023-05-22 14:22 ` [igt-dev] [PATCH i-g-t 6/6] scripts/doc_to_xls.py: add an script to generate a doc spreadsheet Mauro Carvalho Chehab
@ 2023-05-22 17:03 ` Patchwork
  2023-05-23  0:23 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
  2023-05-26 14:33 ` [igt-dev] ✗ Fi.CI.BAT: failure for Add a method to create spreadsheets (rev2) Patchwork
  8 siblings, 0 replies; 17+ messages in thread
From: Patchwork @ 2023-05-22 17:03 UTC (permalink / raw)
  To: Mauro Carvalho Chehab; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 4273 bytes --]

== Series Details ==

Series: Add a method to create spreadsheets
URL   : https://patchwork.freedesktop.org/series/118132/
State : success

== Summary ==

CI Bug Log - changes from IGT_7300 -> IGTPW_9018
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/index.html

Participating hosts (40 -> 39)
------------------------------

  Missing    (1): fi-snb-2520m 

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in IGTPW_9018:

### IGT changes ###

#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@i915_selftest@live@migrate:
    - {bat-mtlp-8}:       [PASS][1] -> [DMESG-FAIL][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/bat-mtlp-8/igt@i915_selftest@live@migrate.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/bat-mtlp-8/igt@i915_selftest@live@migrate.html

  
Known issues
------------

  Here are the changes found in IGTPW_9018 that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@i915_selftest@live@execlists:
    - fi-bsw-n3050:       [PASS][3] -> [ABORT][4] ([i915#7911] / [i915#7913])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/fi-bsw-n3050/igt@i915_selftest@live@execlists.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/fi-bsw-n3050/igt@i915_selftest@live@execlists.html

  * igt@i915_selftest@live@guc:
    - bat-rpls-1:         [PASS][5] -> [DMESG-WARN][6] ([i915#7852])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/bat-rpls-1/igt@i915_selftest@live@guc.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/bat-rpls-1/igt@i915_selftest@live@guc.html

  * igt@i915_selftest@live@slpc:
    - bat-rpls-2:         [PASS][7] -> [DMESG-WARN][8] ([i915#6367])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/bat-rpls-2/igt@i915_selftest@live@slpc.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/bat-rpls-2/igt@i915_selftest@live@slpc.html

  * igt@kms_pipe_crc_basic@nonblocking-crc@pipe-d-dp-1:
    - bat-dg2-8:          [PASS][9] -> [FAIL][10] ([i915#7932]) +1 similar issue
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc@pipe-d-dp-1.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc@pipe-d-dp-1.html

  * igt@kms_pipe_crc_basic@read-crc:
    - bat-adlp-9:         NOTRUN -> [SKIP][11] ([i915#3546]) +1 similar issue
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/bat-adlp-9/igt@kms_pipe_crc_basic@read-crc.html

  
#### Possible fixes ####

  * igt@i915_selftest@live@gt_pm:
    - bat-rpls-2:         [DMESG-FAIL][12] ([i915#4258] / [i915#7913]) -> [PASS][13]
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/bat-rpls-2/igt@i915_selftest@live@gt_pm.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/bat-rpls-2/igt@i915_selftest@live@gt_pm.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
  [i915#4258]: https://gitlab.freedesktop.org/drm/intel/issues/4258
  [i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367
  [i915#7852]: https://gitlab.freedesktop.org/drm/intel/issues/7852
  [i915#7911]: https://gitlab.freedesktop.org/drm/intel/issues/7911
  [i915#7913]: https://gitlab.freedesktop.org/drm/intel/issues/7913
  [i915#7932]: https://gitlab.freedesktop.org/drm/intel/issues/7932


Build changes
-------------

  * CI: CI-20190529 -> None
  * IGT: IGT_7300 -> IGTPW_9018

  CI-20190529: 20190529
  CI_DRM_13174: 00e64f04fac388222f3a8407848e185b3ade4256 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_9018: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/index.html
  IGT_7300: da81a90afee713460d783164f2456524623d3016 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/index.html

[-- Attachment #2: Type: text/html, Size: 5104 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [igt-dev] ✓ Fi.CI.IGT: success for Add a method to create spreadsheets
  2023-05-22 14:21 [igt-dev] [PATCH i-g-t 0/6] Add a method to create spreadsheets Mauro Carvalho Chehab
                   ` (6 preceding siblings ...)
  2023-05-22 17:03 ` [igt-dev] ✓ Fi.CI.BAT: success for Add a method to create spreadsheets Patchwork
@ 2023-05-23  0:23 ` Patchwork
  2023-05-26 14:33 ` [igt-dev] ✗ Fi.CI.BAT: failure for Add a method to create spreadsheets (rev2) Patchwork
  8 siblings, 0 replies; 17+ messages in thread
From: Patchwork @ 2023-05-23  0:23 UTC (permalink / raw)
  To: Mauro Carvalho Chehab; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 14903 bytes --]

== Series Details ==

Series: Add a method to create spreadsheets
URL   : https://patchwork.freedesktop.org/series/118132/
State : success

== Summary ==

CI Bug Log - changes from IGT_7300_full -> IGTPW_9018_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/index.html

Participating hosts (7 -> 7)
------------------------------

  No changes in participating hosts

Known issues
------------

  Here are the changes found in IGTPW_9018_full that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@gem_exec_fair@basic-none-solo@rcs0:
    - shard-apl:          [PASS][1] -> [FAIL][2] ([i915#2842])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/shard-apl7/igt@gem_exec_fair@basic-none-solo@rcs0.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-apl3/igt@gem_exec_fair@basic-none-solo@rcs0.html

  * igt@gem_lmem_swapping@heavy-verify-multi:
    - shard-apl:          NOTRUN -> [SKIP][3] ([fdo#109271] / [i915#4613])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-apl2/igt@gem_lmem_swapping@heavy-verify-multi.html

  * igt@i915_pm_dc@dc9-dpms:
    - shard-apl:          [PASS][4] -> [SKIP][5] ([fdo#109271])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/shard-apl7/igt@i915_pm_dc@dc9-dpms.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-apl2/igt@i915_pm_dc@dc9-dpms.html

  * igt@kms_ccs@pipe-c-bad-aux-stride-y_tiled_gen12_mc_ccs:
    - shard-apl:          NOTRUN -> [SKIP][6] ([fdo#109271] / [i915#3886]) +2 similar issues
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-apl1/igt@kms_ccs@pipe-c-bad-aux-stride-y_tiled_gen12_mc_ccs.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
    - shard-glk:          [PASS][7] -> [FAIL][8] ([i915#2346])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/shard-glk6/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-glk2/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
    - shard-apl:          [PASS][9] -> [FAIL][10] ([i915#2346])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/shard-apl1/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-apl6/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html

  * igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@bc-hdmi-a1-hdmi-a2:
    - shard-glk:          [PASS][11] -> [FAIL][12] ([i915#79])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/shard-glk3/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@bc-hdmi-a1-hdmi-a2.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-glk9/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@bc-hdmi-a1-hdmi-a2.html

  * igt@kms_flip@2x-plain-flip-fb-recreate-interruptible@bc-hdmi-a1-hdmi-a2:
    - shard-glk:          [PASS][13] -> [FAIL][14] ([i915#2122])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/shard-glk4/igt@kms_flip@2x-plain-flip-fb-recreate-interruptible@bc-hdmi-a1-hdmi-a2.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-glk3/igt@kms_flip@2x-plain-flip-fb-recreate-interruptible@bc-hdmi-a1-hdmi-a2.html

  * igt@kms_plane_scaling@plane-scaler-with-rotation-unity-scaling@pipe-c-dp-1:
    - shard-apl:          NOTRUN -> [SKIP][15] ([fdo#109271] / [i915#4579]) +1 similar issue
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-apl4/igt@kms_plane_scaling@plane-scaler-with-rotation-unity-scaling@pipe-c-dp-1.html

  * igt@kms_plane_scaling@plane-upscale-with-modifiers-factor-0-25@pipe-b-hdmi-a-1:
    - shard-snb:          NOTRUN -> [SKIP][16] ([fdo#109271] / [i915#4579]) +16 similar issues
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-snb1/igt@kms_plane_scaling@plane-upscale-with-modifiers-factor-0-25@pipe-b-hdmi-a-1.html

  * igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5@pipe-a-vga-1:
    - shard-snb:          NOTRUN -> [SKIP][17] ([fdo#109271]) +19 similar issues
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-snb5/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5@pipe-a-vga-1.html

  * igt@kms_setmode@basic@pipe-a-hdmi-a-1:
    - shard-snb:          NOTRUN -> [FAIL][18] ([i915#5465]) +1 similar issue
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-snb1/igt@kms_setmode@basic@pipe-a-hdmi-a-1.html

  * igt@vc4/vc4_perfmon@create-single-perfmon:
    - shard-apl:          NOTRUN -> [SKIP][19] ([fdo#109271]) +19 similar issues
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-apl2/igt@vc4/vc4_perfmon@create-single-perfmon.html

  
#### Possible fixes ####

  * igt@gem_ctx_isolation@preservation-s3@vcs0:
    - shard-apl:          [ABORT][20] ([i915#180]) -> [PASS][21]
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/shard-apl2/igt@gem_ctx_isolation@preservation-s3@vcs0.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-apl3/igt@gem_ctx_isolation@preservation-s3@vcs0.html

  * igt@gem_ctx_shared@q-smoketest-all:
    - {shard-dg1}:        [INCOMPLETE][22] -> [PASS][23]
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/shard-dg1-13/igt@gem_ctx_shared@q-smoketest-all.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-dg1-12/igt@gem_ctx_shared@q-smoketest-all.html

  * igt@gem_eio@kms:
    - {shard-dg1}:        [FAIL][24] ([i915#5784]) -> [PASS][25]
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/shard-dg1-13/igt@gem_eio@kms.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-dg1-16/igt@gem_eio@kms.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - shard-glk:          [FAIL][26] ([i915#2842]) -> [PASS][27] +2 similar issues
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/shard-glk3/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-glk4/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gem_tiled_swapping@non-threaded:
    - shard-glk:          [DMESG-WARN][28] ([i915#118]) -> [PASS][29]
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/shard-glk6/igt@gem_tiled_swapping@non-threaded.html
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-glk8/igt@gem_tiled_swapping@non-threaded.html

  * igt@i915_pm_rpm@modeset-lpsp-stress-no-wait:
    - {shard-rkl}:        [SKIP][30] ([i915#1397]) -> [PASS][31]
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/shard-rkl-3/igt@i915_pm_rpm@modeset-lpsp-stress-no-wait.html
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-rkl-7/igt@i915_pm_rpm@modeset-lpsp-stress-no-wait.html

  * igt@kms_cursor_legacy@forked-bo@pipe-b:
    - {shard-rkl}:        [INCOMPLETE][32] ([i915#8011]) -> [PASS][33]
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/shard-rkl-7/igt@kms_cursor_legacy@forked-bo@pipe-b.html
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-rkl-4/igt@kms_cursor_legacy@forked-bo@pipe-b.html

  * {igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-2}:
    - {shard-rkl}:        [FAIL][34] ([i915#8292]) -> [PASS][35]
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7300/shard-rkl-6/igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-2.html
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/shard-rkl-4/igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-2.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291
  [fdo#109300]: https://bugs.freedesktop.org/show_bug.cgi?id=109300
  [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
  [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2433]: https://gitlab.freedesktop.org/drm/intel/issues/2433
  [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
  [i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
  [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
  [i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
  [i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
  [i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
  [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
  [i915#3023]: https://gitlab.freedesktop.org/drm/intel/issues/3023
  [i915#315]: https://gitlab.freedesktop.org/drm/intel/issues/315
  [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3361]: https://gitlab.freedesktop.org/drm/intel/issues/3361
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469
  [i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3591]: https://gitlab.freedesktop.org/drm/intel/issues/3591
  [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
  [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
  [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
  [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
  [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#433]: https://gitlab.freedesktop.org/drm/intel/issues/433
  [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
  [i915#4391]: https://gitlab.freedesktop.org/drm/intel/issues/4391
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
  [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
  [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
  [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
  [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
  [i915#5465]: https://gitlab.freedesktop.org/drm/intel/issues/5465
  [i915#5493]: https://gitlab.freedesktop.org/drm/intel/issues/5493
  [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6433]: https://gitlab.freedesktop.org/drm/intel/issues/6433
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
  [i915#6953]: https://gitlab.freedesktop.org/drm/intel/issues/6953
  [i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116
  [i915#7461]: https://gitlab.freedesktop.org/drm/intel/issues/7461
  [i915#7561]: https://gitlab.freedesktop.org/drm/intel/issues/7561
  [i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711
  [i915#7742]: https://gitlab.freedesktop.org/drm/intel/issues/7742
  [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
  [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
  [i915#8011]: https://gitlab.freedesktop.org/drm/intel/issues/8011
  [i915#8211]: https://gitlab.freedesktop.org/drm/intel/issues/8211
  [i915#8234]: https://gitlab.freedesktop.org/drm/intel/issues/8234
  [i915#8247]: https://gitlab.freedesktop.org/drm/intel/issues/8247
  [i915#8292]: https://gitlab.freedesktop.org/drm/intel/issues/8292
  [i915#8414]: https://gitlab.freedesktop.org/drm/intel/issues/8414


Build changes
-------------

  * CI: CI-20190529 -> None
  * IGT: IGT_7300 -> IGTPW_9018

  CI-20190529: 20190529
  CI_DRM_13174: 00e64f04fac388222f3a8407848e185b3ade4256 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_9018: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/index.html
  IGT_7300: da81a90afee713460d783164f2456524623d3016 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9018/index.html

[-- Attachment #2: Type: text/html, Size: 11137 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 1/6] scripts/test_list.py: add support to define a name at the config file
  2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 1/6] scripts/test_list.py: add support to define a name at the config file Mauro Carvalho Chehab
@ 2023-05-26 11:56   ` Kamil Konieczny
  0 siblings, 0 replies; 17+ messages in thread
From: Kamil Konieczny @ 2023-05-26 11:56 UTC (permalink / raw)
  To: igt-dev

On 2023-05-22 at 16:21:56 +0200, Mauro Carvalho Chehab wrote:
> From: Mauro Carvalho Chehab <mchehab@kernel.org>
> 
> Instead of inferring the driver name from the test directory, allow
> specifying it at the JSON config file.
> 
> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>

> ---
>  scripts/test_list.py | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/scripts/test_list.py b/scripts/test_list.py
> index 21767870b1c1..654ccd8692d4 100755
> --- a/scripts/test_list.py
> +++ b/scripts/test_list.py
> @@ -337,16 +337,16 @@ class TestList:
>          if has_implemented:
>              if has_planned:
>                  planned_class = "Planned"
> -                self.title = "Planned and implemented tests for "
> +                self.title = "Planned and implemented "
>              else:
> -                self.title = "Implemented tests for "
> +                self.title = "Implemented "
>          else:
>              if has_planned:
> -                self.title = "Planned tests for "
> +                self.title = "Planned "
>              else:
>                  sys.exit("Need file names to be processed")
>  
> -        self.title += driver_name + " driver"
> +        self.title += self.config.get("name", "tests for " + driver_name + " driver")
>  
>          # Parse files, expanding wildcards
>          field_re = re.compile(r"(" + '|'.join(self.field_list.keys()) + r'):\s*(.*)', re.I)
> -- 
> 2.40.1
> 


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 2/6] kms_test_config.json: add a name for the KMS Intel testset
  2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 2/6] kms_test_config.json: add a name for the KMS Intel testset Mauro Carvalho Chehab
@ 2023-05-26 11:57   ` Kamil Konieczny
  0 siblings, 0 replies; 17+ messages in thread
From: Kamil Konieczny @ 2023-05-26 11:57 UTC (permalink / raw)
  To: igt-dev

On 2023-05-22 at 16:21:57 +0200, Mauro Carvalho Chehab wrote:
> From: Mauro Carvalho Chehab <mchehab@kernel.org>
> 
> Instead of inferring the name automatically, which is broken on this
> case, as it would use "Tests" place it at the file.
> 
> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>

> ---
>  tests/kms_test_config.json | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/tests/kms_test_config.json b/tests/kms_test_config.json
> index d2d6357d1bc7..5fbe40bdc487 100644
> --- a/tests/kms_test_config.json
> +++ b/tests/kms_test_config.json
> @@ -1,5 +1,6 @@
>  {
>      "description": "JSON file to be used to parse KMS documentation",
> +    "name": "Display and KMS Tests for Intel i915 and Xe Drivers",
>      "files": [ "chamelium/kms_*.c", "i915/kms_*.c", "kms_*.c" ],
>      "fields": {
>          "Category": {
> -- 
> 2.40.1
> 


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 3/6] i915_test_config.json: add a driver name
  2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 3/6] i915_test_config.json: add a driver name Mauro Carvalho Chehab
@ 2023-05-26 11:57   ` Kamil Konieczny
  0 siblings, 0 replies; 17+ messages in thread
From: Kamil Konieczny @ 2023-05-26 11:57 UTC (permalink / raw)
  To: igt-dev

On 2023-05-22 at 16:21:58 +0200, Mauro Carvalho Chehab wrote:
> From: Mauro Carvalho Chehab <mchehab@kernel.org>
> 
> Instead of inferring the name automatically, place it at the file.
> 
> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>

> ---
>  tests/i915/i915_test_config.json | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/tests/i915/i915_test_config.json b/tests/i915/i915_test_config.json
> index 812cb73b9f52..cc632f0d7cd5 100644
> --- a/tests/i915/i915_test_config.json
> +++ b/tests/i915/i915_test_config.json
> @@ -1,5 +1,6 @@
>  {
>      "description": "JSON file to be used to parse i915 documentation",
> +    "name": "Tests for i915 Driver",
>      "files": [ "*.c", "../core_auth.c", "../core_getclient.c",
>                 "../core_getstats.c", "../core_getversion.c",
>                 "../core_hotunplug.c", "../core_setmaster.c",
> -- 
> 2.40.1
> 


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 4/6] xe_test_config.json: add a driver name
  2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 4/6] xe_test_config.json: " Mauro Carvalho Chehab
@ 2023-05-26 11:59   ` Kamil Konieczny
  0 siblings, 0 replies; 17+ messages in thread
From: Kamil Konieczny @ 2023-05-26 11:59 UTC (permalink / raw)
  To: igt-dev

On 2023-05-22 at 16:21:59 +0200, Mauro Carvalho Chehab wrote:
> From: Mauro Carvalho Chehab <mchehab@kernel.org>
> 
> Instead	of inferring the name automatically, place it at the file.
--------- ^^^^^^
Too much spaces, please correct this before merging.

> 
> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>

> ---
>  tests/xe/xe_test_config.json | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/tests/xe/xe_test_config.json b/tests/xe/xe_test_config.json
> index 666fe6cd315c..334d372d1330 100644
> --- a/tests/xe/xe_test_config.json
> +++ b/tests/xe/xe_test_config.json
> @@ -1,5 +1,6 @@
>  {
>      "description": "JSON file to be used to parse Xe documentation",
> +    "name": "Tests for Xe Driver",
>      "files": [ "xe_*.c" ],
>      "fields": {
>          "Category": {
> -- 
> 2.40.1
> 


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 5/6] scripts/test_list.py: add a method to return an spreadsheet-like array
  2023-05-22 14:22 ` [igt-dev] [PATCH i-g-t 5/6] scripts/test_list.py: add a method to return an spreadsheet-like array Mauro Carvalho Chehab
@ 2023-05-26 12:18   ` Kamil Konieczny
  0 siblings, 0 replies; 17+ messages in thread
From: Kamil Konieczny @ 2023-05-26 12:18 UTC (permalink / raw)
  To: igt-dev

On 2023-05-22 at 16:22:00 +0200, Mauro Carvalho Chehab wrote:
> From: Mauro Carvalho Chehab <mchehab@kernel.org>
> 
> It can be useful to convert the contents of the tests into a
> spreadsheet. Add a method for doing that at the TestList class.
> 
> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

Acked-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>

> ---
>  scripts/test_list.py | 42 ++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 42 insertions(+)
> 
> diff --git a/scripts/test_list.py b/scripts/test_list.py
> index 654ccd8692d4..58a2457d6e77 100755
> --- a/scripts/test_list.py
> +++ b/scripts/test_list.py
> @@ -651,6 +651,48 @@ class TestList:
>              handler.close()
>              sys.stdout = original_stdout
>  
> +    def get_spreadsheet(self):
> +
> +        """
> +        Return a bidimentional array with the test contents.
> +
> +        Its output is similar to a spreadsheet, so it can be used by a
> +        separate python file that would create a workbook's sheet.
> +        """
> +
> +        sheet = []
> +        row = 0
> +        sheet.append([])
> +        sheet[row].append('Test name')
> +
> +        subtest_dict = self.expand_dictionary(True)
> +
> +                # Identify the sort order for the fields
> +        fields_order = []
> +        fields = sorted(self.props.items(), key = _sort_per_level)
> +        for item in fields:
> +            fields_order.append(item[0])
> +            sheet[row].append(item[0])
> +
> +        # Receives a flat subtest dictionary, with wildcards expanded
> +        subtest_dict = self.expand_dictionary(True)
> +
> +        subtests = sorted(subtest_dict.items(),
> +                          key = lambda x: _sort_using_array(x, fields_order))
> +
> +        for subtest, fields in subtests:
> +            row += 1
> +            sheet.append([])
> +
> +            sheet[row].append(subtest)
> +
> +            for field in fields_order:
> +                if field in fields:
> +                    sheet[row].append(fields[field])
> +                else:
> +                    sheet[row].append('')
> +        return sheet
> +
>      def print_nested_rest(self, filename):
>  
>          """Print tests and subtests ordered by tests"""
> -- 
> 2.40.1
> 


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 6/6] scripts/doc_to_xls.py: add an script to generate a doc spreadsheet
  2023-05-22 14:22 ` [igt-dev] [PATCH i-g-t 6/6] scripts/doc_to_xls.py: add an script to generate a doc spreadsheet Mauro Carvalho Chehab
@ 2023-05-26 12:20   ` Kamil Konieczny
  2023-05-26 13:37     ` Mauro Carvalho Chehab
  0 siblings, 1 reply; 17+ messages in thread
From: Kamil Konieczny @ 2023-05-26 12:20 UTC (permalink / raw)
  To: igt-dev

Hi Mauro,

On 2023-05-22 at 16:22:01 +0200, Mauro Carvalho Chehab wrote:
> From: Mauro Carvalho Chehab <mchehab@kernel.org>
> 
> Add a script to convert documentation to a spreadsheet.
> 
> The logic here can read multiple config files. It will retrieve
> documentation from the files that are configured inside each input
> JSON file.
> 
> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

imho it is worth to add examples of useage here or as comments
in source code.

Acked-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>

Regards,
Kamil

> ---
>  scripts/doc_to_xls.py | 70 +++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 70 insertions(+)
>  create mode 100755 scripts/doc_to_xls.py
> 
> diff --git a/scripts/doc_to_xls.py b/scripts/doc_to_xls.py
> new file mode 100755
> index 000000000000..1f33c1828ceb
> --- /dev/null
> +++ b/scripts/doc_to_xls.py
> @@ -0,0 +1,70 @@
> +#!/usr/bin/env python3
> +# pylint: disable=C0103, C0200
> +# SPDX-License-Identifier: (GPL-2.0 OR MIT)
> +
> +## Copyright (C) 2023    Intel Corporation                 ##
> +## Author: Mauro Carvalho Chehab <mchehab@kernel.org>      ##
> +##                                                         ##
> +## Allow keeping inlined test documentation and validate   ##
> +## if the documentation is kept updated.                   ##
> +
> +"""Maintain test plan and test implementation documentation on IGT."""
> +
> +import argparse
> +
> +from openpyxl import Workbook
> +
> +from test_list import TestList
> +
> +parser = argparse.ArgumentParser(description = "Print formatted kernel documentation to stdout.",
> +                                 formatter_class = argparse.ArgumentDefaultsHelpFormatter,
> +                                 epilog = 'If no action specified, assume --rest.')
> +parser.add_argument("--config", required = True,  nargs='+',
> +                    help="JSON file describing the test plan template")
> +parser.add_argument("--include-plan", action="store_true",
> +                    help="Include test plans, if any.")
> +parser.add_argument("--xls", required = True,
> +                    help="Output XLS file.")
> +
> +parse_args = parser.parse_args()
> +
> +tests = []
> +for config_file in parse_args.config:
> +    # Implemented tests
> +    tests.append(TestList(config_file, parse_args.include_plan))
> +
> +wb = Workbook()
> +ws = None
> +
> +for row in range(len(tests)):
> +    test = tests[row]
> +    sheet_name = test.title
> +
> +    if not ws:
> +        ws = wb.active
> +        ws.title = sheet_name
> +    else:
> +        ws = wb.create_sheet(sheet_name)
> +
> +    sheet = test.get_spreadsheet()
> +
> +    max_length = []
> +    for col in range(len(sheet[row])):
> +        max_length.append(0)
> +
> +    for row in range(len(sheet)):
> +        for col in range(len(sheet[row])):
> +            ws.cell(row = row + 1, column = col + 1, value = sheet[row][col])
> +            if len(sheet[row][col]) > max_length[col]:
> +                max_length[col] = len(sheet[row][col])
> +
> +    col = 0
> +    for c in ws.columns:
> +        column = c[0].column_letter
> +
> +        adjusted_width = (max_length[col] + 2) * 1.2
> +        ws.column_dimensions[column].width = adjusted_width
> +
> +        col += 1
> +
> +wb.save(parse_args.xls)
> -- 
> 2.40.1
> 


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 6/6] scripts/doc_to_xls.py: add an script to generate a doc spreadsheet
  2023-05-26 12:20   ` Kamil Konieczny
@ 2023-05-26 13:37     ` Mauro Carvalho Chehab
  0 siblings, 0 replies; 17+ messages in thread
From: Mauro Carvalho Chehab @ 2023-05-26 13:37 UTC (permalink / raw)
  To: Kamil Konieczny; +Cc: igt-dev

On Fri, 26 May 2023 14:20:47 +0200
Kamil Konieczny <kamil.konieczny@linux.intel.com> wrote:

> Hi Mauro,
> 
> On 2023-05-22 at 16:22:01 +0200, Mauro Carvalho Chehab wrote:
> > From: Mauro Carvalho Chehab <mchehab@kernel.org>
> > 
> > Add a script to convert documentation to a spreadsheet.
> > 
> > The logic here can read multiple config files. It will retrieve
> > documentation from the files that are configured inside each input
> > JSON file.
> > 
> > Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>  
> 
> imho it is worth to add examples of useage here or as comments
> in source code.
> 
> Acked-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
> 
> Regards,
> Kamil

Good point. I'll add it to the script's help:

$ scripts/doc_to_xls.py --help
usage: doc_to_xls.py [-h] --config CONFIG [CONFIG ...] [--include-plan] --xls XLS

Write the contents of the testplan documentation to a XLS file.

options:
  -h, --help            show this help message and exit
  --config CONFIG [CONFIG ...]
                        JSON file describing the test plan template
  --include-plan        Include test plans, if any.
  --xls XLS             Output XLS file.

Examples:

1. Create a XLS file with a single worksheet with Xe driver documentation:

   scripts/doc_to_xls.py --config tests/kms_*json tests/*/*.json --xls igt_test_documentation.xls

2. Create a XLS file with one sheet per driver, for all drivers with testplan config files and KMS:

   scripts/doc_to_xls.py --config tests/kms_*json tests/*/*.json --xls igt_test_documentation.xls


I'll fold the enclosed diff at the patch and add your A-B.

Regards,
Mauro

---

diff --git a/scripts/doc_to_xls.py b/scripts/doc_to_xls.py
index 1f33c1828ceb..8531eeb81779 100755
--- a/scripts/doc_to_xls.py
+++ b/scripts/doc_to_xls.py
@@ -8,7 +8,19 @@
 ## Allow keeping inlined test documentation and validate   ##
 ## if the documentation is kept updated.                   ##
 
-"""Maintain test plan and test implementation documentation on IGT."""
+"""Write the contents of the testplan documentation to a XLS file."""
+
+EPILOG="""
+Examples:
+
+1. Create a XLS file with a single worksheet with Xe driver documentation:
+
+   scripts/doc_to_xls.py --config tests/kms_*json tests/*/*.json --xls igt_test_documentation.xls
+
+2. Create a XLS file with one sheet per driver, for all drivers with testplan config files and KMS:
+
+   scripts/doc_to_xls.py --config tests/kms_*json tests/*/*.json --xls igt_test_documentation.xls
+"""
 
 import argparse
 
@@ -16,9 +28,9 @@ from openpyxl import Workbook
 
 from test_list import TestList
 
-parser = argparse.ArgumentParser(description = "Print formatted kernel documentation to stdout.",
-                                 formatter_class = argparse.ArgumentDefaultsHelpFormatter,
-                                 epilog = 'If no action specified, assume --rest.')
+parser = argparse.ArgumentParser(description=__doc__,
+                                 formatter_class = argparse.RawDescriptionHelpFormatter,
+                                 epilog = EPILOG)
 parser.add_argument("--config", required = True,  nargs='+',
                     help="JSON file describing the test plan template")
 parser.add_argument("--include-plan", action="store_true",

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [igt-dev] ✗ Fi.CI.BAT: failure for Add a method to create spreadsheets (rev2)
  2023-05-22 14:21 [igt-dev] [PATCH i-g-t 0/6] Add a method to create spreadsheets Mauro Carvalho Chehab
                   ` (7 preceding siblings ...)
  2023-05-23  0:23 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
@ 2023-05-26 14:33 ` Patchwork
  8 siblings, 0 replies; 17+ messages in thread
From: Patchwork @ 2023-05-26 14:33 UTC (permalink / raw)
  To: Mauro Carvalho Chehab; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 234 bytes --]

== Series Details ==

Series: Add a method to create spreadsheets (rev2)
URL   : https://patchwork.freedesktop.org/series/118132/
State : failure

== Summary ==

Series 118132 revision 2 was fully merged or fully failed: no git log



[-- Attachment #2: Type: text/html, Size: 703 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2023-05-26 14:33 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-22 14:21 [igt-dev] [PATCH i-g-t 0/6] Add a method to create spreadsheets Mauro Carvalho Chehab
2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 1/6] scripts/test_list.py: add support to define a name at the config file Mauro Carvalho Chehab
2023-05-26 11:56   ` Kamil Konieczny
2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 2/6] kms_test_config.json: add a name for the KMS Intel testset Mauro Carvalho Chehab
2023-05-26 11:57   ` Kamil Konieczny
2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 3/6] i915_test_config.json: add a driver name Mauro Carvalho Chehab
2023-05-26 11:57   ` Kamil Konieczny
2023-05-22 14:21 ` [igt-dev] [PATCH i-g-t 4/6] xe_test_config.json: " Mauro Carvalho Chehab
2023-05-26 11:59   ` Kamil Konieczny
2023-05-22 14:22 ` [igt-dev] [PATCH i-g-t 5/6] scripts/test_list.py: add a method to return an spreadsheet-like array Mauro Carvalho Chehab
2023-05-26 12:18   ` Kamil Konieczny
2023-05-22 14:22 ` [igt-dev] [PATCH i-g-t 6/6] scripts/doc_to_xls.py: add an script to generate a doc spreadsheet Mauro Carvalho Chehab
2023-05-26 12:20   ` Kamil Konieczny
2023-05-26 13:37     ` Mauro Carvalho Chehab
2023-05-22 17:03 ` [igt-dev] ✓ Fi.CI.BAT: success for Add a method to create spreadsheets Patchwork
2023-05-23  0:23 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2023-05-26 14:33 ` [igt-dev] ✗ Fi.CI.BAT: failure for Add a method to create spreadsheets (rev2) Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox