Update of /cvsroot/boost/boost/libs/optional/test
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv16836/libs/optional/test

Modified Files:
      Tag: RC_1_34_0
        Jamfile.v2 optional_test.cpp 
Log Message:
none_t/none reimplemented to avoid precompiled header issues (thanks to Joe 
Gottam)
optional<T> now has direct relational operator
optional<T>::operator-> fixed for reference types

Index: Jamfile.v2
===================================================================
RCS file: /cvsroot/boost/boost/libs/optional/test/Jamfile.v2,v
retrieving revision 1.4.2.1
retrieving revision 1.4.2.2
diff -u -d -r1.4.2.1 -r1.4.2.2
--- Jamfile.v2  1 Mar 2007 21:50:11 -0000       1.4.2.1
+++ Jamfile.v2  1 Mar 2007 23:08:33 -0000       1.4.2.2
@@ -22,7 +22,6 @@
     [ run optional_test_inplace.cpp ]
     [ run optional_test_io.cpp ]
     [ compile-fail optional_test_fail1.cpp ]
-    [ compile-fail optional_test_fail2.cpp ]
     [ compile-fail optional_test_fail3a.cpp ]
     [ compile-fail optional_test_fail3b.cpp ]
     [ compile-fail optional_test_ref_fail1.cpp ]

Index: optional_test.cpp
===================================================================
RCS file: /cvsroot/boost/boost/libs/optional/test/optional_test.cpp,v
retrieving revision 1.17.2.1
retrieving revision 1.17.2.2
diff -u -d -r1.17.2.1 -r1.17.2.2
--- optional_test.cpp   1 Mar 2007 21:50:11 -0000       1.17.2.1
+++ optional_test.cpp   1 Mar 2007 23:08:33 -0000       1.17.2.2
@@ -704,16 +704,16 @@
 {
   TRACE( std::endl << BOOST_CURRENT_FUNCTION   );
 
-  T v0(18);
-  T v1(19);
-  T v2(19);
+  T v0(0);
+  T v1(1);
+  T v2(1);
 
   optional<T> def0 ;
   optional<T> def1 ;
   optional<T> opt0(v0);
   optional<T> opt1(v1);
   optional<T> opt2(v2);
-
+  
   // Check identity
   BOOST_CHECK ( def0 == def0 ) ;
   BOOST_CHECK ( opt0 == opt0 ) ;
@@ -751,6 +751,33 @@
   BOOST_CHECK ( opt1 >  opt0 ) ;
   BOOST_CHECK ( opt1 <= opt2 ) ;
   BOOST_CHECK ( opt1 >= opt0 ) ;
+  
+  // Compare against a value directly
+  BOOST_CHECK ( opt0 == v0 ) ;
+  BOOST_CHECK ( opt0 != v1 ) ;
+  BOOST_CHECK ( opt1 == v2 ) ;
+  BOOST_CHECK ( opt0 <  v1 ) ;
+  BOOST_CHECK ( opt1 >  v0 ) ;
+  BOOST_CHECK ( opt1 <= v2 ) ;
+  BOOST_CHECK ( opt1 >= v0 ) ;
+  BOOST_CHECK ( v0 != opt1 ) ;
+  BOOST_CHECK ( v1 == opt2 ) ;
+  BOOST_CHECK ( v0 <  opt1 ) ;
+  BOOST_CHECK ( v1 >  opt0 ) ;
+  BOOST_CHECK ( v1 <= opt2 ) ;
+  BOOST_CHECK ( v1 >= opt0 ) ;
+  BOOST_CHECK (   def0 != v0  ) ;
+  BOOST_CHECK ( !(def0 == v0) ) ;
+  BOOST_CHECK (   def0 <  v0  ) ;
+  BOOST_CHECK ( !(def0 >  v0) ) ;
+  BOOST_CHECK (   def0 <= v0  ) ;
+  BOOST_CHECK ( !(def0 >= v0) ) ;
+  BOOST_CHECK (   v0 != def0  ) ;
+  BOOST_CHECK ( !(v0 == def0) ) ;
+  BOOST_CHECK ( !(v0 <  def0) ) ;
+  BOOST_CHECK (   v0 >  def0  ) ;
+  BOOST_CHECK ( !(v0 <= def0) ) ;
+  BOOST_CHECK (   v0 >= opt0  ) ;
 }
 
 template<class T>
@@ -767,6 +794,10 @@
   BOOST_CHECK ( def0    == none ) ;
   BOOST_CHECK ( non_def != none ) ;
   BOOST_CHECK ( !def1           ) ;
+  BOOST_CHECK ( !(non_def <  none) ) ; 
+  BOOST_CHECK (   non_def >  none  ) ;
+  BOOST_CHECK ( !(non_def <= none) ) ;
+  BOOST_CHECK (   non_def >= none  ) ;
 
   non_def = none ;
   BOOST_CHECK ( !non_def ) ;


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Boost-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/boost-cvs

Reply via email to