# Copyright David Abrahams 2003. Permission to copy, use,
# modify, sell and distribute this software is granted provided this
# copyright notice appears in all copies. This software is provided
# "as is" without express or implied warranty, and with no claim as
# to its suitability for any purpose.

subproject libs/iterator/test ;

import testing ;

test-suite iterator
  : 
    # These first two tests will run last, and are expected to fail
    # for many less-capable compilers.
  
    [ compile-fail interoperable_fail.cpp ]
    # test uses expected success, so that we catch unrelated
    # compilation problems.
    [ run is_convertible_fail.cpp ]  

    [ run zip_iterator_test.cpp
        : : : 
        
        # stlport's debug mode generates long symbols which overwhelm
        # vc6
        <msvc-stlport><*><runtime-build>release 
    ]
      
    # These tests should work for just about everything.
    [ compile is_lvalue_iterator.cpp ]
    [ compile is_readable_iterator.cpp ]
    [ compile pointee.cpp ]
      
    [ run unit_tests.cpp ]
    [ run concept_tests.cpp ]
    [ run iterator_adaptor_cc.cpp ]
    [ run iterator_adaptor_test.cpp ]
    [ compile iterator_archetype_cc.cpp ]
    [ compile-fail iter_archetype_default_ctor.cpp ]
    [ compile-fail lvalue_concept_fail.cpp ]
    [ run transform_iterator_test.cpp ]
    [ run indirect_iterator_test.cpp ]
    [ compile indirect_iter_member_types.cpp ]
    [ run filter_iterator_test.cpp ]
    [ run iterator_facade.cpp ]
    [ run reverse_iterator_test.cpp ]
    [ run counting_iterator_test.cpp ]
    [ run interoperable.cpp ]
    [ run iterator_traits_test.cpp ]
    [ run permutation_iterator_test.cpp : : : # <stlport-iostream>on 
    ]
      
;
