COIN-OR::LEMON - Graph Library

Changes in / [426:b2564598b46d:425:cace3206223b] in lemon-main


Ignore:
Location:
test
Files:
2 added
4 edited

Legend:

Unmodified
Added
Removed
  • test/CMakeLists.txt

    r424 r410  
    55SET(TESTS
    66  bfs_test
    7   circulation_test
    87  counter_test
    98  dfs_test
     
    1211  dim_test
    1312  error_test
    14   graph_adaptor_test
    1513  graph_copy_test
    1614  graph_test
     
    2119  maps_test
    2220  max_matching_test
     21  random_test
    2322  path_test
    24   preflow_test
    25   random_test
    26   suurballe_test
    2723  time_measure_test
    2824  unionfind_test)
  • test/Makefile.am

    r424 r418  
    11EXTRA_DIST += \
    2         test/CMakeLists.txt
     2        test/CMakeLists.txt \
     3        test/min_cost_flow_test.lgf \
     4        test/preflow_graph.lgf
    35
    46noinst_HEADERS += \
     
    1921        test/graph_test \
    2022        test/graph_utils_test \
    21         test/hao_orlin_test \
    2223        test/heap_test \
    2324        test/kruskal_test \
     25        test/hao_orlin_test \
    2426        test/maps_test \
    2527        test/max_matching_test \
     28        test/random_test \
    2629        test/path_test \
    2730        test/preflow_test \
    28         test/random_test \
    2931        test/suurballe_test \
    3032        test/test_tools_fail \
  • test/preflow_test.cc

    r423 r394  
    1717 */
    1818
    19 #include <iostream>
     19#include <fstream>
     20#include <string>
    2021
    2122#include "test_tools.h"
     
    2829
    2930using namespace lemon;
    30 
    31 char test_lgf[] =
    32   "@nodes\n"
    33   "label\n"
    34   "0\n"
    35   "1\n"
    36   "2\n"
    37   "3\n"
    38   "4\n"
    39   "5\n"
    40   "6\n"
    41   "7\n"
    42   "8\n"
    43   "9\n"
    44   "@arcs\n"
    45   "    label capacity\n"
    46   "0 1 0     20\n"
    47   "0 2 1     0\n"
    48   "1 1 2     3\n"
    49   "1 2 3     8\n"
    50   "1 3 4     8\n"
    51   "2 5 5     5\n"
    52   "3 2 6     5\n"
    53   "3 5 7     5\n"
    54   "3 6 8     5\n"
    55   "4 3 9     3\n"
    56   "5 7 10    3\n"
    57   "5 6 11    10\n"
    58   "5 8 12    10\n"
    59   "6 8 13    8\n"
    60   "8 9 14    20\n"
    61   "8 1 15    5\n"
    62   "9 5 16    5\n"
    63   "@attributes\n"
    64   "source 1\n"
    65   "target 8\n";
    6631
    6732void checkPreflowCompile()
     
    159124  typedef Preflow<Digraph, CapMap> PType;
    160125
     126  std::string f_name;
     127  if( getenv("srcdir") )
     128    f_name = std::string(getenv("srcdir"));
     129  else f_name = ".";
     130  f_name += "/test/preflow_graph.lgf";
     131
     132  std::ifstream file(f_name.c_str());
     133
     134  check(file, "Input file '" << f_name << "' not found.");
     135
    161136  Digraph g;
    162137  Node s, t;
    163138  CapMap cap(g);
    164   std::istringstream input(test_lgf);
    165   DigraphReader<Digraph>(g,input).
     139  DigraphReader<Digraph>(g,file).
    166140    arcMap("capacity", cap).
    167141    node("source",s).
  • test/suurballe_test.cc

    r423 r346  
    1818
    1919#include <iostream>
     20#include <fstream>
    2021
    2122#include <lemon/list_graph.h>
     
    2728
    2829using namespace lemon;
    29 
    30 char test_lgf[] =
    31   "@nodes\n"
    32   "label supply1 supply2 supply3\n"
    33   "1     0        20      27\n"
    34   "2     0       -4        0\n"
    35   "3     0        0        0\n"
    36   "4     0        0        0\n"
    37   "5     0        9        0\n"
    38   "6     0       -6        0\n"
    39   "7     0        0        0\n"
    40   "8     0        0        0\n"
    41   "9     0        3        0\n"
    42   "10    0       -2        0\n"
    43   "11    0        0        0\n"
    44   "12    0       -20     -27\n"
    45   "@arcs\n"
    46   "      cost capacity lower1 lower2\n"
    47   " 1  2  70  11       0      8\n"
    48   " 1  3 150   3       0      1\n"
    49   " 1  4  80  15       0      2\n"
    50   " 2  8  80  12       0      0\n"
    51   " 3  5 140   5       0      3\n"
    52   " 4  6  60  10       0      1\n"
    53   " 4  7  80   2       0      0\n"
    54   " 4  8 110   3       0      0\n"
    55   " 5  7  60  14       0      0\n"
    56   " 5 11 120  12       0      0\n"
    57   " 6  3   0   3       0      0\n"
    58   " 6  9 140   4       0      0\n"
    59   " 6 10  90   8       0      0\n"
    60   " 7  1  30   5       0      0\n"
    61   " 8 12  60  16       0      4\n"
    62   " 9 12  50   6       0      0\n"
    63   "10 12  70  13       0      5\n"
    64   "10  2 100   7       0      0\n"
    65   "10  7  60  10       0      0\n"
    66   "11 10  20  14       0      6\n"
    67   "12 11  30  10       0      0\n"
    68   "@attributes\n"
    69   "source  1\n"
    70   "target 12\n"
    71   "@end\n";
    7230
    7331// Check the feasibility of the flow
     
    13997  Node source, target;
    14098
    141   std::istringstream input(test_lgf);
     99  std::string fname;
     100  if(getenv("srcdir"))
     101    fname = std::string(getenv("srcdir"));
     102  else fname = ".";
     103  fname += "/test/min_cost_flow_test.lgf";
     104
     105  std::ifstream input(fname.c_str());
     106  check(input, "Input file '" << fname << "' not found");
    142107  DigraphReader<ListDigraph>(digraph, input).
    143108    arcMap("cost", length).
     
    145110    node("target", target).
    146111    run();
     112  input.close();
    147113 
    148114  // Find 2 paths
Note: See TracChangeset for help on using the changeset viewer.