netrc: Enable setting up the filename in unit tests.
authorJulien Chaffraix <julien.chaffraix@gmail.com>
Tue, 8 Feb 2011 16:39:44 +0000 (08:39 -0800)
committerJulien Chaffraix <julien.chaffraix@gmail.com>
Thu, 10 Feb 2011 15:38:48 +0000 (07:38 -0800)
Unset the environment variable so that we can specify different
filenames in the unit test.

tests/data/test1304
tests/runtests.pl
tests/unit/unit1304.c

index 572e033..f438a69 100644 (file)
@@ -14,7 +14,6 @@ none
 </server>
 <features>
 unittest
-netrc_debug
 </features>
  <name>
 netrc parsing unit tests
index 8d0ff48..e372415 100755 (executable)
@@ -2487,6 +2487,9 @@ sub singletest {
             }
         }
         elsif($f eq "unittest") {
+            # Unit tests should set the netrc filename directly, thus unset the
+            # environment variable.
+            delete($ENV{'CURL_DEBUG_NETRC'}) if $ENV{'CURL_DEBUG_NETRC'};
             if($debug_build) {
                 next;
             }
index e7d55a5..34a54e9 100644 (file)
@@ -7,6 +7,7 @@
 
 char login[LOGINSIZE];
 char password[PASSWORDSIZE];
+char filename[64];
 
 static CURLcode unit_setup(void)
 {
@@ -22,15 +23,13 @@ static void unit_stop(void)
 UNITTEST_START
   int result;
 
-  /*
-   * TODO: We don't specify the filename as it is
-   * overriden when running the test.
-   */
+  static const char* filename1 = "log/netrc";
+  memcpy(filename, filename1, strlen(filename1));
 
   /*
    * Test a non existent host in our netrc file.
    */
-  result = Curl_parsenetrc("test.example.com", login, password, NULL);
+  result = Curl_parsenetrc("test.example.com", login, password, filename);
   fail_unless(result == 1, "Host not found should return 1");
   fail_unless(password[0] == 0, "password should not have been changed");
   fail_unless(login[0] == 0, "login should not have been changed");
@@ -39,7 +38,7 @@ UNITTEST_START
    * Test a non existent login in our netrc file.
    */
   memcpy(login, "me", 2);
-  result = Curl_parsenetrc("example.com", login, password, NULL);
+  result = Curl_parsenetrc("example.com", login, password, filename);
   fail_unless(result == 0, "Host should be found");
   fail_unless(password[0] == 0, "password should not have been changed");
   fail_unless(strncmp(login, "me", 2) == 0, "login should not have been changed");
@@ -48,7 +47,7 @@ UNITTEST_START
    * Test a non existent login and host in our netrc file.
    */
   memcpy(login, "me", 2);
-  result = Curl_parsenetrc("test.example.com", login, password, NULL);
+  result = Curl_parsenetrc("test.example.com", login, password, filename);
   fail_unless(result == 1, "Host should be found");
   fail_unless(password[0] == 0, "password should not have been changed");
   fail_unless(strncmp(login, "me", 2) == 0, "login should not have been changed");
@@ -58,7 +57,7 @@ UNITTEST_START
    * netrc file.
    */
   memcpy(login, "admi", 4);
-  result = Curl_parsenetrc("example.com", login, password, NULL);
+  result = Curl_parsenetrc("example.com", login, password, filename);
   fail_unless(result == 0, "Host should be found");
   fail_unless(password[0] == 0, "password should not have been changed");
   fail_unless(strncmp(login, "admi", 4) == 0, "login should not have been changed");
@@ -68,7 +67,7 @@ UNITTEST_START
    * in our netrc file.
    */
   memcpy(login, "adminn", 6);
-  result = Curl_parsenetrc("example.com", login, password, NULL);
+  result = Curl_parsenetrc("example.com", login, password, filename);
   fail_unless(result == 0, "Host should be found");
   fail_unless(password[0] == 0, "password should not have been changed");
   fail_unless(strncmp(login, "adminn", 6) == 0, "login should not have been changed");
@@ -78,7 +77,7 @@ UNITTEST_START
    * with login[0] = 0.
    */
   login[0] = 0;
-  result = Curl_parsenetrc("example.com", login, password, NULL);
+  result = Curl_parsenetrc("example.com", login, password, filename);
   fail_unless(result == 0, "Host should have been found");
   fail_unless(strncmp(password, "passwd", 6) == 0,
               "password should be 'passwd'");
@@ -89,7 +88,7 @@ UNITTEST_START
    * with login[0] != 0.
    */
   password[0] = 0;
-  result = Curl_parsenetrc("example.com", login, password, NULL);
+  result = Curl_parsenetrc("example.com", login, password, filename);
   fail_unless(result == 0, "Host should have been found");
   fail_unless(strncmp(password, "passwd", 6) == 0,
               "password should be 'passwd'");
@@ -101,7 +100,7 @@ UNITTEST_START
    */
   password[0] = 0;
   login[0] = 0;
-  result = Curl_parsenetrc("curl.example.com", login, password, NULL);
+  result = Curl_parsenetrc("curl.example.com", login, password, filename);
   fail_unless(result == 0, "Host should have been found");
   fail_unless(strncmp(password, "none", 4) == 0,
               "password should be 'none'");
@@ -112,7 +111,7 @@ UNITTEST_START
    * with login[0] != 0.
    */
   password[0] = 0;
-  result = Curl_parsenetrc("curl.example.com", login, password, "log/netrc");
+  result = Curl_parsenetrc("curl.example.com", login, password, filename);
   fail_unless(result == 0, "Host should have been found");
   fail_unless(strncmp(password, "none", 4) == 0,
               "password should be 'none'");