test/webdav_resource.c

Wed, 28 Jan 2026 19:58:08 +0100

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Wed, 28 Jan 2026 19:58:08 +0100
branch
dav-2
changeset 905
bc4238f9abdb
parent 904
7109de6bfad5
permissions
-rw-r--r--

add additional test suite for webdav tests with enabled encryption

902
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
1 /*
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
2 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
3 *
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
4 * Copyright 2026 Olaf Wintermann. All rights reserved.
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
5 *
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
6 * Redistribution and use in source and binary forms, with or without
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
7 * modification, are permitted provided that the following conditions are met:
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
8 *
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
9 * 1. Redistributions of source code must retain the above copyright
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
10 * notice, this list of conditions and the following disclaimer.
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
11 *
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
12 * 2. Redistributions in binary form must reproduce the above copyright
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
13 * notice, this list of conditions and the following disclaimer in the
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
14 * documentation and/or other materials provided with the distribution.
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
15 *
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
17 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
19 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
20 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
26 * POSSIBILITY OF SUCH DAMAGE.
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
27 */
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
28
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
29 #include "webdav.h"
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
30 #include "webdav_resource.h"
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
31
904
7109de6bfad5 add test_dav_store_stream_webdav
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 903
diff changeset
32 #include <cx/buffer.h>
7109de6bfad5 add test_dav_store_stream_webdav
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 903
diff changeset
33
903
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
34 CX_TEST_SUBROUTINE(test_default_properties, DavResource *res) {
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
35 CX_TEST_ASSERT(res->contentlength > 0);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
36 CX_TEST_ASSERT(res->creationdate > 0);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
37 CX_TEST_ASSERT(res->lastmodified > 0);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
38 CX_TEST_ASSERT(res->exists);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
39 CX_TEST_ASSERT(res->contenttype);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
40 CX_TEST_ASSERT(!res->iscollection);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
41 CX_TEST_ASSERT(res->href);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
42 }
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
43
902
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
44 CX_TEST(test_dav_load_webdav) {
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
45 CX_TEST_DO {
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
46 DavSession *sn = get_test_webdav_session();
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
47 DavResource *res = dav_resource_new(sn, "/hello.txt");
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
48 CX_TEST_ASSERT(res);
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
49 int ret = dav_load(res);
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
50 CX_TEST_ASSERT(ret == 0);
903
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
51 CX_TEST_CALL_SUBROUTINE(test_default_properties, res);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
52 dav_session_destroy(sn);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
53 }
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
54 }
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
55
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
56 CX_TEST(test_dav_exists_webdav) {
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
57 CX_TEST_DO {
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
58 DavSession *sn = get_test_webdav_session();
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
59 DavResource *res = dav_resource_new(sn, "/hello.txt");
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
60 CX_TEST_ASSERT(res);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
61 int exists = dav_exists(res);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
62 CX_TEST_ASSERT(exists);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
63 CX_TEST_CALL_SUBROUTINE(test_default_properties, res);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
64 dav_session_destroy(sn);
902
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
65 }
06fa328989ee integrate wsgidav into test suite
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
66 }
903
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
67
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
68 CX_TEST(test_dav_create_webdav) {
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
69 CX_TEST_DO {
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
70 DavSession *sn = get_test_webdav_session();
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
71 // test1: check if the resource exists and create it after that
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
72 DavResource *res = dav_resource_new(sn, "/test_create.txt");
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
73 CX_TEST_ASSERT(res);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
74 int exists = dav_exists(res); // the resource should not exist yet
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
75 CX_TEST_ASSERT(!exists);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
76 int ret = dav_create(res); // create the resource
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
77 CX_TEST_ASSERT(!ret);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
78 exists = dav_exists(res); // the resource should exist now
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
79 CX_TEST_ASSERT(exists);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
80 CX_TEST_ASSERT(res->lastmodified > 0); // some properties should be loaded by dav_exists()
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
81 CX_TEST_ASSERT(res->contenttype);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
82
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
83 // test2: create a resource without calling dav_exists first
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
84 DavResource *res2 = dav_resource_new(sn, "/test_create2.txt");
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
85 ret = dav_create(res2);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
86 CX_TEST_ASSERT(!ret);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
87 CX_TEST_ASSERT(dav_exists(res2));
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
88 CX_TEST_ASSERT(res2->lastmodified > 0);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
89 CX_TEST_ASSERT(res2->contenttype);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
90
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
91 dav_session_destroy(sn);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
92 }
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
93 }
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
94
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
95 CX_TEST(test_dav_store_content_webdav) {
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
96 CX_TEST_DO {
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
97 DavSession *sn = get_test_webdav_session();
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
98 DavResource *res = dav_resource_new(sn, "/test_store_content.txt");
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
99 cxstring content = cx_str("test_store_content test content\n");
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
100 dav_set_content_data(res, content.ptr, content.length);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
101 int ret = dav_store(res);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
102 CX_TEST_ASSERT(!ret);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
103 CX_TEST_ASSERT(!dav_load(res));
905
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
104 if(!test_session_is_encrypted()) {
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
105 CX_TEST_ASSERT(res->contentlength == content.length);
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
106 }
903
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
107 dav_session_destroy(sn);
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
108 }
457faa53fd7e add tests for dav_exists, dav_create and dav_set_content/dav_store
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 902
diff changeset
109 }
904
7109de6bfad5 add test_dav_store_stream_webdav
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 903
diff changeset
110
7109de6bfad5 add test_dav_store_stream_webdav
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 903
diff changeset
111 CX_TEST(test_dav_store_stream_webdav) {
7109de6bfad5 add test_dav_store_stream_webdav
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 903
diff changeset
112 CX_TEST_DO {
905
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
113 FILE *f = fopen("test_dav_store_stream_webdav.txt", "w+");
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
114 cxstring line = cx_str("test_dav_store_stream_webdav test content\n");
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
115 for(int i=0;i<1000;i++) {
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
116 fwrite(line.ptr, 1, line.length, f);
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
117 }
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
118 fseek(f, 0, SEEK_SET);
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
119 size_t len = 1000 * line.length;
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
120
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
121 DavSession *sn = get_test_webdav_session();
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
122 DavResource *res = dav_resource_new(sn, "/test_store_file.txt");
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
123 dav_set_content(res, f, (dav_read_func)fread, (dav_seek_func)fseek);
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
124
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
125 int ret = dav_store(res);
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
126 CX_TEST_ASSERT(!ret);
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
127 CX_TEST_ASSERT(!dav_load(res));
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
128 if(!test_session_is_encrypted()) {
904
7109de6bfad5 add test_dav_store_stream_webdav
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 903
diff changeset
129 CX_TEST_ASSERT(res->contentlength == len);
7109de6bfad5 add test_dav_store_stream_webdav
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 903
diff changeset
130 }
905
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
131 dav_session_destroy(sn);
bc4238f9abdb add additional test suite for webdav tests with enabled encryption
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 904
diff changeset
132 fclose(f);
904
7109de6bfad5 add test_dav_store_stream_webdav
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 903
diff changeset
133 }
7109de6bfad5 add test_dav_store_stream_webdav
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 903
diff changeset
134 }

mercurial