yeg
2026-08-27 a4f06a9095a2eab0bb48b406c4609be6e70b8854
ruoyi-admin/src/test/java/com/ruoyi/config/FlywayMigrationContractTest.java
@@ -16,6 +16,7 @@
    private static final String V1_SHA256 = "37de76546e5aa0aa0ce7e976b73383a2d80ef97fd2db923d9e23dbc2b34534c9";
    private static final String V2_SHA256 = "698023958beee6245b099cf4505d35874cd06823e4dbbc3ddcb11b8f76609b89";
    private static final String V3_SHA256 = "763de1dfaa96e6f07f7ed3b3975e6f281dbc0c2e7f139da3bed6a2f1bfc39727";
    private static final String V6_SHA256 = "2f20752fcb9a318435d27ba4a0c3e0ba9443ba2f61a884f82bace457270d7db8";
    @Test
    void keepsImmutableBaselineAndAddsObservationIncrementOnly()
@@ -43,6 +44,21 @@
        assertTrue(v5.contains("system:deviceAdapter:discover"));
        assertTrue(v5.contains("system:detectionCabinet:list"));
        assertFalse(v5.matches("(?s).*\\bDELETE\\s+FROM\\b.*"));
        String v6 = resource("db/migration/V6__separate_discovery_from_registration.sql");
        assertEquals(V6_SHA256, sha256("db/migration/V6__separate_discovery_from_registration.sql"));
        assertTrue(v6.contains("registration_status"));
        assertTrue(v6.contains("DISCOVERED"));
        assertTrue(v6.contains("REGISTERED"));
        assertTrue(v6.contains("chk_cabinet_registration_status"));
        assertTrue(v6.contains("DEFAULT 'DISCOVERED'"));
        assertFalse(v6.matches("(?s).*\\bDELETE\\s+FROM\\b.*"));
        String v7 = resource("db/migration/V7__complete_device_registration_boundary.sql");
        assertTrue(v7.contains("WHEN create_by = 'system' THEN 'DISCOVERED'"));
        assertTrue(v7.contains("ELSE 'REGISTERED'"));
        assertTrue(v7.contains("uk_cabinet_mac_del"));
        assertFalse(v7.matches("(?s).*\\bDELETE\\s+FROM\\b.*"));
    }
    private static String sha256(String path)