diff --git a/pkg/data/data_test.go b/pkg/data/data_test.go
index b26a525dedc803b3522bee551e11214c8103ea96..4a54ff0aa7f01d4410e0255c2471f5e6dfe07a61 100644
--- a/pkg/data/data_test.go
+++ b/pkg/data/data_test.go
@@ -76,6 +76,38 @@ func TestDelete(t *testing.T) {
 			"a.b",
 			uninitializedMap,
 		},
+		{
+			"object field from first level array with uninitialized map",
+			map[string]any{
+				"a": []any{uninitializedMap, map[string]any{"a": "1", "b": "2"}},
+			},
+			"a.b",
+			map[string]any{
+				"a": []any{uninitializedMap, map[string]any{"a": "1"}},
+			},
+		},
+		{
+			"object field from second level uninitialized map",
+			map[string]any{
+				"a": map[string]any{"a": uninitializedMap, "b": map[string]any{"a": "1", "b": "2"}},
+			},
+			"a.b.a",
+			map[string]any{
+				"a": map[string]any{"a": uninitializedMap, "b": map[string]any{"b": "2"}},
+			},
+		},
+		{
+			"object from array with uninitialized map",
+			[]any{
+				uninitializedMap,
+				map[string]any{"a": 1, "b": "2"},
+			},
+			"a",
+			[]any{
+				uninitializedMap,
+				map[string]any{"b": "2"},
+			},
+		},
 		// Решили что автоматически удалять пустые объекты/слайсы не нужно
 		//{
 		//	"empty object",
@@ -270,6 +302,26 @@ func TestSet(t *testing.T) {
 		{"Slice", args{"a.0.a", map[string]interface{}{"a": []any{map[string]any{"a": "0"}, map[string]any{"a": "0", "b": "b"}}}, "a"}, map[string]interface{}{"a": []any{map[string]any{"a": "a"}, map[string]any{"a": "0", "b": "b"}}}, assert.NoError},
 		{"Set the object for the uninitialized map", args{"a", uninitializedMap, "a"}, uninitializedMap, assert.NoError},
 		{"Set the object field for the uninitialized map", args{"a.b", uninitializedMap, "a"}, uninitializedMap, assert.NoError},
+		{
+			"object field from first level array with uninitialized map",
+			args{"a.b", map[string]any{"a": []any{uninitializedMap, map[string]any{"a": "1"}}}, "2"},
+			map[string]any{"a": []any{uninitializedMap, map[string]any{"a": "1", "b": "2"}}},
+			assert.NoError,
+		},
+		{
+			"object field from second level uninitialized map",
+			args{"a.b.a", map[string]any{"a": map[string]any{"a": uninitializedMap, "b": map[string]any{"b": "2"}}}, "1"},
+			map[string]any{
+				"a": map[string]any{"a": uninitializedMap, "b": map[string]any{"a": "1", "b": "2"}},
+			},
+			assert.NoError,
+		},
+		{
+			"object from array with uninitialized map",
+			args{"a", []any{uninitializedMap, map[string]any{"b": "2"}}, "1"},
+			[]any{uninitializedMap, map[string]any{"a": "1", "b": "2"}},
+			assert.NoError,
+		},
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {