Skip to content

Bug: Blocking Migration breaks tests #9832

@neznaika0

Description

@neznaika0

PHP Version

8.4

CodeIgniter4 Version

latest

CodeIgniter4 Installation Method

Git

Which operating systems have you tested for this bug?

Linux

Which server did you use?

cli-server (PHP built-in webserver)

Database

SQLite3

What happened?

There were 2 failures:

1) CodeIgniter\Database\Live\MetadataTest::testListTablesUnconstrainedByPrefixReturnsAllTables
Failed asserting that two arrays are identical.
--- Expected
+++ Actual
@@ @@
     1 => 'db_ip_table',
     2 => 'db_job',
     3 => 'db_migrations',
-    4 => 'db_misc',
-    5 => 'db_secondary',
-    6 => 'db_stringifypkey',
-    7 => 'db_team_members',
-    8 => 'db_type_test',
-    9 => 'db_user',
-    10 => 'db_without_auto_increment',
-    11 => 'tmp_widgets',
+    4 => 'db_migrations_lock',
+    5 => 'db_misc',
+    6 => 'db_secondary',
+    7 => 'db_stringifypkey',
+    8 => 'db_team_members',
+    9 => 'db_type_test',
+    10 => 'db_user',
+    11 => 'db_without_auto_increment',
+    12 => 'tmp_widgets',
 ]

/tests/system/Database/Live/MetadataTest.php:99

2) CodeIgniter\Database\Live\MetadataTest::testListTablesConstrainedByPrefixReturnsOnlyTablesWithMatchingPrefix
Failed asserting that two arrays are identical.
--- Expected
+++ Actual
@@ @@
     1 => 'db_ip_table',
     2 => 'db_job',
     3 => 'db_migrations',
-    4 => 'db_misc',
-    5 => 'db_secondary',
-    6 => 'db_stringifypkey',
-    7 => 'db_team_members',
-    8 => 'db_type_test',
-    9 => 'db_user',
-    10 => 'db_without_auto_increment',
+    4 => 'db_migrations_lock',
+    5 => 'db_misc',
+    6 => 'db_secondary',
+    7 => 'db_stringifypkey',
+    8 => 'db_team_members',
+    9 => 'db_type_test',
+    10 => 'db_user',
+    11 => 'db_without_auto_increment',
 ]

/tests/system/Database/Live/MetadataTest.php:115

FAILURES!
Tests: 800, Assertions: 1433, Failures: 2, Skipped: 41.

Steps to Reproduce

Run it a couple of times composer test ./tests/system/Database.

Expected Output

No errors

Anything else?

Begin after #9660
I do not know if the migration_lock table should always exist? Most likely, it should be deleted in the tests.

The error occurs after the tests (they are the last in the queue) testLockAcquisitionAndReleaseBasic() I think it's worth fixing regressDatabase() or delete migration_lock in the tests.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugVerified issues on the current code behavior or pull requests that will fix them

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions