diff --git a/test/unit.cpp b/test/unit.cpp
index 7db7d9d2..19b3397d 100644
--- a/test/unit.cpp
+++ b/test/unit.cpp
@@ -7695,7 +7695,7 @@ TEST_CASE("parser class")
         )";
 
         auto s_array = R"(
-            [1,2,3,4,[5]]
+            [1,2,[3],4,5]
         )";
 
         SECTION("filter nothing")
@@ -7712,7 +7712,7 @@ TEST_CASE("parser class")
                 return true;
             });
 
-            CHECK (j_array == json({1, 2, 3, 4, {5}}));
+            CHECK (j_array == json({1, 2, {3}, 4, 5}));
         }
 
         SECTION("filter everything")
@@ -7761,7 +7761,7 @@ TEST_CASE("parser class")
                 }
             });
 
-            CHECK (j_array == json({1, 3, 4, {5}}));
+            CHECK (j_array == json({1, {3}, 4, 5}));
         }
 
         SECTION("filter specific events")
@@ -7801,19 +7801,18 @@ TEST_CASE("parser class")
 
             SECTION("second closing event")
             {
-                int i = 0;
-                json j_object = json::parse(s_object, [&i](int, json::parse_event_t e, const json&)
+                bool second = false;
+                json j_object = json::parse(s_object, [&second](int, json::parse_event_t e, const json&)
                 {
-                    // filter all number(2) elements
                     if (e == json::parse_event_t::object_end)
                     {
-                        if (i > 0)
+                        if (second)
                         {
                             return false;
                         }
                         else
                         {
-                            ++i;
+                            second = true;
                             return true;
                         }
                     }
@@ -7824,20 +7823,20 @@ TEST_CASE("parser class")
                 });
 
                 CHECK (j_object.is_discarded());
+                CHECK(second);
 
-                i = 0;
-                json j_array = json::parse(s_array, [&i](int, json::parse_event_t e, const json&)
+                second = false;
+                json j_array = json::parse(s_array, [&second](int, json::parse_event_t e, const json&)
                 {
-                    // filter all number(2) elements
                     if (e == json::parse_event_t::array_end)
                     {
-                        if (i > 0)
+                        if (second)
                         {
                             return false;
                         }
                         else
                         {
-                            ++i;
+                            second = true;
                             return true;
                         }
                     }
@@ -7848,6 +7847,7 @@ TEST_CASE("parser class")
                 });
 
                 CHECK (j_array.is_discarded());
+                CHECK(second);
             }
         }
     }