<testcase>
<info>
<keywords>
getdate
unittest
</keywords>
</info>
#
# Server-side
<reply>
</reply>

# Client-side
<client>
<server>
none
</server>
# tool is what to use instead of 'curl'
<tool>
lib%TESTNUMBER
</tool>

<name>
curl_getdate() testing
</name>
<command>
nothing
</command>
</client>

#
# Verify data after the test has been "shot"
<verify>
<stdout>
</stdout>

# This test case previously tested an overflow case ("2094 Nov 6 =>
# 2147483647") for 32bit time_t, but since some systems have 64bit time_t and
# handles this (returning 3939840000), and some 64bit-time_t systems don't
# handle this and return -1 for this, it turned very tricky to write a fine
# test case and thus it is now removed until we have a way to write test cases
# for this kind of things.

</verify>
</testcase>
