tests/auto/qdatetime/tst_qdatetime.cpp
changeset 37 758a864f9613
parent 33 3e2da88830cd
equal deleted inserted replaced
36:ef0373b55136 37:758a864f9613
   957 #else
   957 #else
   958     ::time(&buf2);
   958     ::time(&buf2);
   959 #endif
   959 #endif
   960     QDateTime upperBound;
   960     QDateTime upperBound;
   961     upperBound.setTime_t(buf2);
   961     upperBound.setTime_t(buf2);
   962     upperBound = upperBound.addSecs(1);
   962     // Note we must add 2 seconds here because time() may return up to
   963 
   963     // 1 second difference from the more accurate method used by QDateTime::currentDateTime()
   964     QVERIFY(lowerBound < upperBound);
   964     upperBound = upperBound.addSecs(2);
   965 
   965 
   966     QVERIFY(lowerBound <= dt1);
   966     QString details = QString("\n"
   967     QVERIFY(dt1 < upperBound);
   967         "lowerBound: %1\n"
   968     QVERIFY(lowerBound <= dt2);
   968         "dt1:        %2\n"
   969     QVERIFY(dt2 < upperBound);
   969         "dt2:        %3\n"
   970     QVERIFY(lowerBound <= dt3);
   970         "dt3:        %4\n"
   971     QVERIFY(dt3 < upperBound);
   971         "upperBound: %5\n")
       
   972         .arg(lowerBound.toTime_t())
       
   973         .arg(dt1.toTime_t())
       
   974         .arg(dt2.toTime_t())
       
   975         .arg(dt3.toTime_t())
       
   976         .arg(upperBound.toTime_t());
       
   977 
       
   978     QVERIFY2(lowerBound < upperBound, qPrintable(details));
       
   979 
       
   980     QVERIFY2(lowerBound <= dt1, qPrintable(details));
       
   981     QVERIFY2(dt1 < upperBound, qPrintable(details));
       
   982     QVERIFY2(lowerBound <= dt2, qPrintable(details));
       
   983     QVERIFY2(dt2 < upperBound, qPrintable(details));
       
   984     QVERIFY2(lowerBound <= dt3, qPrintable(details));
       
   985     QVERIFY2(dt3 < upperBound, qPrintable(details));
   972 
   986 
   973     QVERIFY(dt1.timeSpec() == Qt::LocalTime);
   987     QVERIFY(dt1.timeSpec() == Qt::LocalTime);
   974     QVERIFY(dt2.timeSpec() == Qt::LocalTime);
   988     QVERIFY(dt2.timeSpec() == Qt::LocalTime);
   975     QVERIFY(dt3.timeSpec() == Qt::UTC);
   989     QVERIFY(dt3.timeSpec() == Qt::UTC);
   976 }
   990 }
   996 #else
  1010 #else
   997     ::time(&buf2);
  1011     ::time(&buf2);
   998 #endif
  1012 #endif
   999     QDateTime upperBound;
  1013     QDateTime upperBound;
  1000     upperBound.setTime_t(buf2);
  1014     upperBound.setTime_t(buf2);
  1001     upperBound = upperBound.addSecs(1);
  1015     // Note we must add 2 seconds here because time() may return up to
  1002 
  1016     // 1 second difference from the more accurate method used by QDateTime::currentDateTime()
  1003     QVERIFY(lowerBound < upperBound);
  1017     upperBound = upperBound.addSecs(2);
  1004 
  1018 
  1005     QVERIFY(lowerBound <= dt1);
  1019     QString details = QString("\n"
  1006     QVERIFY(dt1 < upperBound);
  1020         "lowerBound: %1\n"
  1007     QVERIFY(lowerBound <= dt2);
  1021         "dt1:        %2\n"
  1008     QVERIFY(dt2 < upperBound);
  1022         "dt2:        %3\n"
  1009     QVERIFY(lowerBound <= dt3);
  1023         "dt3:        %4\n"
  1010     QVERIFY(dt3 < upperBound);
  1024         "upperBound: %5\n")
       
  1025         .arg(lowerBound.toTime_t())
       
  1026         .arg(dt1.toTime_t())
       
  1027         .arg(dt2.toTime_t())
       
  1028         .arg(dt3.toTime_t())
       
  1029         .arg(upperBound.toTime_t());
       
  1030 
       
  1031     QVERIFY2(lowerBound < upperBound, qPrintable(details));
       
  1032 
       
  1033     QVERIFY2(lowerBound <= dt1, qPrintable(details));
       
  1034     QVERIFY2(dt1 < upperBound, qPrintable(details));
       
  1035     QVERIFY2(lowerBound <= dt2, qPrintable(details));
       
  1036     QVERIFY2(dt2 < upperBound, qPrintable(details));
       
  1037     QVERIFY2(lowerBound <= dt3, qPrintable(details));
       
  1038     QVERIFY2(dt3 < upperBound, qPrintable(details));
  1011 
  1039 
  1012     QVERIFY(dt1.timeSpec() == Qt::UTC);
  1040     QVERIFY(dt1.timeSpec() == Qt::UTC);
  1013     QVERIFY(dt2.timeSpec() == Qt::LocalTime);
  1041     QVERIFY(dt2.timeSpec() == Qt::LocalTime);
  1014     QVERIFY(dt3.timeSpec() == Qt::UTC);
  1042     QVERIFY(dt3.timeSpec() == Qt::UTC);
  1015 }
  1043 }