#include #include // class edge_flaps : public ::testing::TestWithParam {}; // TEST_P(edge_flaps, verify) // { // Eigen::MatrixXd V; // Eigen::MatrixXi F; // test_common::load_mesh(GetParam(), V, F); // Eigen::MatrixXi efE,efEF,efEI; // Eigen::VectorXi efEMAP; // igl::edge_flaps(F,efE,efEMAP,efEF,efEI); // REQUIRE (efEF.rows() == efE.rows()); // REQUIRE (2 == efE.cols()); // REQUIRE (efEF.cols() == efE.cols()); // // for each edge, make sure edge appears in face // for(int e = 0;e= 0) // { // EXPECT_TRUE( // // Either efE(e,[1 2]) = [i,j] appears after vertex c of face f // ((efE(e,0) == F(f,(c+1)%3)) && (efE(e,1) == F(f,(c+2)%3))) || // // Or efE(e,[2 1]) = [j,i] appears after vertex c of face f // ((efE(e,1) == F(f,(c+1)%3)) && (efE(e,0) == F(f,(c+2)%3)))); // } // } // } // } // INSTANTIATE_TEST_CASE_P // ( // all_meshes, // edge_flaps, // ::testing::ValuesIn(test_common::all_meshes()), // test_common::string_test_name // );