OSDN Git Service

fixed by @santarh
[meshio/meshio.git] / test / main.cpp
index b4e6fef..c30648b 100644 (file)
@@ -57,35 +57,44 @@ TEST(text, LineReader)
                if(l.isEnd()){
                        break;
                }
-               //std::cout << l.getLineCount() << ',' << line << std::endl;
        }
        EXPECT_EQ(43, l.getLineCount());
 }
 
 TEST(mqo, read) 
 { 
-       //binary::FileReader reader("cube.mqo");
-       std::vector<char> all;
-       binary::readAll("cube.mqo", all);
-       binary::MemoryReader reader(&all[0], all.size());
-
        mqo::IO io;
-       EXPECT_TRUE(io.read(reader));
+       EXPECT_TRUE(io.read("cube.mqo"));
        EXPECT_EQ(1, io.objects.size());
        EXPECT_EQ(8, io.objects[0].vertices.size());
        EXPECT_EQ(6, io.objects[0].faces.size());
 }
 
-TEST(pmd, read
+TEST(mqo, write
 { 
-       std::locale::global(std::locale("japanese"));
-       std::vector<char> all;
-       binary::readAll("\8f\89\89¹\83~\83NVer2.pmd", all);
-       binary::MemoryReader reader(&all[0], all.size());
+       {
+               mqo::IO io;
+               EXPECT_TRUE(io.read("cube.mqo"));
+               EXPECT_EQ(1, io.objects.size());
+               EXPECT_EQ(8, io.objects[0].vertices.size());
+               EXPECT_EQ(6, io.objects[0].faces.size());
+               EXPECT_TRUE(io.write("cube2.mqo"));
+               EXPECT_EQ(0, io.materials.size());
+       }
 
+       {
+               mqo::IO io;
+               EXPECT_TRUE(io.read("cube2.mqo"));
+               EXPECT_EQ(1, io.objects.size());
+               EXPECT_EQ(8, io.objects[0].vertices.size());
+               EXPECT_EQ(6, io.objects[0].faces.size());
+       }
+}
+
+TEST(pmd, read) 
+{ 
        pmd::IO io;
-       EXPECT_TRUE(io.read(reader));
-       //std::cout << io << std::endl;
+       EXPECT_TRUE(io.read(L"\8f\89\89¹\83~\83NVer2.pmd"));
        EXPECT_STREQ("\8f\89\89¹\83~\83N", io.name);
        EXPECT_EQ(17, io.materials.size());
        EXPECT_EQ(12354, io.vertices.size());
@@ -94,16 +103,41 @@ TEST(pmd, read)
        EXPECT_EQ(27, io.constraints.size());
 }
 
+TEST(pmd, write) 
+{ 
+       {
+               pmd::IO io;
+               EXPECT_TRUE(io.read(L"\8f\89\89¹\83~\83NVer2.pmd"));
+               EXPECT_STREQ("\8f\89\89¹\83~\83N", io.name);
+               EXPECT_EQ(17, io.materials.size());
+               EXPECT_EQ(12354, io.vertices.size());
+               EXPECT_EQ(68883, io.indices.size());
+               EXPECT_EQ(45, io.rigidbodies.size());
+               EXPECT_EQ(27, io.constraints.size());
+               EXPECT_TRUE(io.write("miku.pmd"));
+       }
+
+       {
+               pmd::IO io;
+               EXPECT_TRUE(io.read(L"miku.pmd"));
+               EXPECT_STREQ("\8f\89\89¹\83~\83N", io.name);
+               EXPECT_EQ(17, io.materials.size());
+               EXPECT_EQ(12354, io.vertices.size());
+               EXPECT_EQ(68883, io.indices.size());
+               //EXPECT_EQ(45, io.rigidbodies.size());
+               //EXPECT_EQ(27, io.constraints.size());
+       }
+
+       {
+               pmd::IO io;
+               EXPECT_TRUE(io.write("miku.pmd"));
+       }
+}
+
 TEST(vmd, read)
 {
-       std::locale::global(std::locale("japanese"));
-       std::vector<char> all;
-       binary::readAll("mikumiku.vmd", all);
-       binary::MemoryReader reader(&all[0], all.size());
-
        vmd::IO io;
-       EXPECT_TRUE(io.read(reader));
-       //std::cout << io << std::endl;
+       EXPECT_TRUE(io.read("mikumiku.vmd"));
        EXPECT_EQ(122, io.boneMap.size());
        EXPECT_EQ(16, io.morphMap.size());
 }