home *** CD-ROM | disk | FTP | other *** search
/ Computer Shopper 275 / DPCS0111DVD.ISO / Toolkit / Audio-Visual / VirtualDub / Source / VirtualDub-1.9.10-src.7z / src / test / source / TestParameterCurve.cpp < prev    next >
Encoding:
C/C++ Source or Header  |  2009-11-06  |  1.8 KB  |  57 lines

  1. #include <vd2/system/vdstl.h>
  2. #include <vd2/VDLib/ParameterCurve.h>
  3. #include "test.h"
  4.  
  5. DEFINE_TEST(ParameterCurve) {
  6.     int e = 0;
  7.  
  8.     VDParameterCurve curve;
  9.  
  10.     VDParameterCurvePoint pt;
  11.     pt.mX = 1.0f;
  12.     pt.mY = 0.0f;
  13.     pt.mbLinear = false;
  14.     pt.mbLinkedTangents = false;
  15.  
  16.     VDParameterCurve::PointList& ptlist = curve.Points();
  17.     ptlist.push_back(pt);
  18.  
  19.     TEST_ASSERT(curve.LowerBound(0.0f) == curve.Begin());
  20.     TEST_ASSERT(curve.LowerBound(1.0f) == curve.Begin());
  21.     TEST_ASSERT(curve.LowerBound(2.0f) == curve.End());
  22.  
  23.     TEST_ASSERT(curve.UpperBound(0.0f) == curve.Begin());
  24.     TEST_ASSERT(curve.UpperBound(1.0f) == curve.End());
  25.     TEST_ASSERT(curve.UpperBound(2.0f) == curve.End());
  26.  
  27.     pt.mX = 2.0f;
  28.     ptlist.push_back(pt);
  29.  
  30.     TEST_ASSERT(curve.LowerBound(0.0f) == curve.Begin());
  31.     TEST_ASSERT(curve.LowerBound(1.0f) == curve.Begin());
  32.     TEST_ASSERT(curve.LowerBound(2.0f) == curve.Begin()+1);
  33.     TEST_ASSERT(curve.LowerBound(3.0f) == curve.End());
  34.  
  35.     TEST_ASSERT(curve.UpperBound(0.0f) == curve.Begin());
  36.     TEST_ASSERT(curve.UpperBound(1.0f) == curve.Begin()+1);
  37.     TEST_ASSERT(curve.UpperBound(2.0f) == curve.End());
  38.     TEST_ASSERT(curve.UpperBound(3.0f) == curve.End());
  39.  
  40.     pt.mX = 3.0f;
  41.     ptlist.push_back(pt);
  42.  
  43.     TEST_ASSERT(curve.LowerBound(0.0f) == curve.Begin());
  44.     TEST_ASSERT(curve.LowerBound(1.0f) == curve.Begin());
  45.     TEST_ASSERT(curve.LowerBound(2.0f) == curve.Begin()+1);
  46.     TEST_ASSERT(curve.LowerBound(3.0f) == curve.Begin()+2);
  47.     TEST_ASSERT(curve.LowerBound(4.0f) == curve.End());
  48.  
  49.     TEST_ASSERT(curve.UpperBound(0.0f) == curve.Begin());
  50.     TEST_ASSERT(curve.UpperBound(1.0f) == curve.Begin()+1);
  51.     TEST_ASSERT(curve.UpperBound(2.0f) == curve.Begin()+2);
  52.     TEST_ASSERT(curve.UpperBound(3.0f) == curve.End());
  53.     TEST_ASSERT(curve.UpperBound(4.0f) == curve.End());
  54.  
  55.     return e;
  56. }
  57.