diff options
author | Christian Grothoff <christian@grothoff.org> | 2009-10-20 11:33:07 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2009-10-20 11:33:07 +0000 |
commit | 66ec361f74889c6bcc73880af39dd8cd3a3179d5 (patch) | |
tree | fd5e699fbebe8a5c4279c7f5e74e0b7fbe160f72 /src/fs/test_fs_download.c | |
parent | 7f5570186d7d89dc6b3742bff7070fb94343279b (diff) | |
download | gnunet-66ec361f74889c6bcc73880af39dd8cd3a3179d5.tar.gz gnunet-66ec361f74889c6bcc73880af39dd8cd3a3179d5.zip |
bug fixes, api fixes, extended testcase
Diffstat (limited to 'src/fs/test_fs_download.c')
-rw-r--r-- | src/fs/test_fs_download.c | 34 |
1 files changed, 28 insertions, 6 deletions
diff --git a/src/fs/test_fs_download.c b/src/fs/test_fs_download.c index d7fb22bf6..f9a8109c5 100644 --- a/src/fs/test_fs_download.c +++ b/src/fs/test_fs_download.c | |||
@@ -85,8 +85,15 @@ static void | |||
85 | abort_download_task (void *cls, | 85 | abort_download_task (void *cls, |
86 | const struct GNUNET_SCHEDULER_TaskContext *tc) | 86 | const struct GNUNET_SCHEDULER_TaskContext *tc) |
87 | { | 87 | { |
88 | uint64_t size; | ||
89 | |||
88 | GNUNET_FS_download_stop (download, GNUNET_YES); | 90 | GNUNET_FS_download_stop (download, GNUNET_YES); |
89 | download = NULL; | 91 | download = NULL; |
92 | GNUNET_assert (GNUNET_OK == GNUNET_DISK_file_size (fn, &size, GNUNET_YES)); | ||
93 | GNUNET_assert (size == FILESIZE); | ||
94 | GNUNET_DISK_directory_remove (fn); | ||
95 | GNUNET_free (fn); | ||
96 | fn = NULL; | ||
90 | } | 97 | } |
91 | 98 | ||
92 | 99 | ||
@@ -104,7 +111,7 @@ progress_cb (void *cls, | |||
104 | (unsigned long long) event->value.publish.size, | 111 | (unsigned long long) event->value.publish.size, |
105 | event->value.publish.specifics.progress.depth, | 112 | event->value.publish.specifics.progress.depth, |
106 | (unsigned long long) event->value.publish.specifics.progress.offset); | 113 | (unsigned long long) event->value.publish.specifics.progress.offset); |
107 | #endif | 114 | #endif |
108 | break; | 115 | break; |
109 | case GNUNET_FS_STATUS_PUBLISH_COMPLETED: | 116 | case GNUNET_FS_STATUS_PUBLISH_COMPLETED: |
110 | printf ("Publishing complete, %llu kbps.\n", | 117 | printf ("Publishing complete, %llu kbps.\n", |
@@ -119,6 +126,7 @@ progress_cb (void *cls, | |||
119 | FILESIZE, | 126 | FILESIZE, |
120 | 1, | 127 | 1, |
121 | GNUNET_FS_DOWNLOAD_OPTION_NONE, | 128 | GNUNET_FS_DOWNLOAD_OPTION_NONE, |
129 | "download", | ||
122 | NULL); | 130 | NULL); |
123 | GNUNET_assert (download != NULL); | 131 | GNUNET_assert (download != NULL); |
124 | break; | 132 | break; |
@@ -132,6 +140,7 @@ progress_cb (void *cls, | |||
132 | GNUNET_SCHEDULER_REASON_PREREQ_DONE); | 140 | GNUNET_SCHEDULER_REASON_PREREQ_DONE); |
133 | break; | 141 | break; |
134 | case GNUNET_FS_STATUS_DOWNLOAD_PROGRESS: | 142 | case GNUNET_FS_STATUS_DOWNLOAD_PROGRESS: |
143 | GNUNET_assert (download == event->value.download.dc); | ||
135 | #if VERBOSE | 144 | #if VERBOSE |
136 | printf ("Download is progressing (%llu/%llu at level %u off %llu)...\n", | 145 | printf ("Download is progressing (%llu/%llu at level %u off %llu)...\n", |
137 | (unsigned long long) event->value.download.completed, | 146 | (unsigned long long) event->value.download.completed, |
@@ -162,18 +171,32 @@ progress_cb (void *cls, | |||
162 | GNUNET_SCHEDULER_REASON_PREREQ_DONE); | 171 | GNUNET_SCHEDULER_REASON_PREREQ_DONE); |
163 | break; | 172 | break; |
164 | case GNUNET_FS_STATUS_PUBLISH_START: | 173 | case GNUNET_FS_STATUS_PUBLISH_START: |
165 | /* FIXME: add checks here... */ | 174 | GNUNET_assert (0 == strcmp ("publish-context", event->value.publish.cctx)); |
175 | GNUNET_assert (NULL == event->value.publish.pctx); | ||
176 | GNUNET_assert (FILESIZE == event->value.publish.size); | ||
177 | GNUNET_assert (0 == event->value.publish.completed); | ||
178 | GNUNET_assert (1 == event->value.publish.anonymity); | ||
166 | break; | 179 | break; |
167 | case GNUNET_FS_STATUS_PUBLISH_STOPPED: | 180 | case GNUNET_FS_STATUS_PUBLISH_STOPPED: |
181 | GNUNET_assert (publish == event->value.publish.sc); | ||
182 | GNUNET_assert (FILESIZE == event->value.publish.size); | ||
183 | GNUNET_assert (1 == event->value.publish.anonymity); | ||
168 | /* FIXME: add checks here... */ | 184 | /* FIXME: add checks here... */ |
169 | GNUNET_FS_stop (fs); | 185 | GNUNET_FS_stop (fs); |
170 | fs = NULL; | 186 | fs = NULL; |
171 | break; | 187 | break; |
172 | case GNUNET_FS_STATUS_DOWNLOAD_START: | 188 | case GNUNET_FS_STATUS_DOWNLOAD_START: |
173 | /* FIXME: add checks here... */ | 189 | GNUNET_assert (download == NULL); |
190 | GNUNET_assert (0 == strcmp ("download", event->value.download.cctx)); | ||
191 | GNUNET_assert (NULL == event->value.download.pctx); | ||
192 | GNUNET_assert (NULL != event->value.download.uri); | ||
193 | GNUNET_assert (0 == strcmp (fn, event->value.download.filename)); | ||
194 | GNUNET_assert (FILESIZE == event->value.download.size); | ||
195 | GNUNET_assert (0 == event->value.download.completed); | ||
196 | GNUNET_assert (1 == event->value.download.anonymity); | ||
174 | break; | 197 | break; |
175 | case GNUNET_FS_STATUS_DOWNLOAD_STOPPED: | 198 | case GNUNET_FS_STATUS_DOWNLOAD_STOPPED: |
176 | /* FIXME: add checks here... */ | 199 | GNUNET_assert (download == event->value.download.dc); |
177 | GNUNET_SCHEDULER_add_continuation (sched, | 200 | GNUNET_SCHEDULER_add_continuation (sched, |
178 | GNUNET_NO, | 201 | GNUNET_NO, |
179 | &abort_publish_task, | 202 | &abort_publish_task, |
@@ -254,7 +277,7 @@ run (void *cls, | |||
254 | buf[i] = GNUNET_CRYPTO_random_u32 (GNUNET_CRYPTO_QUALITY_WEAK, 256); | 277 | buf[i] = GNUNET_CRYPTO_random_u32 (GNUNET_CRYPTO_QUALITY_WEAK, 256); |
255 | meta = GNUNET_CONTAINER_meta_data_create (); | 278 | meta = GNUNET_CONTAINER_meta_data_create (); |
256 | kuri = GNUNET_FS_uri_ksk_create_from_args (2, keywords); | 279 | kuri = GNUNET_FS_uri_ksk_create_from_args (2, keywords); |
257 | fi = GNUNET_FS_file_information_create_from_data ("file-to-publish", | 280 | fi = GNUNET_FS_file_information_create_from_data ("publish-context", |
258 | FILESIZE, | 281 | FILESIZE, |
259 | buf, | 282 | buf, |
260 | kuri, | 283 | kuri, |
@@ -268,7 +291,6 @@ run (void *cls, | |||
268 | GNUNET_assert (NULL != fi); | 291 | GNUNET_assert (NULL != fi); |
269 | start = GNUNET_TIME_absolute_get (); | 292 | start = GNUNET_TIME_absolute_get (); |
270 | publish = GNUNET_FS_publish_start (fs, | 293 | publish = GNUNET_FS_publish_start (fs, |
271 | "publish-context", | ||
272 | fi, | 294 | fi, |
273 | NULL, NULL, NULL, | 295 | NULL, NULL, NULL, |
274 | GNUNET_FS_PUBLISH_OPTION_NONE); | 296 | GNUNET_FS_PUBLISH_OPTION_NONE); |