# Boost.Bimap
#
# Copyright (c) 2006-2007 Matias Capeletto
#
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)

# bring in rules for testing
import testing ;

project : requirements <library>/boost/bimap//boost_bimap ;

test-suite "examples"
    :
    [ compile mighty_bimap.cpp                                        ]
    [ run     simple_bimap.cpp                                        ]
    [ run     tagged_simple_bimap.cpp                                 ]
    [ run     step_by_step.cpp                                        ]
    [ run     population_bimap.cpp
                    /boost/assign//boost_assign
                    /boost/foreach//boost_foreach                     ]
    [ run     repetitions_counter.cpp
                    /boost/tokenizer//boost_tokenizer                 ]
    [ compile user_defined_names.cpp                                  ]
    [ run     standard_map_comparison.cpp                             ]
    [ run     at_function_examples.cpp                                ]
    [ run     tutorial_modify_and_replace.cpp                         ]
    [ run     tutorial_range.cpp                                      ]
    [ run     unconstrained_collection.cpp                            ]
    [ run     tutorial_info_hook.cpp                                  ]
    [ run     projection.cpp                                          ]
    ;

test-suite "bimap_and_boost"
    :
    [ run     bimap_and_boost/property_map.cpp                        ]
    [ run     bimap_and_boost/range.cpp
                    /boost/range//boost_range                         ]
    [ run     bimap_and_boost/foreach.cpp
                    /boost/foreach//boost_foreach                     ]
    [ run     bimap_and_boost/lambda.cpp                              ]
    [ run     bimap_and_boost/assign.cpp
                    /boost/assign//boost_assign                       ]
    [ run     bimap_and_boost/xpressive.cpp
                    /boost/xpressive//boost_xpressive                 ]
    [ run     bimap_and_boost/typeof.cpp                              ]
    [ run     bimap_and_boost/serialization.cpp
                    /boost/serialization//boost_serialization         ]
    ;

test-suite "mi_to_b_path"
    :
    [ compile mi_to_b_path/bidirectional_map.cpp
                    /boost/tokenizer//boost_tokenizer                 ]
    [ run     mi_to_b_path/hashed_indices.cpp
                    /boost/tokenizer//boost_tokenizer                 ]
    [ compile mi_to_b_path/tagged_bidirectional_map.cpp               ]
    [ compile mi_to_b_path/mi_bidirectional_map.cpp
                    /boost/tokenizer//boost_tokenizer                 ]
    [ run     mi_to_b_path/mi_hashed_indices.cpp
                    /boost/tokenizer//boost_tokenizer                 ]
    ;
