new file mode 100644
@@ -0,0 +1 @@
+/* List of comma-separated changed AML files to ignore */
@@ -342,6 +342,22 @@ try_again:
return exp_tables;
}
+static bool test_acpi_find_diff_allowed(AcpiSdtTable *sdt)
+{
+ const gchar *allowed_diff_file[] = {
+#include "bios-tables-test-allowed-diff.h"
+ NULL
+ };
+ const gchar **f;
+
+ for (f = allowed_diff_file; *f; ++f) {
+ if (!g_strcmp0(sdt->aml_file, *f)) {
+ return true;
+ }
+ }
+ return false;
+}
+
/* test the list of tables in @data->tables against reference tables */
static void test_acpi_asl(test_data *data)
{
@@ -396,7 +412,8 @@ static void test_acpi_asl(test_data *data)
"see ASL difference.");
}
}
- }
+ }
+ g_assert(test_acpi_find_diff_allowed(exp_sdt));
}
g_string_free(asl, true);
g_string_free(exp_asl, true);
Expected table change is then handled like this: 1. add table to diff allowed list 2. change generating code (can be combined with 1) 3. maintainer runs a script to update expected + blows away allowed diff list Signed-off-by: Michael S. Tsirkin <mst@redhat.com> --- tests/bios-tables-test-allowed-diff.h | 1 + tests/bios-tables-test.c | 19 ++++++++++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 tests/bios-tables-test-allowed-diff.h