diff --git a/tests/utests/schema/test_schema.c b/tests/utests/schema/test_schema.c
index e59fa65..629bf72 100644
--- a/tests/utests/schema/test_schema.c
+++ b/tests/utests/schema/test_schema.c
@@ -1215,7 +1215,7 @@
             "<status value=\"deprecated\"/>"
             "<description><text>desc</text></description>"
             "<reference><text>ref</text></reference>"
-            /* TODO yin-extension-prefix-compilation-bug "<myext:ext xmlns:myext=\"urn:libyang:test:identityone-yin\"/>" */
+            "<myext:ext xmlns:myext=\"urn:libyang:test:identityone-yin\"/>"
             "</identity><extension name=\"ext\"/><identity name=\"base-name\"/><feature name=\"iff\"/>", mod);
     assert_int_equal(2, LY_ARRAY_COUNT(mod->parsed->identities));
     assert_string_equal(mod->parsed->identities[0].name, "ident-name");
@@ -1224,11 +1224,7 @@
     assert_string_equal(mod->parsed->identities[0].dsc, "desc");
     assert_string_equal(mod->parsed->identities[0].ref, "ref");
     assert_true(mod->parsed->identities[0].flags & LYS_STATUS_DEPRC);
-    /*assert_string_equal(mod->parsed->identities[0].exts[0].name, "ext");
-    assert_non_null(mod->parsed->identities[0].exts[0].compiled);
-    assert_int_equal(mod->parsed->identities[0].exts[0].yin, 1);
-    assert_int_equal(mod->parsed->identities[0].exts[0].insubstmt_index, 0);
-    assert_int_equal(mod->parsed->identities[0].exts[0].insubstmt, LYEXT_SUBSTMT_SELF);*/
+    assert_string_equal(mod->parsed->identities[0].exts[0].name, "myext:ext");
 
     /* min subelems */
     TEST_SCHEMA_OK(1, 1, "identitytwo-yin", "<identity name=\"ident-name\" />", mod);
@@ -1331,7 +1327,7 @@
             "<status value=\"deprecated\"/>"
             "<description><text>desc</text></description>"
             "<reference><text>ref</text></reference>"
-            /* TODO yin-extension-prefix-compilation-bug "<myext:ext xmlns:myext=\"urn:libyang:test:featureone-yin\"/>" */
+            "<myext:ext xmlns:myext=\"urn:libyang:test:featureone-yin\"/>"
             "</feature><extension name=\"ext\"/><feature name=\"iff\"/>", mod);
     assert_int_equal(2, LY_ARRAY_COUNT(mod->parsed->features));
     assert_string_equal(mod->parsed->features[0].name, "feature-name");
@@ -1339,9 +1335,7 @@
     assert_true(mod->parsed->features[0].flags & LYS_STATUS_DEPRC);
     assert_string_equal(mod->parsed->features[0].iffeatures[0].str, "iff");
     assert_string_equal(mod->parsed->features[0].ref, "ref");
-    /*assert_string_equal(mod->parsed->features[0].exts[0].name, "ext");
-    assert_int_equal(mod->parsed->features[0].exts[0].insubstmt_index, 0);
-    assert_int_equal(mod->parsed->features[0].exts[0].insubstmt, LYEXT_SUBSTMT_SELF);*/
+    assert_string_equal(mod->parsed->features[0].exts[0].name, "myext:ext");
 
     /* min subelems */
     TEST_SCHEMA_OK(0, 1, "featuretwo-yin", "<feature name=\"feature-name\"/>", mod)
