From 7e1bf2e3c9f0149f135ab8ac15390a6e5e5ce1fc Mon Sep 17 00:00:00 2001
From: Daniel <d.hornung@indiscale.com>
Date: Wed, 2 Oct 2024 14:54:24 +0200
Subject: [PATCH] MAINT: Updated tests for newer MariaDB version.

---
 Makefile               |  11 ++-
 tests/test_autotap.sql | 156 ++++++++++++++++++++---------------------
 2 files changed, 83 insertions(+), 84 deletions(-)

diff --git a/Makefile b/Makefile
index 7527a25..0204e01 100644
--- a/Makefile
+++ b/Makefile
@@ -59,23 +59,22 @@ test:
 test-dump-update:
 	pytest dump_updates
 
-# Run tests with a database which is started in a Docker container
+# Run tests with a database which is started in a MariaDB Docker container
 .PHONY: test-docker
 test-docker:
 	@docker kill caosdb-mysqlserver-test || true
-	@docker container rm caosdb-mysqlserver-test || true
+	@docker container rm -v caosdb-mysqlserver-test || true
 	@docker run --name caosdb-mysqlserver-test -p "3306:3306" \
-		-e MYSQL_ROOT_PASSWORD="pass-for-test" -d mariadb
+		-e MYSQL_ROOT_PASSWORD="pass-for-test" -d mariadb:10.11
 	@sleep 10
 	MAINPATH=$(realpath tests/docker_env) utils/make_db test --fresh
-	@docker kill caosdb-mysqlserver-test
-	@docker container rm caosdb-mysqlserver-test
+	make test-docker-stop
 
 # if automatic stopping failed
 .PHONY: test-docker-stop
 test-docker-stop:
 	docker kill caosdb-mysqlserver-test
-	docker container rm caosdb-mysqlserver-test
+	docker container rm -v caosdb-mysqlserver-test
 
 # Compile the standalone documentation
 .PHONY: doc
diff --git a/tests/test_autotap.sql b/tests/test_autotap.sql
index 6109dbe..168758c 100644
--- a/tests/test_autotap.sql
+++ b/tests/test_autotap.sql
@@ -38,7 +38,7 @@ SELECT tap.has_schema('_caosdb_schema_unit_tests','');
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','archive_isa','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','archive_isa','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','archive_isa','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','archive_isa','InnoDB','');
 
 -- COLUMNS
@@ -116,7 +116,7 @@ SELECT tap.fk_on_update('_caosdb_schema_unit_tests','archive_isa','archive_isa_i
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','collection_type','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','collection_type','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','collection_type','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','collection_type','InnoDB','');
 
 -- COLUMNS
@@ -155,8 +155,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','collection_type','collection'
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','collection_type','collection','varchar(255)','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','collection_type','collection','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','collection_type','collection',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','collection_type','collection','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','collection_type','collection','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','collection_type','collection','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','collection_type','collection','utf8mb3_unicode_ci','');
 
 -- INDEXES
 SELECT tap.indexes_are('_caosdb_schema_unit_tests','collection_type','`domain_id`,`entity_id`,`property_id`','');
@@ -208,7 +208,7 @@ SELECT tap.fk_on_update('_caosdb_schema_unit_tests','collection_type','collectio
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','data_type','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','data_type','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','data_type','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','data_type','InnoDB','');
 
 -- COLUMNS
@@ -300,7 +300,7 @@ SELECT tap.constraint_type_is('_caosdb_schema_unit_tests','data_type','datatype_
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','date_data','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','date_data','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','date_data','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','date_data','InnoDB','');
 
 -- COLUMNS
@@ -348,8 +348,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','date_data','status','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','date_data','status','enum(\'OBLIGATORY\',\'RECOMMENDED\',\'SUGGESTED\',\'FIX\')','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','date_data','status','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','date_data','status','NULL','');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','date_data','status','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','date_data','status','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','date_data','status','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','date_data','status','utf8mb3_unicode_ci','');
 
 -- COLUMN date_data.pidx
 
@@ -398,7 +398,7 @@ SELECT tap.fk_on_update('_caosdb_schema_unit_tests','date_data','date_ov_forkey_
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','datetime_data','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','datetime_data','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','datetime_data','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','datetime_data','InnoDB','');
 
 -- COLUMNS
@@ -437,8 +437,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','datetime_data','status','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','datetime_data','status','enum(\'OBLIGATORY\',\'RECOMMENDED\',\'SUGGESTED\',\'FIX\',\'REPLACEMENT\')','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','datetime_data','status','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','datetime_data','status',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','datetime_data','status','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','datetime_data','status','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','datetime_data','status','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','datetime_data','status','utf8mb3_unicode_ci','');
 
 -- COLUMN datetime_data.pidx
 
@@ -505,7 +505,7 @@ SELECT tap.fk_on_update('_caosdb_schema_unit_tests','datetime_data','dat_propert
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','desc_overrides','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','desc_overrides','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','desc_overrides','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','desc_overrides','InnoDB','');
 
 -- COLUMNS
@@ -544,8 +544,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','desc_overrides','description'
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','desc_overrides','description','text','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','desc_overrides','description','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','desc_overrides','description','NULL','');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','desc_overrides','description','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','desc_overrides','description','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','desc_overrides','description','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','desc_overrides','description','utf8mb3_unicode_ci','');
 
 -- INDEXES
 SELECT tap.indexes_are('_caosdb_schema_unit_tests','desc_overrides','`desc_ov_dom_ent_idx`','');
@@ -590,7 +590,7 @@ SELECT tap.constraint_type_is('_caosdb_schema_unit_tests','desc_overrides','desc
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','double_data','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','double_data','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','double_data','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','double_data','InnoDB','');
 
 -- COLUMNS
@@ -638,8 +638,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','double_data','status','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','double_data','status','enum(\'OBLIGATORY\',\'RECOMMENDED\',\'SUGGESTED\',\'FIX\',\'REPLACEMENT\')','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','double_data','status','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','double_data','status',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','double_data','status','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','double_data','status','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','double_data','status','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','double_data','status','utf8mb3_unicode_ci','');
 
 -- COLUMN double_data.pidx
 
@@ -697,7 +697,7 @@ SELECT tap.fk_on_update('_caosdb_schema_unit_tests','double_data','dou_property_
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','entities','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','entities','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','entities','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','entities','InnoDB','');
 
 -- COLUMNS
@@ -718,8 +718,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','entities','description','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','entities','description','text','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','entities','description','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','entities','description','NULL','');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','entities','description','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','entities','description','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','entities','description','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','entities','description','utf8mb3_unicode_ci','');
 
 -- COLUMN entities.role
 
@@ -727,8 +727,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','entities','role','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','entities','role','enum(\'RECORDTYPE\',\'RECORD\',\'FILE\',\'_REPLACEMENT\',\'PROPERTY\',\'DATATYPE\',\'ROLE\',\'QUERYTEMPLATE\')','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','entities','role','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','entities','role',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','entities','role','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','entities','role','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','entities','role','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','entities','role','utf8mb3_unicode_ci','');
 
 -- COLUMN entities.acl
 
@@ -760,7 +760,7 @@ SELECT tap.col_is_pk('_caosdb_schema_unit_tests','entities','`id`','');
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','entity_acl','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','entity_acl','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','entity_acl','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','entity_acl','InnoDB','');
 
 -- COLUMNS
@@ -807,7 +807,7 @@ SELECT tap.col_is_pk('_caosdb_schema_unit_tests','entity_acl','`id`','');
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','enum_data','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','enum_data','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','enum_data','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','enum_data','InnoDB','');
 
 -- COLUMNS
@@ -855,8 +855,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','enum_data','status','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','enum_data','status','enum(\'OBLIGATORY\',\'RECOMMENDED\',\'SUGGESTED\',\'FIX\')','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','enum_data','status','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','enum_data','status','NULL','');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','enum_data','status','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','enum_data','status','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','enum_data','status','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','enum_data','status','utf8mb3_unicode_ci','');
 
 -- COLUMN enum_data.pidx
 
@@ -905,7 +905,7 @@ SELECT tap.fk_on_update('_caosdb_schema_unit_tests','enum_data','enum_ov_forkey_
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','files','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','files','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','files','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','files','InnoDB','');
 
 -- COLUMNS
@@ -926,8 +926,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','files','path','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','files','path','varchar(255)','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','files','path','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','files','path',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','files','path','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','files','path','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','files','path','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','files','path','utf8mb3_unicode_ci','');
 
 -- COLUMN files.size
 
@@ -977,7 +977,7 @@ SELECT tap.col_is_pk('_caosdb_schema_unit_tests','files','`file_id`','');
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','integer_data','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','integer_data','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','integer_data','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','integer_data','InnoDB','');
 
 -- COLUMNS
@@ -1025,8 +1025,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','integer_data','status','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','integer_data','status','enum(\'OBLIGATORY\',\'RECOMMENDED\',\'SUGGESTED\',\'FIX\',\'REPLACEMENT\')','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','integer_data','status','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','integer_data','status',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','integer_data','status','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','integer_data','status','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','integer_data','status','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','integer_data','status','utf8mb3_unicode_ci','');
 
 -- COLUMN integer_data.pidx
 
@@ -1084,7 +1084,7 @@ SELECT tap.fk_on_update('_caosdb_schema_unit_tests','integer_data','int_property
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','isa_cache','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','isa_cache','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','isa_cache','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','isa_cache','InnoDB','');
 
 -- COLUMNS
@@ -1114,8 +1114,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','isa_cache','rpath','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','isa_cache','rpath','varchar(255)','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','isa_cache','rpath','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','isa_cache','rpath',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','isa_cache','rpath','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','isa_cache','rpath','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','isa_cache','rpath','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','isa_cache','rpath','utf8mb3_unicode_ci','');
 
 -- CONSTRAINTS
 SELECT tap.constraints_are('_caosdb_schema_unit_tests','isa_cache','`PRIMARY`,`isa_cache_child_entity`,`isa_cache_parent_entity`','');
@@ -1145,7 +1145,7 @@ SELECT tap.col_is_pk('_caosdb_schema_unit_tests','isa_cache','`child`,`parent`,`
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','name_data','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','name_data','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','name_data','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','name_data','InnoDB','');
 
 -- COLUMNS
@@ -1184,8 +1184,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','name_data','value','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','name_data','value','varchar(255)','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','name_data','value','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','name_data','value',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','name_data','value','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','name_data','value','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','name_data','value','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','name_data','value','utf8mb3_unicode_ci','');
 
 -- COLUMN name_data.status
 
@@ -1193,8 +1193,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','name_data','status','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','name_data','status','enum(\'OBLIGATORY\',\'RECOMMENDED\',\'SUGGESTED\',\'FIX\',\'REPLACEMENT\')','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','name_data','status','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','name_data','status',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','name_data','status','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','name_data','status','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','name_data','status','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','name_data','status','utf8mb3_unicode_ci','');
 
 -- COLUMN name_data.pidx
 
@@ -1266,7 +1266,7 @@ SELECT tap.fk_on_update('_caosdb_schema_unit_tests','name_data','name_data_prope
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','name_overrides','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','name_overrides','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','name_overrides','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','name_overrides','InnoDB','');
 
 -- COLUMNS
@@ -1305,8 +1305,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','name_overrides','name','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','name_overrides','name','varchar(255)','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','name_overrides','name','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','name_overrides','name','NULL','');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','name_overrides','name','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','name_overrides','name','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','name_overrides','name','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','name_overrides','name','utf8mb3_unicode_ci','');
 
 -- INDEXES
 SELECT tap.indexes_are('_caosdb_schema_unit_tests','name_overrides','`name_ov_dom_ent_idx`','');
@@ -1351,7 +1351,7 @@ SELECT tap.constraint_type_is('_caosdb_schema_unit_tests','name_overrides','name
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','null_data','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','null_data','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','null_data','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','null_data','InnoDB','');
 
 -- COLUMNS
@@ -1390,8 +1390,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','null_data','status','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','null_data','status','enum(\'OBLIGATORY\',\'RECOMMENDED\',\'SUGGESTED\',\'FIX\')','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','null_data','status','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','null_data','status','NULL','');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','null_data','status','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','null_data','status','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','null_data','status','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','null_data','status','utf8mb3_unicode_ci','');
 
 -- COLUMN null_data.pidx
 
@@ -1440,7 +1440,7 @@ SELECT tap.fk_on_update('_caosdb_schema_unit_tests','null_data','null_forkey_pro
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','passwd','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','passwd','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','passwd','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','passwd','InnoDB','');
 
 -- COLUMNS
@@ -1470,8 +1470,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','passwd','alg','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','passwd','alg','varchar(255)','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','passwd','alg','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','passwd','alg','\'SHA-512\'','');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','passwd','alg','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','passwd','alg','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','passwd','alg','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','passwd','alg','utf8mb3_unicode_ci','');
 
 -- COLUMN passwd.it
 
@@ -1505,7 +1505,7 @@ SELECT tap.col_is_pk('_caosdb_schema_unit_tests','passwd','`principal`','');
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','permissions','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','permissions','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','permissions','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','permissions','InnoDB','');
 
 -- COLUMNS
@@ -1526,8 +1526,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','permissions','permissions',''
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','permissions','permissions','mediumtext','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','permissions','permissions','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','permissions','permissions',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','permissions','permissions','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','permissions','permissions','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','permissions','permissions','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','permissions','permissions','utf8mb3_unicode_ci','');
 
 -- CONSTRAINTS
 SELECT tap.constraints_are('_caosdb_schema_unit_tests','permissions','`PRIMARY`,`perm_name_roles`','');
@@ -1550,7 +1550,7 @@ SELECT tap.col_is_pk('_caosdb_schema_unit_tests','permissions','`role`','');
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','query_template_def','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','query_template_def','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','query_template_def','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','query_template_def','InnoDB','');
 
 -- COLUMNS
@@ -1571,8 +1571,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','query_template_def','definiti
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','query_template_def','definition','mediumtext','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','query_template_def','definition','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','query_template_def','definition',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','query_template_def','definition','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','query_template_def','definition','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','query_template_def','definition','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','query_template_def','definition','utf8mb3_unicode_ci','');
 
 -- CONSTRAINTS
 SELECT tap.constraints_are('_caosdb_schema_unit_tests','query_template_def','`PRIMARY`,`query_template_def_ibfk_1`','');
@@ -1595,7 +1595,7 @@ SELECT tap.fk_on_update('_caosdb_schema_unit_tests','query_template_def','query_
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','reference_data','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','reference_data','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','reference_data','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','reference_data','InnoDB','');
 
 -- COLUMNS
@@ -1643,8 +1643,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','reference_data','status','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','reference_data','status','enum(\'OBLIGATORY\',\'RECOMMENDED\',\'SUGGESTED\',\'FIX\',\'REPLACEMENT\')','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','reference_data','status','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','reference_data','status',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','reference_data','status','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','reference_data','status','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','reference_data','status','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','reference_data','status','utf8mb3_unicode_ci','');
 
 -- COLUMN reference_data.pidx
 
@@ -1722,7 +1722,7 @@ SELECT tap.fk_on_update('_caosdb_schema_unit_tests','reference_data','reference_
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','roles','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','roles','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','roles','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','roles','InnoDB','');
 
 -- COLUMNS
@@ -1743,8 +1743,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','roles','description','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','roles','description','mediumtext','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','roles','description','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','roles','description','NULL','');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','roles','description','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','roles','description','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','roles','description','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','roles','description','utf8mb3_unicode_ci','');
 
 -- CONSTRAINTS
 SELECT tap.constraints_are('_caosdb_schema_unit_tests','roles','`PRIMARY`','');
@@ -1760,7 +1760,7 @@ SELECT tap.col_is_pk('_caosdb_schema_unit_tests','roles','`name`','');
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','stats','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','stats','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','stats','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','stats','InnoDB','');
 
 -- COLUMNS
@@ -1772,8 +1772,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','stats','name','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','stats','name','varchar(255)','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','stats','name','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','stats','name',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','stats','name','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','stats','name','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','stats','name','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','stats','name','utf8mb3_unicode_ci','');
 
 -- COLUMN stats.value
 
@@ -1798,7 +1798,7 @@ SELECT tap.col_is_pk('_caosdb_schema_unit_tests','stats','`name`','');
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','text_data','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','text_data','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','text_data','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','text_data','InnoDB','');
 
 -- COLUMNS
@@ -1837,8 +1837,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','text_data','value','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','text_data','value','text','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','text_data','value','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','text_data','value',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','text_data','value','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','text_data','value','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','text_data','value','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','text_data','value','utf8mb3_unicode_ci','');
 
 -- COLUMN text_data.status
 
@@ -1846,8 +1846,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','text_data','status','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','text_data','status','enum(\'OBLIGATORY\',\'RECOMMENDED\',\'SUGGESTED\',\'FIX\',\'REPLACEMENT\')','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','text_data','status','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','text_data','status',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','text_data','status','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','text_data','status','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','text_data','status','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','text_data','status','utf8mb3_unicode_ci','');
 
 -- COLUMN text_data.pidx
 
@@ -1896,7 +1896,7 @@ SELECT tap.fk_on_update('_caosdb_schema_unit_tests','text_data','str_property_id
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','transaction_log','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','transaction_log','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','transaction_log','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','transaction_log','InnoDB','');
 
 -- COLUMNS
@@ -1908,8 +1908,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','transaction_log','transaction
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','transaction_log','transaction','varchar(255)','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','transaction_log','transaction','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','transaction_log','transaction',NULL,'');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','transaction_log','transaction','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','transaction_log','transaction','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','transaction_log','transaction','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','transaction_log','transaction','utf8mb3_unicode_ci','');
 
 -- COLUMN transaction_log.entity_id
 
@@ -1970,7 +1970,7 @@ SELECT tap.is_indexed('_caosdb_schema_unit_tests','transaction_log','`entity_id`
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','units_lin_con','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','units_lin_con','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','units_lin_con','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','units_lin_con','InnoDB','');
 
 -- COLUMNS
@@ -2044,7 +2044,7 @@ SELECT tap.col_is_pk('_caosdb_schema_unit_tests','units_lin_con','`signature_fro
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','user_info','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','user_info','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','user_info','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','user_info','InnoDB','');
 
 -- COLUMNS
@@ -2083,8 +2083,8 @@ SELECT tap.has_column('_caosdb_schema_unit_tests','user_info','status','');
 SELECT tap.col_column_type_is('_caosdb_schema_unit_tests','user_info','status','enum(\'ACTIVE\',\'INACTIVE\')','');
 SELECT tap.col_extra_is('_caosdb_schema_unit_tests','user_info','status','','');
 SELECT tap.col_default_is('_caosdb_schema_unit_tests','user_info','status','\'INACTIVE\'','');
-SELECT tap.col_charset_is('_caosdb_schema_unit_tests','user_info','status','utf8','');
-SELECT tap.col_collation_is('_caosdb_schema_unit_tests','user_info','status','utf8_unicode_ci','');
+SELECT tap.col_charset_is('_caosdb_schema_unit_tests','user_info','status','utf8mb3','');
+SELECT tap.col_collation_is('_caosdb_schema_unit_tests','user_info','status','utf8mb3_unicode_ci','');
 
 -- COLUMN user_info.entity
 
@@ -2125,7 +2125,7 @@ SELECT tap.fk_on_update('_caosdb_schema_unit_tests','user_info','subjects_ibfk_2
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','user_roles','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','user_roles','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','user_roles','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','user_roles','InnoDB','');
 
 -- COLUMNS
@@ -2179,7 +2179,7 @@ SELECT tap.fk_on_update('_caosdb_schema_unit_tests','user_roles','user_roles_ibf
 -- ***************************************************************
 
 SELECT tap.has_table('_caosdb_schema_unit_tests','entity_version','');
-SELECT tap.table_collation_is('_caosdb_schema_unit_tests','entity_version','utf8_unicode_ci','');
+SELECT tap.table_collation_is('_caosdb_schema_unit_tests','entity_version','utf8mb3_unicode_ci','');
 SELECT tap.table_engine_is('_caosdb_schema_unit_tests','entity_version','InnoDB','');
 
 -- COLUMNS
-- 
GitLab