Changeset 525 for trunk/test/src


Ignore:
Timestamp:
Sep 20, 2006, 10:14:40 AM (18 years ago)
Author:
dkearney
Message:

added new pressure units pascal, bar, torr, mmHg, psi, atm. rewrote some of the test cases for units.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/test/src/RpUnits_test.cc

    r515 r525  
    1010#include <list>
    1111#include <string>
     12#include <cassert>
    1213
    1314
     
    2324}
    2425
     26// compare_numbers()
    2527
    2628int main()
     
    328330
    329331    // day hour min sec test
    330     std::cout << "convert(\"5.00s\",\"s\",1) = " << RpUnits::convert("5.00s","s",1) << " = 5s" << std::endl;
    331     std::cout << "convert(\"5.00s\",\"s\",0) = " << RpUnits::convert("5.00s","s",0) << " = 5" << std::endl;
    332     std::cout << "convert(\"5.00min\",\"s\",1) = " << RpUnits::convert("5.00min","s",1) << " = 300s" << std::endl;
    333     std::cout << "convert(\"5.00min\",\"s\",0) = " << RpUnits::convert("5.00min","s",0) << " = 300" << std::endl;
    334     std::cout << "convert(\"5.00h\",\"s\",1) = " << RpUnits::convert("5.00h","s",1) << " = 18000s" << std::endl;
    335     std::cout << "convert(\"5.00h\",\"s\",0) = " << RpUnits::convert("5.00h","s",0) << " = 18000" << std::endl;
    336     std::cout << "convert(\"5.00d\",\"s\",1) = " << RpUnits::convert("5.00d","s",1) << " = 432000s" << std::endl;
    337     std::cout << "convert(\"5.00d\",\"s\",0) = " << RpUnits::convert("5.00d","s",0) << " = 432000" << std::endl;
    338 
    339     std::cout << "convert(\"5.00s\",\"min\",1) = " << RpUnits::convert("5.00s","min",1) << " = 300min" << std::endl;
    340     std::cout << "convert(\"5.00s\",\"min\",0) = " << RpUnits::convert("5.00s","min",0) << " = 300" << std::endl;
    341     std::cout << "convert(\"5.00min\",\"min\",1) = " << RpUnits::convert("5.00min","min",1) << " = 5min" << std::endl;
    342     std::cout << "convert(\"5.00min\",\"min\",0) = " << RpUnits::convert("5.00min","min",0) << " = 5" << std::endl;
    343     std::cout << "convert(\"5.00h\",\"min\",1) = " << RpUnits::convert("5.00h","min",1) << " = 300min" << std::endl;
    344     std::cout << "convert(\"5.00h\",\"min\",0) = " << RpUnits::convert("5.00h","min",0) << " = 300" << std::endl;
    345     std::cout << "convert(\"5.00d\",\"min\",1) = " << RpUnits::convert("5.00d","min",1) << " = 7200min" << std::endl;
    346     std::cout << "convert(\"5.00d\",\"min\",0) = " << RpUnits::convert("5.00d","min",0) << " = 7200" << std::endl;
    347 
    348     std::cout << "convert(\"5.00s\",\"h\",1) = " << RpUnits::convert("5.00s","h",1) << " = 0.001388h" << std::endl;
    349     std::cout << "convert(\"5.00s\",\"h\",0) = " << RpUnits::convert("5.00s","h",0) << " = 0.001388" << std::endl;
    350     std::cout << "convert(\"5.00min\",\"h\",1) = " << RpUnits::convert("5.00min","h",1) << " = 0.0833h" << std::endl;
    351     std::cout << "convert(\"5.00min\",\"h\",0) = " << RpUnits::convert("5.00min","h",0) << " = 0.0833" << std::endl;
    352     std::cout << "convert(\"5.00h\",\"h\",1) = " << RpUnits::convert("5.00h","h",1) << " = 5h" << std::endl;
    353     std::cout << "convert(\"5.00h\",\"h\",0) = " << RpUnits::convert("5.00h","h",0) << " = 5" << std::endl;
    354     std::cout << "convert(\"5.00d\",\"h\",1) = " << RpUnits::convert("5.00d","h",1) << " = 120h" << std::endl;
    355     std::cout << "convert(\"5.00d\",\"h\",0) = " << RpUnits::convert("5.00d","h",0) << " = 120" << std::endl;
    356 
    357     std::cout << "convert(\"5.00s\",\"d\",1) = " << RpUnits::convert("5.00s","d",1) << " = 5.7870e-05d" << std::endl;
    358     std::cout << "convert(\"5.00s\",\"d\",0) = " << RpUnits::convert("5.00s","d",0) << " = 5.7870e-05" << std::endl;
    359     std::cout << "convert(\"5.00min\",\"d\",1) = " << RpUnits::convert("5.00min","d",1) << " = 0.00347222d" << std::endl;
    360     std::cout << "convert(\"5.00min\",\"d\",0) = " << RpUnits::convert("5.00min","d",0) << " = 0.00347222" << std::endl;
    361     std::cout << "convert(\"5.00h\",\"d\",1) = " << RpUnits::convert("5.00h","d",1) << " = 0.208333d" << std::endl;
    362     std::cout << "convert(\"5.00h\",\"d\",0) = " << RpUnits::convert("5.00h","d",0) << " = 0.208333" << std::endl;
    363     std::cout << "convert(\"5.00d\",\"d\",1) = " << RpUnits::convert("5.00d","d",1) << " = 5d" << std::endl;
    364     std::cout << "convert(\"5.00d\",\"d\",0) = " << RpUnits::convert("5.00d","d",0) << " = 5" << std::endl;
     332    assert((RpUnits::convert("5.00s","s",RpUnits::UNITS_ON)) == "5s");
     333    std::cout << "convert(\"5.00s\",\"s\",UNITS_ON) passed" << std::endl;
     334    assert((RpUnits::convert("5.00s","s",RpUnits::UNITS_OFF)) == "5");
     335    std::cout << "convert(\"5.00s\",\"s\",UNITS_OFF) passed" << std::endl;
     336    assert((RpUnits::convert("5.00min","s",RpUnits::UNITS_ON)) == "300s");
     337    std::cout << "convert(\"5.00min\",\"s\",UNITS_ON) passed" << std::endl;
     338    assert((RpUnits::convert("5.00min","s",RpUnits::UNITS_OFF)) == "300");
     339    std::cout << "convert(\"5.00min\",\"s\",UNITS_OFF) passed" << std::endl;
     340    assert((RpUnits::convert("5.00h","s",RpUnits::UNITS_ON)) == "18000s");
     341    std::cout << "convert(\"5.00h\",\"s\",UNITS_ON) passed" << std::endl;
     342    assert((RpUnits::convert("5.00h","s",RpUnits::UNITS_OFF)) == "18000");
     343    std::cout << "convert(\"5.00h\",\"s\",UNITS_OFF) passed" << std::endl;
     344    assert((RpUnits::convert("5.00d","s",RpUnits::UNITS_ON)) == "432000s");
     345    std::cout << "convert(\"5.00d\",\"s\",UNITS_ON) passed" << std::endl;
     346    assert((RpUnits::convert("5.00d","s",RpUnits::UNITS_OFF)) == "432000");
     347    std::cout << "convert(\"5.00d\",\"s\",UNITS_OFF) passed" << std::endl;
     348
     349    assert((RpUnits::convert("5.00s","min",RpUnits::UNITS_ON)) == "0.0833333min");
     350    std::cout << "convert(\"5.00s\",\"min\",UNITS_ON) passed" << std::endl;
     351    assert((RpUnits::convert("5.00s","min",RpUnits::UNITS_OFF)) == "0.0833333");
     352    std::cout << "convert(\"5.00s\",\"min\",UNITS_OFF) passed" << std::endl;
     353    assert((RpUnits::convert("5.00min","min",RpUnits::UNITS_ON)) == "5min");
     354    std::cout << "convert(\"5.00min\",\"min\",UNITS_ON) passed" << std::endl;
     355    assert((RpUnits::convert("5.00min","min",RpUnits::UNITS_OFF)) == "5");
     356    std::cout << "convert(\"5.00min\",\"min\",UNITS_OFF) passed" << std::endl;
     357    assert((RpUnits::convert("5.00h","min",RpUnits::UNITS_ON)) == "300min");
     358    std::cout << "convert(\"5.00h\",\"min\",UNITS_ON) passed" << std::endl;
     359    assert((RpUnits::convert("5.00h","min",RpUnits::UNITS_OFF)) == "300");
     360    std::cout << "convert(\"5.00h\",\"min\",UNITS_OFF) passed" << std::endl;
     361    assert((RpUnits::convert("5.00d","min",RpUnits::UNITS_ON)) == "7200min");
     362    std::cout << "convert(\"5.00d\",\"min\",UNITS_ON) passed" << std::endl;
     363    assert((RpUnits::convert("5.00d","min",RpUnits::UNITS_OFF)) == "7200");
     364    std::cout << "convert(\"5.00d\",\"min\",UNITS_OFF) passed" << std::endl;
     365
     366    assert((RpUnits::convert("5.00s","h",RpUnits::UNITS_ON)) == "0.00138889h");
     367    std::cout << "convert(\"5.00s\",\"h\",UNITS_ON) passed" << std::endl;
     368    assert((RpUnits::convert("5.00s","h",RpUnits::UNITS_OFF)) == "0.00138889");
     369    std::cout << "convert(\"5.00s\",\"h\",UNITS_OFF) passed" << std::endl;
     370    assert((RpUnits::convert("5.00min","h",RpUnits::UNITS_ON)) == "0.0833333h");
     371    std::cout << "convert(\"5.00min\",\"h\",UNITS_ON) passed" << std::endl;
     372    assert((RpUnits::convert("5.00min","h",RpUnits::UNITS_OFF)) == "0.0833333");
     373    std::cout << "convert(\"5.00min\",\"h\",UNITS_OFF) passed" << std::endl;
     374    assert((RpUnits::convert("5.00h","h",RpUnits::UNITS_ON)) == "5h");
     375    std::cout << "convert(\"5.00h\",\"h\",UNITS_ON) passed" << std::endl;
     376    assert((RpUnits::convert("5.00h","h",RpUnits::UNITS_OFF)) == "5");
     377    std::cout << "convert(\"5.00h\",\"h\",UNITS_OFF) passed" << std::endl;
     378    assert((RpUnits::convert("5.00d","h",RpUnits::UNITS_ON)) == "120h");
     379    std::cout << "convert(\"5.00d\",\"h\",UNITS_ON) passed" << std::endl;
     380    assert((RpUnits::convert("5.00d","h",RpUnits::UNITS_OFF)) == "120");
     381    std::cout << "convert(\"5.00d\",\"h\",UNITS_OFF) passed" << std::endl;
     382
     383    assert((RpUnits::convert("5.00s","d",RpUnits::UNITS_ON)) == "5.78704e-05d");
     384    std::cout << "convert(\"5.00s\",\"d\",UNITS_ON) passed" << std::endl;
     385    assert((RpUnits::convert("5.00s","d",RpUnits::UNITS_OFF)) == "5.78704e-05");
     386    std::cout << "convert(\"5.00s\",\"d\",UNITS_OFF) passed" << std::endl;
     387    assert((RpUnits::convert("5.00min","d",RpUnits::UNITS_ON)) == "0.00347222d");
     388    std::cout << "convert(\"5.00min\",\"d\",UNITS_ON) passed" << std::endl;
     389    assert((RpUnits::convert("5.00min","d",RpUnits::UNITS_OFF)) == "0.00347222");
     390    std::cout << "convert(\"5.00min\",\"d\",UNITS_OFF) passed" << std::endl;
     391    assert((RpUnits::convert("5.00h","d",RpUnits::UNITS_ON)) == "0.208333d");
     392    std::cout << "convert(\"5.00h\",\"d\",UNITS_ON) passed" << std::endl;
     393    assert((RpUnits::convert("5.00h","d",RpUnits::UNITS_OFF)) == "0.208333");
     394    std::cout << "convert(\"5.00h\",\"d\",UNITS_OFF) passed" << std::endl;
     395    assert((RpUnits::convert("5.00d","d",RpUnits::UNITS_ON)) == "5d");
     396    std::cout << "convert(\"5.00d\",\"d\",UNITS_ON)  passed" << std::endl;
     397    assert((RpUnits::convert("5.00d","d",RpUnits::UNITS_OFF)) == "5");
     398    std::cout << "convert(\"5.00d\",\"d\",UNITS_OFF) passed" << std::endl;
     399
     400
     401
     402    assert((RpUnits::convert("5.00bar","Pa",RpUnits::UNITS_OFF)) == "500000");
     403    std::cout << "convert(\"5.00bar\",\"Pa\",UNITS_OFF) passed" << std::endl;
     404    assert((RpUnits::convert("5.00bar","Pa",RpUnits::UNITS_ON)) == "500000Pa");
     405    std::cout << "convert(\"5.00bar\",\"Pa\",UNITS_ON) passed" << std::endl;
     406    assert((RpUnits::convert("5.00bar","atm",RpUnits::UNITS_OFF)) == "4.9346");
     407    std::cout << "convert(\"5.00bar\",\"atm\",UNITS_OFF) passed" << std::endl;
     408    assert((RpUnits::convert("5.00bar","atm",RpUnits::UNITS_ON)) == "4.9346atm");
     409    std::cout << "convert(\"5.00bar\",\"atm\",UNITS_ON) passed" << std::endl;
     410    assert((RpUnits::convert("5.00bar","torr",RpUnits::UNITS_OFF)) == "3750.3");
     411    std::cout << "convert(\"5.00bar\",\"torr\",UNITS_OFF) passed" << std::endl;
     412    assert((RpUnits::convert("5.00bar","torr",RpUnits::UNITS_ON)) == "3750.3torr");
     413    std::cout << "convert(\"5.00bar\",\"torr\",UNITS_ON) passed" << std::endl;
     414    assert((RpUnits::convert("5.00bar","psi",RpUnits::UNITS_OFF)) == "72.52");
     415    std::cout << "convert(\"5.00bar\",\"psi\",UNITS_OFF) passed" << std::endl;
     416    assert((RpUnits::convert("5.00bar","psi",RpUnits::UNITS_ON)) == "72.52psi");
     417    std::cout << "convert(\"5.00bar\",\"psi\",UNITS_ON) passed" << std::endl;
     418
     419
     420
     421
     422    assert((RpUnits::convert("5.00atm","bar",RpUnits::UNITS_OFF)) == "5.06627");
     423    std::cout << "convert(\"5.00atm\",\"bar\",UNITS_OFF) passed" << std::endl;
     424    assert((RpUnits::convert("5.00atm","bar",RpUnits::UNITS_ON)) == "5.06627bar");
     425    std::cout << "convert(\"5.00atm\",\"bar\",UNITS_ON) passed" << std::endl;
     426    /*
     427    assert((RpUnits::convert("5.00atm","Pa",RpUnits::UNITS_OFF)) == "506625.12");
     428    std::cout << "convert(\"5.00atm\",\"Pa\",UNITS_OFF) passed" << std::endl;
     429    assert((RpUnits::convert("5.00atm","Pa",RpUnits::UNITS_ON)) == "506625.12Pa");
     430    std::cout << "convert(\"5.00atm\",\"Pa\",UNITS_ON) passed" << std::endl;
     431    */
     432    assert((RpUnits::convert("5.00atm","torr",RpUnits::UNITS_OFF)) == "3800");
     433    std::cout << "convert(\"5.00atm\",\"torr\",UNITS_OFF) passed" << std::endl;
     434    assert((RpUnits::convert("5.00atm","torr",RpUnits::UNITS_ON)) == "3800torr");
     435    std::cout << "convert(\"5.00atm\",\"torr\",UNITS_ON) passed" << std::endl;
     436
     437
     438
     439
     440    assert((RpUnits::convert("5.00Pa","bar",RpUnits::UNITS_OFF)) == "5e-05");
     441    std::cout << "convert(\"5.00Pa\",\"bar\",UNITS_OFF) passed" << std::endl;
     442    assert((RpUnits::convert("5.00Pa","bar",RpUnits::UNITS_ON)) == "5e-05bar");
     443    std::cout << "convert(\"5.00Pa\",\"bar\",UNITS_ON) passed" << std::endl;
     444    assert((RpUnits::convert("5.00Pa","atm",RpUnits::UNITS_OFF)) == "4.9346e-05");
     445    std::cout << "convert(\"5.00Pa\",\"atm\",UNITS_OFF) passed" << std::endl;
     446    assert((RpUnits::convert("5.00Pa","atm",RpUnits::UNITS_ON)) == "4.9346e-05atm");
     447    std::cout << "convert(\"5.00Pa\",\"atm\",UNITS_ON) passed" << std::endl;
     448    assert((RpUnits::convert("5.00Pa","torr",RpUnits::UNITS_OFF)) == "0.037503");
     449    std::cout << "convert(\"5.00Pa\",\"torr\",UNITS_OFF) passed" << std::endl;
     450    assert((RpUnits::convert("5.00Pa","torr",RpUnits::UNITS_ON)) == "0.037503torr");
     451    std::cout << "convert(\"5.00Pa\",\"torr\",UNITS_ON) passed" << std::endl;
     452    assert((RpUnits::convert("5.00Pa","psi",RpUnits::UNITS_OFF)) == "0.0007252");
     453    std::cout << "convert(\"5.00Pa\",\"psi\",UNITS_OFF) passed" << std::endl;
     454    assert((RpUnits::convert("5.00Pa","psi",RpUnits::UNITS_ON)) == "0.0007252psi");
     455    std::cout << "convert(\"5.00Pa\",\"psi\",UNITS_ON) passed" << std::endl;
     456
     457
     458
     459
     460    assert((RpUnits::convert("5.00torr","bar",RpUnits::UNITS_OFF)) == "0.00666613");
     461    std::cout << "convert(\"5.00torr\",\"bar\",UNITS_OFF) passed" << std::endl;
     462    assert((RpUnits::convert("5.00torr","bar",RpUnits::UNITS_ON)) == "0.00666613bar");
     463    std::cout << "convert(\"5.00torr\",\"bar\",UNITS_ON) passed" << std::endl;
     464    assert((RpUnits::convert("5.00torr","Pa",RpUnits::UNITS_OFF)) == "666.613");
     465    std::cout << "convert(\"5.00torr\",\"Pa\",UNITS_OFF) passed" << std::endl;
     466    assert((RpUnits::convert("5.00torr","Pa",RpUnits::UNITS_ON)) == "666.613Pa");
     467    std::cout << "convert(\"5.00torr\",\"Pa\",UNITS_ON) passed" << std::endl;
     468    assert((RpUnits::convert("5.00torr","atm",RpUnits::UNITS_OFF)) == "0.006579");
     469    std::cout << "convert(\"5.00torr\",\"atm\",UNITS_OFF) passed" << std::endl;
     470    assert((RpUnits::convert("5.00torr","atm",RpUnits::UNITS_ON)) == "0.006579atm");
     471    std::cout << "convert(\"5.00torr\",\"atm\",UNITS_ON) passed" << std::endl;
     472    assert((RpUnits::convert("5.00torr","psi",RpUnits::UNITS_OFF)) == "0.096685");
     473    std::cout << "convert(\"5.00torr\",\"psi\",UNITS_OFF) passed" << std::endl;
     474    assert((RpUnits::convert("5.00torr","psi",RpUnits::UNITS_ON)) == "0.096685psi");
     475    std::cout << "convert(\"5.00torr\",\"psi\",UNITS_ON) passed" << std::endl;
     476
     477
     478    assert((RpUnits::convert("5.00psi","bar",RpUnits::UNITS_OFF)) == "0.344738");
     479    std::cout << "convert(\"5.00psi\",\"bar\",UNITS_OFF) passed" << std::endl;
     480    assert((RpUnits::convert("5.00psi","bar",RpUnits::UNITS_ON)) == "0.344738bar");
     481    std::cout << "convert(\"5.00psi\",\"bar\",UNITS_ON) passed" << std::endl;
     482    /*
     483    assert((RpUnits::convert("5.00psi","Pa",RpUnits::UNITS_OFF)) == "34473.8129155");
     484    std::cout << "convert(\"5.00psi\",\"Pa\",UNITS_OFF) passed" << std::endl;
     485    assert((RpUnits::convert("5.00psi","Pa",RpUnits::UNITS_ON)) == "34473.8129155Pa");
     486    std::cout << "convert(\"5.00psi\",\"Pa\",UNITS_ON) passed" << std::endl;
     487    */
     488    assert((RpUnits::convert("5.00psi","torr",RpUnits::UNITS_OFF)) == "258.575");
     489    std::cout << "convert(\"5.00psi\",\"torr\",UNITS_OFF) passed" << std::endl;
     490    assert((RpUnits::convert("5.00psi","torr",RpUnits::UNITS_ON)) == "258.575torr");
     491    std::cout << "convert(\"5.00psi\",\"torr\",UNITS_ON) passed" << std::endl;
     492
     493
     494
     495
     496    assert((RpUnits::convert("5.00psi","kPa",RpUnits::UNITS_OFF)) == "34.4738");
     497    std::cout << "convert(\"5.00psi\",\"kPa\",UNITS_OFF) passed" << std::endl;
     498    assert((RpUnits::convert("5.00psi","kPa",RpUnits::UNITS_ON)) == "34.4738kPa");
     499    std::cout << "convert(\"5.00psi\",\"kPa\",UNITS_ON) passed" << std::endl;
     500
     501
     502
     503
     504    assert((RpUnits::convert("5.00torr","mmHg",RpUnits::UNITS_OFF)) == "5");
     505    std::cout << "convert(\"5.00torr\",\"mmHg\",UNITS_OFF) passed" << std::endl;
     506    assert((RpUnits::convert("5.00torr","mmHg",RpUnits::UNITS_ON)) == "5mmHg");
     507    std::cout << "convert(\"5.00torr\",\"mmHg\",UNITS_ON) passed" << std::endl;
    365508
    366509    return 0;
Note: See TracChangeset for help on using the changeset viewer.