Mercurial > dovecot > core-2.2
annotate src/lib/test-str-table.c @ 22664:fea53c2725c0
director: Fix director_max_parallel_moves/kicks type
Should be uint, not time.
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Thu, 09 Nov 2017 12:24:16 +0200 |
parents | 2e2563132d5f |
children | cb108f786fb4 |
rev | line source |
---|---|
21390
2e2563132d5f
Updated copyright notices to include the year 2017.
Stephan Bosch <stephan.bosch@dovecot.fi>
parents:
19552
diff
changeset
|
1 /* Copyright (c) 2014-2017 Dovecot authors, see the included COPYING file */ |
18069
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
2 |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
3 #include "test-lib.h" |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
4 #include "str-table.h" |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
5 |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
6 void test_str_table(void) |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
7 { |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
8 struct str_table *table; |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
9 const char *key1, *key2, *key1_copy, *key2_copy; |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
10 |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
11 test_begin("str_table"); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
12 table = str_table_init(); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
13 |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
14 key1 = str_table_ref(table, "str1"); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
15 key2 = str_table_ref(table, "str2"); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
16 test_assert(key1 != key2); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
17 key1_copy = str_table_ref(table, "str1"); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
18 test_assert(key1_copy == key1); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
19 key2_copy = str_table_ref(table, "str2"); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
20 test_assert(key2_copy == key2); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
21 |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
22 str_table_unref(table, &key1); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
23 test_assert(key1 == NULL); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
24 str_table_unref(table, &key1_copy); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
25 |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
26 str_table_unref(table, &key2); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
27 str_table_unref(table, &key2_copy); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
28 test_assert(str_table_is_empty(table)); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
29 |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
30 str_table_deinit(&table); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
31 test_assert(table == NULL); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
32 test_end(); |
4c956747c36f
lib: Added str-table API for keeping reference counted strings in a hash table.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
33 } |