test/path_test.cc
changeset 982 3e711ee55d31
parent 440 88ed40ad0d4f
equal deleted inserted replaced
2:ad798a7da692 3:8d9bff0afcbd
    36   checkConcept<concepts::Path<ListDigraph>, SimplePath<ListDigraph> >();
    36   checkConcept<concepts::Path<ListDigraph>, SimplePath<ListDigraph> >();
    37   checkConcept<concepts::Path<ListDigraph>, StaticPath<ListDigraph> >();
    37   checkConcept<concepts::Path<ListDigraph>, StaticPath<ListDigraph> >();
    38   checkConcept<concepts::Path<ListDigraph>, ListPath<ListDigraph> >();
    38   checkConcept<concepts::Path<ListDigraph>, ListPath<ListDigraph> >();
    39 }
    39 }
    40 
    40 
       
    41 // Check if proper copy consructor is called (use valgrind for testing)
       
    42 template<class _Path>
       
    43 void checkCopy()
       
    44 {
       
    45   ListDigraph g;
       
    46   ListDigraph::Arc a  = g.addArc(g.addNode(), g.addNode());
       
    47   
       
    48   _Path p,q;
       
    49   p.addBack(a);
       
    50   q=p;
       
    51   _Path r(p);
       
    52   StaticPath<ListDigraph> s(r);
       
    53 }
       
    54   
    41 int main() {
    55 int main() {
    42   check_concepts();
    56   check_concepts();
       
    57 
       
    58   checkCopy<Path<ListDigraph> >();
       
    59   checkCopy<SimplePath<ListDigraph> >();
       
    60   checkCopy<ListPath<ListDigraph> >();
       
    61 
       
    62   ListDigraph g;
       
    63   ListDigraph::Arc a  = g.addArc(g.addNode(), g.addNode());
       
    64   
       
    65   Path<ListDigraph> p;
       
    66   StaticPath<ListDigraph> q,r;
       
    67   p.addBack(a);
       
    68   q=p;
       
    69   r=q;
       
    70   StaticPath<ListDigraph> s(q);
       
    71 
    43   return 0;
    72   return 0;
    44 }
    73 }