Applied. Thanks! Tom
On Thu, Oct 30, 2014 at 10:34 PM, Ronny Chevalier <chevalier.ro...@gmail.com> wrote: > add tests for the following functions: > - write_string_file_no_create > - load_env_file_pairs > --- > src/test/test-fileio.c | 63 > ++++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 63 insertions(+) > > diff --git a/src/test/test-fileio.c b/src/test/test-fileio.c > index 7e7b4ac..a713abd 100644 > --- a/src/test/test-fileio.c > +++ b/src/test/test-fileio.c > @@ -331,6 +331,23 @@ static void test_write_string_file(void) { > unlink(fn); > } > > +static void test_write_string_file_no_create(void) { > + char fn[] = "/tmp/test-write_string_file_no_create-XXXXXX"; > + _cleanup_close_ int fd; > + char buf[64] = {0}; > + > + fd = mkostemp_safe(fn, O_RDWR); > + assert_se(fd >= 0); > + > + > assert_se(write_string_file_no_create("/a/file/which/does/not/exists/i/guess", > "boohoo") < 0); > + assert_se(write_string_file_no_create(fn, "boohoo") == 0); > + > + assert_se(read(fd, buf, sizeof(buf))); > + assert_se(streq(buf, "boohoo\n")); > + > + unlink(fn); > +} > + > static void test_sendfile_full(void) { > char in_fn[] = "/tmp/test-sendfile_full-XXXXXX"; > char out_fn[] = "/tmp/test-sendfile_full-XXXXXX"; > @@ -355,6 +372,50 @@ static void test_sendfile_full(void) { > unlink(out_fn); > } > > +static void test_load_env_file_pairs(void) { > + char fn[] = "/tmp/test-load_env_file_pairs-XXXXXX"; > + int fd; > + int r; > + _cleanup_fclose_ FILE *f = NULL; > + _cleanup_strv_free_ char **l = NULL; > + char **k, **v; > + > + fd = mkostemp_safe(fn, O_RDWR); > + assert_se(fd >= 0); > + > + r = write_string_file(fn, > + "NAME=\"Arch Linux\"\n" > + "ID=arch\n" > + "PRETTY_NAME=\"Arch Linux\"\n" > + "ANSI_COLOR=\"0;36\"\n" > + "HOME_URL=\"https://www.archlinux.org/\"\n" > + "SUPPORT_URL=\"https://bbs.archlinux.org/\"\n" > + "BUG_REPORT_URL=\"https://bugs.archlinux.org/\"\n" > + ); > + assert_se(r == 0); > + > + f = fdopen(fd, "r"); > + assert_se(f); > + > + r = load_env_file_pairs(f, fn, NULL, &l); > + assert_se(r >= 0); > + > + assert_se(strv_length(l) == 14); > + STRV_FOREACH_PAIR(k, v, l) { > + assert_se(STR_IN_SET(*k, "NAME", "ID", "PRETTY_NAME", > "ANSI_COLOR", "HOME_URL", "SUPPORT_URL", "BUG_REPORT_URL")); > + printf("%s=%s\n", *k, *v); > + if (streq(*k, "NAME")) assert_se(streq(*v, "Arch Linux")); > + if (streq(*k, "ID")) assert_se(streq(*v, "arch")); > + if (streq(*k, "PRETTY_NAME")) assert_se(streq(*v, "Arch > Linux")); > + if (streq(*k, "ANSI_COLOR")) assert_se(streq(*v, "0;36")); > + if (streq(*k, "HOME_URL")) assert_se(streq(*v, > "https://www.archlinux.org/")); > + if (streq(*k, "SUPPORT_URL")) assert_se(streq(*v, > "https://bbs.archlinux.org/")); > + if (streq(*k, "BUG_REPORT_URL")) assert_se(streq(*v, > "https://bugs.archlinux.org/")); > + } > + > + unlink(fn); > +} > + > int main(int argc, char *argv[]) { > log_parse_environment(); > log_open(); > @@ -366,7 +427,9 @@ int main(int argc, char *argv[]) { > test_capeff(); > test_write_string_stream(); > test_write_string_file(); > + test_write_string_file_no_create(); > test_sendfile_full(); > + test_load_env_file_pairs(); > > return 0; > } > -- > 2.1.3 > > _______________________________________________ > systemd-devel mailing list > systemd-devel@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/systemd-devel _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel