Commit c983aa9e authored by Yang Tse's avatar Yang Tse
Browse files

test 1511: fix enumerated type mixed with another type

parent b16b7f9d
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -59,4 +59,12 @@ HTTP GET time conditions in repeated requests
http://%HOSTIP:%HTTPPORT/1511
</command>
</client>

# Verify data after the test has been "shot"
# TEST_ERR_SUCCESS is errorcode 120
<verify>
<errorcode>
120
</errorcode>
</verify>
</testcase>
+16 −14
Original line number Diff line number Diff line
@@ -21,53 +21,55 @@
 ***************************************************************************/
#include "test.h"

#include "testtrace.h"
#include "memdebug.h"

int test(char *URL)
{
  int i = -1;
  long unmet;
  CURLcode res = 0;
  CURL* curl = NULL;
  int res = 0;

  global_init(CURL_GLOBAL_ALL);

  easy_init(curl);

  easy_setopt(curl, CURLOPT_URL, URL);
  easy_setopt(curl, CURLOPT_HEADER, 1L);
  easy_setopt(curl, CURLOPT_TIMECONDITION, CURL_TIMECOND_IFMODSINCE);
  easy_setopt(curl, CURLOPT_TIMECONDITION, (long)CURL_TIMECOND_IFMODSINCE);

  /* TIMEVALUE in the future */
  easy_setopt(curl, CURLOPT_TIMEVALUE, 1566210680);
  easy_setopt(curl, CURLOPT_TIMEVALUE, 1566210680L);

  res = curl_easy_perform(curl);
  if(res != CURLE_OK)
  if(res)
    goto test_cleanup;

  curl_easy_getinfo(curl, CURLINFO_CONDITION_UNMET, &unmet);
  if(unmet != 1)
  if(unmet != 1L) {
    res = TEST_ERR_FAILURE; /* not correct */
    goto test_cleanup;
  }

  /* TIMEVALUE in the past */
  easy_setopt(curl, CURLOPT_TIMEVALUE, 1);
  easy_setopt(curl, CURLOPT_TIMEVALUE, 1L);

  res = curl_easy_perform(curl);
  if (res != CURLE_OK)
  if(res)
    goto test_cleanup;

  curl_easy_getinfo(curl, CURLINFO_CONDITION_UNMET, &unmet);
  if(unmet != 0)
  if(unmet != 0L) {
    res = TEST_ERR_FAILURE; /* not correct */
    goto test_cleanup;
  }

  i = 0;
  res = TEST_ERR_SUCCESS; /* this is where we should be */

test_cleanup:
  if(res)
    i = res;

  /* always cleanup */
  curl_easy_cleanup(curl);
  curl_global_cleanup();

  return i; /* return the final return code */
  return res;
}