make tests more like regresion tests

This commit is contained in:
Marty Kraimer
2012-08-17 14:13:18 -04:00
parent 66fb300873
commit fbfed5bab1
18 changed files with 695 additions and 398 deletions

View File

@@ -25,6 +25,8 @@
using namespace epics::pvData;
static bool debug = false;
void testTimeStamp(FILE *fd,FILE *auxfd)
{
assert(nanoSecPerSec==1000000000);
@@ -39,7 +41,7 @@ void testTimeStamp(FILE *fd,FILE *auxfd)
struct tm ctm;
memcpy(&ctm,localtime(&tt),sizeof(struct tm));
fprintf(auxfd,
"%4.4d.%2.2d.%2.2d %2.2d:%2.2d:%2.2d %d nanoSeconds isDst %s\n",
"%4.4d.%2.2d.%2.2d %2.2d:%2.2d:%2.2d %d isDst %s\n",
ctm.tm_year+1900,ctm.tm_mon + 1,ctm.tm_mday,
ctm.tm_hour,ctm.tm_min,ctm.tm_sec,
current.getNanoSeconds(),
@@ -53,7 +55,7 @@ void testTimeStamp(FILE *fd,FILE *auxfd)
current.toTime_t(tt);
memcpy(&ctm,localtime(&tt),sizeof(struct tm));
fprintf(auxfd,
"%4.4d.%2.2d.%2.2d %2.2d:%2.2d:%2.2d %d nanoSeconds isDst %s\n",
"%4.4d.%2.2d.%2.2d %2.2d:%2.2d:%2.2d %d isDst %s\n",
ctm.tm_year+1900,ctm.tm_mon + 1,ctm.tm_mday,
ctm.tm_hour,ctm.tm_min,ctm.tm_sec,
current.getNanoSeconds(),
@@ -64,7 +66,7 @@ void testTimeStamp(FILE *fd,FILE *auxfd)
left.put(current.getSecondsPastEpoch(),current.getNanoSeconds());
double diff;
diff = TimeStamp::diff(left,right);
fprintf(fd,"diff %e\n",diff);
if(debug) fprintf(fd,"diff %e\n",diff);
assert(diff==0.0);
assert((left==right));
assert(!(left!=right));
@@ -74,7 +76,8 @@ void testTimeStamp(FILE *fd,FILE *auxfd)
assert(!(left>right));
left.put(current.getSecondsPastEpoch()+1,current.getNanoSeconds());
diff = TimeStamp::diff(left,right);
fprintf(fd,"diff %e\n",diff);
if(debug) fprintf(fd,"diff %e\n",diff);
assert(diff==1.0);
assert(!(left==right));
assert((left!=right));
assert(!(left<=right));
@@ -83,7 +86,7 @@ void testTimeStamp(FILE *fd,FILE *auxfd)
assert((left>right));
left.put(current.getSecondsPastEpoch()-1,current.getNanoSeconds());
diff = TimeStamp::diff(left,right);
fprintf(fd,"diff %e\n",diff);
if(debug) fprintf(fd,"diff %e\n",diff);
assert(diff==-1.0);
assert(!(left==right));
assert((left!=right));
@@ -93,7 +96,7 @@ void testTimeStamp(FILE *fd,FILE *auxfd)
assert(!(left>right));
left.put(current.getSecondsPastEpoch(),current.getNanoSeconds()-nanoSecPerSec);
diff = TimeStamp::diff(left,right);
fprintf(fd,"diff %e\n",diff);
if(debug) fprintf(fd,"diff %e\n",diff);
assert(diff==-1.0);
assert(!(left==right));
assert((left!=right));
@@ -103,7 +106,7 @@ void testTimeStamp(FILE *fd,FILE *auxfd)
assert(!(left>right));
left.put(current.getSecondsPastEpoch(),current.getNanoSeconds()-1);
diff = TimeStamp::diff(left,right);
fprintf(fd,"diff %e\n",diff);
if(debug) fprintf(fd,"diff %e\n",diff);
assert(diff<0.0);
assert(!(left==right));
assert((left!=right));
@@ -114,12 +117,13 @@ void testTimeStamp(FILE *fd,FILE *auxfd)
left.put(current.getSecondsPastEpoch(),current.getNanoSeconds());
left += .1;
diff = TimeStamp::diff(left,right);
fprintf(fd,"diff %e\n",diff);
if(debug) fprintf(fd,"diff %e\n",diff);
left.put(current.getSecondsPastEpoch(),current.getNanoSeconds());
int64 inc = -1;
left += inc;
diff = TimeStamp::diff(left,right);
assert(diff==-1.0);
fprintf(fd,"PASSED\n");
}
int main(int argc, char *argv[]) {