Mercurial > dovecot > core-2.2
annotate src/lib/test-hex-binary.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) 2009-2017 Dovecot authors, see the included COPYING file */ |
9637
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
2 |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
3 #include "test-lib.h" |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
4 #include "buffer.h" |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
5 #include "str.h" |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
6 #include "hex-binary.h" |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
7 |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
8 static void test_binary_to_hex(void) |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
9 { |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
10 static unsigned char input[] = { 0xff, 0x00, 0x01, 0xb3 }; |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
11 static char *output_lcase = "ff0001b3"; |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
12 static char *output_ucase = "FF0001B3"; |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
13 string_t *str; |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
14 |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
15 test_begin("binary to hex"); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
16 test_assert(strcmp(binary_to_hex(input, sizeof(input)), output_lcase) == 0); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
17 test_end(); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
18 |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
19 test_begin("binary to hex ucase"); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
20 test_assert(strcmp(binary_to_hex_ucase(input, sizeof(input)), output_ucase) == 0); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
21 test_end(); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
22 |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
23 test_begin("binary to hex ucase"); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
24 str = t_str_new(32); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
25 str_append_c(str, '<'); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
26 binary_to_hex_append(str, input, sizeof(input)); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
27 str_append_c(str, '>'); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
28 test_assert(strcmp(str_c(str), t_strconcat("<", output_lcase, ">", NULL)) == 0); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
29 test_end(); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
30 } |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
31 |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
32 static void test_hex_to_binary(void) |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
33 { |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
34 static const char *ok_input = "0001fEFf"; |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
35 static unsigned char ok_output[] = { 0x00, 0x01, 0xfe, 0xff }; |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
36 static const char *error_input[] = { |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
37 "00 01", |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
38 "0x01", |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
39 "0g" |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
40 }; |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
41 buffer_t *buf = buffer_create_dynamic(pool_datastack_create(), 10); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
42 unsigned int i; |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
43 |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
44 test_begin("hex to binary"); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
45 test_assert(hex_to_binary("", buf) == 0); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
46 test_assert(buf->used == 0); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
47 |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
48 test_assert(hex_to_binary(ok_input, buf) == 0); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
49 test_assert(buf->used == N_ELEMENTS(ok_output)); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
50 test_assert(memcmp(buf->data, ok_output, buf->used) == 0); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
51 |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
52 for (i = 0; i < N_ELEMENTS(error_input); i++) |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
53 test_assert(hex_to_binary(error_input[i], buf) == -1); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
54 test_end(); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
55 } |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
56 |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
57 void test_hex_binary(void) |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
58 { |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
59 test_binary_to_hex(); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
60 test_hex_to_binary(); |
c4118cfa1085
Added missing test-hex-binary.c from earlier commit.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
61 } |