diff options
author | Lev Walkin <vlm@lionet.info> | 2012-01-07 15:29:25 -0800 |
---|---|---|
committer | Lev Walkin <vlm@lionet.info> | 2012-01-07 15:29:25 -0800 |
commit | 833d27521dfa4425d9adbae4f6472d68c1f68f72 (patch) | |
tree | 8c3f1d624c9a744b93e7959b1322ece799c9c961 | |
parent | 78d917d5c1bab719701016b307d8af6835eae110 (diff) |
slightly prettier code
-rw-r--r-- | skeletons/tests/check-REAL.c | 39 |
1 files changed, 23 insertions, 16 deletions
diff --git a/skeletons/tests/check-REAL.c b/skeletons/tests/check-REAL.c index f3aff9c7..46b1a95b 100644 --- a/skeletons/tests/check-REAL.c +++ b/skeletons/tests/check-REAL.c @@ -22,33 +22,40 @@ callback(const void *buffer, size_t size, void *app_key) { return 0; } +static char * +d2s(double d, int canonical, const char *str) { + ssize_t s; + + reconstr_lens[canonical] = 0; + s = REAL__dump(d, canonical, callback, (void *)(ptrdiff_t)canonical); + assert(s < sizeof(reconstructed[canonical])); + assert(s == reconstr_lens[canonical]); + reconstructed[canonical][s] = '\0'; // ASCIIZ + return reconstructed[canonical]; +} + +/* + * Verify that a string representation of a given floating point value + * is as given in the (sample) and (canonical_sample) arguments. + */ static void check_str_repr(double d, const char *sample, const char *canonical_sample) { - ssize_t s1, s2; - - reconstr_lens[1] = reconstr_lens[0] = 0; - - s1 = REAL__dump(d, 0, callback, 0); - assert(s1 < sizeof(reconstructed[0])); - assert(s1 == reconstr_lens[0]); - reconstructed[0][s1] = '\0'; + char *s0, *s1; - s2 = REAL__dump(d, 1, callback, (void *)1); - assert(s2 < sizeof(reconstructed[1])); - assert(s2 == reconstr_lens[1]); - reconstructed[1][s2] = '\0'; + s0 = d2s(d, 0, sample); + s1 = d2s(d, 1, canonical_sample); if(sample) { printf("Checking %f->[%s] against [%s]%s\n", - d, reconstructed[0], sample, + d, s0, sample, canonical_sample ? " (canonical follows...)" : "" ); - assert(!strcmp(reconstructed[0], sample)); + assert(!strcmp(s0, sample)); } if(canonical_sample) { printf("Checking %f->[%s] against [%s] (canonical)\n", - d, reconstructed[1], canonical_sample); - assert(!strcmp(reconstructed[1], canonical_sample)); + d, s1, canonical_sample); + assert(!strcmp(s1, canonical_sample)); } } |