OKlibrary  0.2.1.6
std_Container_Tests.hpp
Go to the documentation of this file.
00001 // Oliver Kullmann, 3.7.2005 (Swansea)
00002 /* Copyright 2005 - 2007 Oliver Kullmann
00003 This file is part of the OKlibrary. OKlibrary is free software; you can redistribute
00004 it and/or modify it under the terms of the GNU General Public License as published by
00005 the Free Software Foundation and included in this library; either version 3 of the
00006 License, or any later version. */
00007 
00020 #ifndef STDCONTAINERTESTS_bbvcC
00021 #define STDCONTAINERTESTS_bbvcC
00022 
00023 #include <string>
00024 
00025 #include <vector>
00026 #include <list>
00027 #include <deque>
00028 #include <set>
00029 
00030 #include <boost/concept_check.hpp>
00031 
00032 #include <OKlib/TestSystem/TestBaseClass.hpp>
00033 #include <OKlib/TestSystem/TestExceptions.hpp>
00034 
00035 namespace OKlib {
00036   namespace Concepts {
00037 
00044     template <template <typename C> class ContainerConcept>
00045     class Test_ContainerConcept {
00046       void constraints() {
00047         boost::function_requires<ContainerConcept<std::vector<int> > >();
00048         boost::function_requires<ContainerConcept<std::vector<std::string> > >();
00049         boost::function_requires<ContainerConcept<std::list<int> > >();
00050         boost::function_requires<ContainerConcept<std::list<std::string> > >();
00051         boost::function_requires<ContainerConcept<std::deque<int> > >();
00052         boost::function_requires<ContainerConcept<std::deque<std::string> > >();
00053         boost::function_requires<ContainerConcept<std::set<int> > >();
00054         boost::function_requires<ContainerConcept<std::set<std::string> > >();
00055         boost::function_requires<ContainerConcept<std::multiset<int> > >();
00056         boost::function_requires<ContainerConcept<std::multiset<std::string> > >();
00057       }
00058     };
00059 
00060   }
00061 
00062 }
00063 
00064 #endif