chiark / gitweb /
tests: add test for continuation lines with comments
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Wed, 13 Feb 2013 04:28:48 +0000 (23:28 -0500)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Wed, 13 Feb 2013 06:05:28 +0000 (01:05 -0500)
src/test/test-unit-file.c

index 85191310d457f0205cb848db3f1861136eaacae3..041daaba68dc547baba6402a647d1495e70deba4 100644 (file)
@@ -193,6 +193,11 @@ static void test_config_parse_exec(void) {
 #define env_file_2 \
         "a\\\n"
 
+#define env_file_3 \
+        "#SPAMD_ARGS=\"-d --socketpath=/var/lib/bulwark/spamd \\\n" \
+        "#--nouser-config                                     \\\n" \
+        "normal=line"
+
 static void test_load_env_file_1(void) {
         char _cleanup_strv_free_ **data = NULL;
         int r;
@@ -230,6 +235,21 @@ static void test_load_env_file_2(void) {
         unlink(name);
 }
 
+static void test_load_env_file_3(void) {
+        char _cleanup_strv_free_ **data = NULL;
+        int r;
+
+        char name[] = "/tmp/test-load-env-file.XXXXXX";
+        int _cleanup_close_ fd = mkstemp(name);
+        assert(fd >= 0);
+        assert_se(write(fd, env_file_3, sizeof(env_file_3)) == sizeof(env_file_3));
+
+        r = load_env_file(name, &data);
+        assert(r == 0);
+        assert(data == NULL);
+        unlink(name);
+}
+
 #pragma GCC diagnostic push
 #pragma GCC diagnostic ignored "-Wnonnull"
 
@@ -305,6 +325,7 @@ int main(int argc, char *argv[]) {
         test_config_parse_exec();
         test_load_env_file_1();
         test_load_env_file_2();
+        test_load_env_file_3();
         test_install_printf();
 
         return 0;