COIN-OR::LEMON - Graph Library

Ticket #611: fix_611.patch

File fix_611.patch, 1.7 KB (added by Balazs Dezso, 6 years ago)
  • lemon/planarity.h

    diff -r 57167d92e96c lemon/planarity.h
    a b  
    23982398    void run(const EmbeddingMap& embedding) {
    23992399      typedef SmartEdgeSet<Graph> AuxGraph;
    24002400
     2401      if (countNodes(_graph) < 3) {
     2402        int y = 0;
     2403        for (typename Graph::NodeIt n(_graph); n != INVALID; ++n) {
     2404          _point_map[n].x = 0;
     2405          _point_map[n].y = y++;
     2406        }
     2407        return;
     2408      }
     2409
    24012410      if (3 * countNodes(_graph) - 6 == countEdges(_graph)) {
    24022411        drawing(_graph, embedding, _point_map);
    24032412        return;
  • test/planarity_test.cc

    diff -r 57167d92e96c test/planarity_test.cc
    a b  
    3030using namespace lemon;
    3131using namespace lemon::dim2;
    3232
    33 const int lgfn = 4;
     33const int lgfn = 8;
    3434const std::string lgf[lgfn] = {
    3535  "@nodes\n"
    3636  "label\n"
     37  "@edges\n"
     38  "     label\n",
     39
     40  "@nodes\n"
     41  "label\n"
     42  "0\n"
     43  "@edges\n"
     44  "     label\n",
     45
     46  "@nodes\n"
     47  "label\n"
     48  "0\n"
     49  "1\n"
     50  "@edges\n"
     51  "     label\n"
     52  "0 1  0\n",
     53
     54  "@nodes\n"
     55  "label\n"
     56  "0\n"
     57  "1\n"
     58  "2\n"
     59  "@edges\n"
     60  "     label\n"
     61  "0 1  0\n"
     62  "1 2  1\n"
     63  "2 0  2\n",
     64
     65  "@nodes\n"
     66  "label\n"
    3767  "0\n"
    3868  "1\n"
    3969  "2\n"
     
    136166      ++face_num;
    137167    }
    138168  }
    139   check(face_num + countNodes(graph) - countConnectedComponents(graph) ==
    140         countEdges(graph) + 1, "Euler test does not passed");
     169
     170  if (face_num != 0) {
     171    check(face_num + countNodes(graph) - countConnectedComponents(graph) ==
     172          countEdges(graph) + 1, "Euler test does not passed");
     173  }
    141174}
    142175
    143176void checkKuratowski(const Graph& graph, PE& pe) {