tests CHANGE add unit test for parse_namespace yin parser function
diff --git a/src/parser_yin.c b/src/parser_yin.c
index e7e600c..c060b5b 100644
--- a/src/parser_yin.c
+++ b/src/parser_yin.c
@@ -169,15 +169,6 @@
     return LY_SUCCESS;
 }
 
-/**
- * @brief Parse namespace statement.
- *
- * @param[in] xml_ctx xml context.
- * @param[in, out] data Data to read from.
- * @param[in, out] namespace Where namespace value should be stored.
- *
- * @return LY_ERR values.
- */
 LY_ERR
 parse_namespace(struct lyxml_context *xml_ctx, const char **data, const char **namespace)
 {
@@ -186,7 +177,7 @@
     ret = yin_parse_attribute(xml_ctx, data, YIN_ARG_URI, namespace);
     LY_CHECK_RET(ret != LY_SUCCESS, ret);
 
-    return LY_SUCCESS;
+    return ret;
 }
 
 /**
diff --git a/src/parser_yin.h b/src/parser_yin.h
index 6aa08e5..01cae2b 100644
--- a/src/parser_yin.h
+++ b/src/parser_yin.h
@@ -42,5 +42,16 @@
  */
 LY_ERR parse_text_element(struct lyxml_context *xml_ctx, const char **data, const char **value);
 
+/**
+ * @brief Parse namespace statement.
+ *
+ * @param[in] xml_ctx xml context.
+ * @param[in, out] data Data to read from.
+ * @param[in, out] namespace Where namespace value should be stored.
+ *
+ * @return LY_ERR values.
+ */
+LY_ERR
+parse_namespace(struct lyxml_context *xml_ctx, const char **data, const char **namespace);
 
 #endif /* LY_PARSER_YIN_H_*/
diff --git a/tests/src/test_parser_yin.c b/tests/src/test_parser_yin.c
index 996ecb3..97d39d8 100644
--- a/tests/src/test_parser_yin.c
+++ b/tests/src/test_parser_yin.c
@@ -71,7 +71,7 @@
                         xmlns:myext=\"urn:example:extensions\">\
                         <namespace uri=\"urn:example:foo\" xmlns:myext=\"urn:example:extensions\"/>\
                         <prefix xmlns:myxt=\"urn:emple:extensions\" value=\"foo\" xmlns:myext=\"urn:example:extensions\"/>\
-                    </module>",
+                     </module>",
                 st->mod);
 
     assert_int_equal(ret, LY_SUCCESS);
@@ -223,6 +223,27 @@
     assert_int_equal(ret, LY_EVALID);
 }
 
+static void
+test_parse_namespace(void **state)
+{
+    struct state *st = *state;
+    const char *res = NULL, *prefix = NULL, *name = NULL;
+    size_t prefix_len = 0, name_len = 0;
+    LY_ERR ret = LY_SUCCESS;
+
+    const char *data = "<namespace uri=\"urn:example:foo\"/>";
+    lyxml_get_element(st->xml_ctx, &data, &prefix, &prefix_len, &name, &name_len);
+    ret = parse_namespace(st->xml_ctx, &data, &res);
+    assert_int_equal(ret, LY_SUCCESS);
+    assert_string_equal(res, "urn:example:foo");
+    lydict_remove(st->ctx, "urn:example:foo");
+
+    data = "<namespace urr=\"urn:example:foo\"/>";
+    lyxml_get_element(st->xml_ctx, &data, &prefix, &prefix_len, &name, &name_len);
+    ret = parse_namespace(st->xml_ctx, &data, &res);
+    assert_int_equal(ret, LY_EVALID);
+}
+
 int
 main(void)
 {
@@ -231,6 +252,7 @@
         cmocka_unit_test_setup_teardown(test_parse, setup_f, teardown_f),
         cmocka_unit_test_setup_teardown(test_meta, setup_f, teardown_f),
         cmocka_unit_test_setup_teardown(test_parse_text_element, setup_f, teardown_f),
+        cmocka_unit_test_setup_teardown(test_parse_namespace, setup_f, teardown_f),
         cmocka_unit_test(test_match_keyword),
         cmocka_unit_test(test_match_argument),
     };