]> uap-core.de Git - note.git/commitdiff
add more markdow editor tests main
authorOlaf Wintermann <olaf.wintermann@gmail.com>
Mon, 9 Mar 2026 20:17:06 +0000 (21:17 +0100)
committerOlaf Wintermann <olaf.wintermann@gmail.com>
Mon, 9 Mar 2026 20:17:06 +0000 (21:17 +0100)
application/tests/test-editor.c
application/tests/test-editor.h
application/tests/testmain.c

index dda0752f31c360e460f1cb4153873825067eccb7..d5b5043ab9a6300510c5a9ca9729049bf53c85a0 100644 (file)
@@ -443,28 +443,42 @@ static int md_equal(cxmutstr md0, cxmutstr md1) {
     return para1 == NULL;
 }
 
+CX_TEST_SUBROUTINE(test_editor_markdown_load_get, cxmutstr md0) {
+    UiObject *obj = ui_simple_window("test");
+    CxAllocator *a = ui_allocator(obj->ctx);
+
+    Note note;
+    memset(&note, 0, sizeof(Note));
+    note.model = notemodel_create(a);
+
+    UiText *text = note.model->text;
+    UIWIDGET textview = ui_textarea(obj, .value = text);
+
+    editor_init_textview(obj, ui_textarea_gettextwidget(textview));
+    editor_init_textbuf(text);
+
+    editor_load_markdown(&note, textview, md0);
+    cxmutstr mdtext = editor_get_markdown(text, a);
+    CX_TEST_ASSERT(md_equal(md0, mdtext));
+
+    // TODO: cleanup
+    ui_close(obj);
+}
+
 CX_TEST(test_editor_load_markdown_para1) {
     CX_TEST_DO {
-        UiObject *obj = ui_simple_window("test");
-        CxAllocator *a = ui_allocator(obj->ctx);
-        
-        Note note;
-        memset(&note, 0, sizeof(Note));
-        note.model = notemodel_create(a);
-        
-        UiText *text = note.model->text;
-        UIWIDGET textview = ui_textarea(obj, .value = text);
-        
-        editor_init_textview(obj, ui_textarea_gettextwidget(textview));
-        editor_init_textbuf(text);
-        
-        cxmutstr md0 = cx_mutstr("Hello World\n\nParagraph 2");
-        
-        editor_load_markdown(&note, textview, md0);
-        cxmutstr mdtext = editor_get_markdown(text, a);
-        CX_TEST_ASSERT(md_equal(md0, mdtext));
-        
-        // TODO: cleanup
-        ui_close(obj);
+        CX_TEST_CALL_SUBROUTINE(test_editor_markdown_load_get, cx_mutstr("Hello World\n\nParagraph 2"));
+    }
+}
+
+CX_TEST(test_editor_load_markdown_heading_para) {
+    CX_TEST_DO {
+        CX_TEST_CALL_SUBROUTINE(test_editor_markdown_load_get, cx_mutstr("# Heading 1\n\nParagraph text\n\n## Heading 2\n\nText Paragraph 2\n"));
+    }
+}
+
+CX_TEST(test_editor_load_markdown_list1) {
+    CX_TEST_DO {
+        CX_TEST_CALL_SUBROUTINE(test_editor_markdown_load_get, cx_mutstr("Bullet list\n\n - Element 1\n - Element 2\n -n Element 3\n\nEnd."));
     }
 }
index 641af2c6123e926d53ec8e9267392c4afdfcb582..2096ebafdde64c3889dfa1a16c76794dd076b677 100644 (file)
@@ -43,6 +43,8 @@ CX_TEST(test_mddoc_linearization);
 
 CX_TEST(test_editor_load_markdown_simple);
 CX_TEST(test_editor_load_markdown_para1);
+CX_TEST(test_editor_load_markdown_heading_para);
+CX_TEST(test_editor_load_markdown_list1);
 
 #ifdef __cplusplus
 }
index 3e650c7af447bdc8c3549a16a15b3de5afdf020c..b2b39e207bf8222b46fe2f89a4c2922766a04214 100644 (file)
@@ -84,6 +84,8 @@ int main(int argc, char **argv) {
     
     cx_test_register(suite, test_editor_load_markdown_simple);
     cx_test_register(suite, test_editor_load_markdown_para1);
+    cx_test_register(suite, test_editor_load_markdown_heading_para);
+    cx_test_register(suite, test_editor_load_markdown_list1);
     
     cx_test_register(suite, test_text_search_strcasestr);
     cx_test_register(suite, test_text_search_cs);