ui_close(obj);
}
}
+
+static void note_created(UiEvent *event, int error, void *userdata) {
+ int *ret = userdata;
+ *ret = error;
+}
+
+CX_TEST(test_note_store_new_note_async) {
+ CX_TEST_DO {
+ UiObject *obj = ui_dummy_object();
+ NoteStore *store = note_store_get();
+ const CxAllocator *a = store->mp->allocator;
+
+ CX_TEST_ASSERT(store && store->root && store->root->children);
+ CX_TEST_ASSERT(cxListSize(store->root->children) > 0);
+
+ Resource *parent = cxListAt(store->root->children, 0);
+ CX_TEST_ASSERT(parent);
+
+ Note *note = cxZalloc(a, sizeof(Note));
+ Resource *res = cxZalloc(a, sizeof(Resource));
+ res->nodename = cx_strdup_a(a, "note1").ptr;
+ res->content = cx_strdup_a(a, "Hello World");
+ res->parent_id = parent->resource_id;
+ note->resource = res;
+
+ int error = -1;
+ note_store_new_note_async(obj, note, note_created, &error);
+ ui_exec_buffered_mainthread_calls_wait(3);
+
+ CX_TEST_ASSERT(error == 0);
+ CX_TEST_ASSERT(note->resource_id > 0);
+ CX_TEST_ASSERT(note->resource->resource_id > 0);
+ CX_TEST_ASSERT(note->resource_id == note->resource->resource_id);
+ CX_TEST_ASSERT(note->note_id > 0);
+
+ // cleanup
+ ui_close(obj);
+ }
+}
cx_test_register(suite, test_note_store_delete_empty_collection_async);
cx_test_register(suite, test_note_store_delete_collection_async);
cx_test_register(suite, test_note_store_save_repository_async);
+ cx_test_register(suite, test_note_store_new_note_async);
cx_test_register(suite, test_parse_markdown_para);
cx_test_register(suite, test_parse_markdown_formatting_simple);