utest MAINTAINCE extend test for list
diff --git a/tests/utests/utests.h b/tests/utests/utests.h
index 852ce08..d43506d 100644
--- a/tests/utests/utests.h
+++ b/tests/utests/utests.h
@@ -716,7 +716,40 @@
  * @param[in] PARENT  0-> check if node is root, 1-> check if node is not root
  * @param[in] PRIV    0-> pointer is null, 1-> pointer is not null
  * @param[in] REF     expected reference
- * @param[in] WHEN    expected [sized array](@ref sizedarrays) size of list of pointers to when statements * @param[in] WHEN      0-> pointer is null, 1 -> pointer is not null
+ * @param[in] ACTIONS 1 if is set pointer to structure lysc_node_action other 0
+ * @param[in] CHILD   1 if is set pointer to child other 0
+ * @param[in] MAX     possible maximum elements in list
+ * @param[in] MIN     possible minimum elements in list
+ * @param[in] MUSTS   [sized array](@ref sizedarrays) number of must node elements in array
+ * @param[in] NOTIFS  1 if is set pointer to any notifs node
+ * @param[in] UNIQUES [sized array](@ref sizedarrays) number of unique nodes element in array
+ * @param[in] WHEN    [sized array](@ref sizedarrays) size of when node array
+ */
+#define CHECK_LYSC_NODE_LIST(NODE, DSC, EXTS, FLAGS, MODULE, NAME, NEXT, \
+            PARENT, PRIV, REF, ACTIONS, CHILD, MAX, MIN, MUSTS, NOTIFS, UNIQUES, WHEN) \
+        CHECK_LYSC_NODE(NODE, DSC, EXTS, FLAGS, MODULE, NAME, NEXT, LYS_LIST, PARENT, PRIV, REF, WHEN); \
+        CHECK_POINTER((NODE)->actions, ACTIONS); \
+        CHECK_POINTER((NODE)->child, CHILD); \
+        assert_int_equal((NODE)->max, MAX); \
+        assert_int_equal((NODE)->min, MIN); \
+        CHECK_ARRAY((NODE)->musts, MUSTS); \
+        CHECK_POINTER((NODE)->notifs, NOTIFS); \
+        CHECK_ARRAY((NODE)->uniques, UNIQUES); \
+        CHECK_ARRAY(lysc_node_when((const struct lysc_node *)NODE), WHEN)
+
+/**
+ * @brief assert that lysc_node_leaf structure members are correct
+ * @param[in] NODE    pointer to lysc_node variable
+ * @param[in] DSC     expected description
+ * @param[in] EXTS    expected [sized array](@ref sizedarrays) size of list of the extension instances
+ * @param[in] FLAGS   [schema node flags](@ref snodeflags)
+ * @param[in] MODULE  0 pointer is null, 1 pointer is not null
+ * @param[in] NAME    expected name
+ * @param[in] NEXT    0 pointer is null, 1 pointer is not null
+ * @param[in] PARENT  0-> check if node is root, 1-> check if node is not root
+ * @param[in] PRIV    0-> pointer is null, 1-> pointer is not null
+ * @param[in] REF     expected reference
+ * @param[in] WHEN    expected [sized array](@ref sizedarrays) size of list of pointers to when statements
  * @param[in] MUSTS     expected [sized array](@ref sizedarrays) size of list of must restriction
  * @param[in] UNITS     expected string reprezenting units
  * @param[in] DFLT      0-> node dosn't have default value. 1 -> node have default value
@@ -809,6 +842,30 @@
     assert_string_equal((NODE)->value, VALUE);
 
 /**
+ * @brief assert that lyd_node_opaq structure members are correct
+ * @param[in] NODE     pointer to lyd_node_opaq variable
+ * @param[in] CHILD    1 if node has children other 0
+ * @param[in] HILD_HT  1 if node has children hash table other 0
+ * @param[in] META     1 if node has metadata other 0
+ * @param[in] FLAGS    expected flag
+ * @param[in] NEXT     1 if next node is present other 0
+ * @param[in] PARENT   1 if node has parent other 0
+ * @param[in] PRIV     1 if node has private data other 0
+ * @param[in] SCHEMA   1 if node has schema other 0
+*/
+#define CHECK_LYD_NODE_INNER(NODE, CHILD, CHILD_HT, META, FLAGS, NEXT, PARENT, PRIV, SCHEMA) \
+    assert_non_null(NODE); \
+    CHECK_POINTER((NODE)->child, CHILD); \
+    CHECK_POINTER((NODE)->children_ht, CHILD_HT); \
+    CHECK_POINTER((NODE)->meta, META); \
+    assert_int_equal((NODE)->flags, FLAGS); \
+    CHECK_POINTER((NODE)->parent, PARENT); \
+    assert_non_null((NODE)->prev); \
+    CHECK_POINTER((NODE)->next, NEXT); \
+    CHECK_POINTER((NODE)->priv, PRIV); \
+    CHECK_POINTER((NODE)->schema, SCHEMA)
+
+/**
  * @brief assert that lyd_value structure members are correct
  * @param[in] NODE     lyd_value
  * @param[in] TYPE_VAL value type. EMPTY, UNION, BITS, INST, ENUM, INT8, INT16, UINT8, STRING, LEAFREF, DEC64, BINARY, BOOL, IDENT
@@ -954,6 +1011,20 @@
     assert_int_equal(VALUE, (NODE).uint8);
 
 /**
+ * @brief Internal macro. Assert that lyd_value structure members are correct. Lyd value is type UINT32.
+ *        Example CHECK_LYD_VALUE(node->value, UINT32, "12", 12);
+ * @param[in] NODE           lyd_value variable
+ * @param[in] CANNONICAL_VAL expected cannonical value
+ * @param[in] VALUE          expected inteager (0 to MAX_UINT32).
+ */
+#define CHECK_LYD_VALUE_UINT32(NODE, CANNONICAL_VAL, VALUE) \
+    assert_non_null((NODE).canonical); \
+    assert_string_equal((NODE).canonical, CANNONICAL_VAL); \
+    assert_non_null((NODE).realtype); \
+    assert_int_equal(LY_TYPE_UINT32, (NODE).realtype->basetype); \
+    assert_int_equal(VALUE, (NODE).uint32);
+
+/**
  * @brief Internal macro. Assert that lyd_value structure members are correct. Lyd value is type STRING.
  *        Example CHECK_LYD_VALUE(node->value, STRING, "text");
  * @param[in] NODE           lyd_value variable