1 #include <gtest/gtest.h>
6 using namespace meshio;
8 TEST(binary, FileReader)
10 binary::FileReader reader("cube.mqo");
13 while(reader.read(buf, 1024)){
15 EXPECT_EQ(1235, reader.getPos());
18 TEST(binary, MemoryReader)
20 std::vector<char> all;
21 binary::readAll("cube.mqo", all);
22 binary::MemoryReader reader(&all[0], all.size());
24 while(reader.read(buf, 1024)){
26 EXPECT_EQ(1235, reader.getPos());
29 TEST(text, LineReader)
31 binary::FileReader reader("cube.mqo");
35 text::IsEmpty> l(reader);
36 EXPECT_EQ("Metasequoia Document", l.getLine().str());
37 EXPECT_EQ("Format Text Ver 1.0", l.getLine().str());
40 text::cstr line=l.getLine();
41 text::LineSplitter<text::IsWhiteSpace> splitter(line);
42 EXPECT_EQ("Scene", splitter.get().str());
46 text::cstr line=l.getLine();
47 text::LineSplitter<text::IsWhiteSpace> splitter(line);
48 EXPECT_EQ("pos", splitter.get().str());
49 EXPECT_EQ(0.0000f, splitter.getFloat());
50 EXPECT_EQ(0.0000f, splitter.getFloat());
51 EXPECT_EQ(1500.0000f, splitter.getFloat());
56 text::cstr line=l.getLine();
60 //std::cout << l.getLineCount() << ',' << line << std::endl;
62 EXPECT_EQ(43, l.getLineCount());
67 //binary::FileReader reader("cube.mqo");
68 std::vector<char> all;
69 binary::readAll("cube.mqo", all);
70 binary::MemoryReader reader(&all[0], all.size());
73 EXPECT_TRUE(io.read(reader));
74 EXPECT_EQ(1, io.objects.size());
75 EXPECT_EQ(8, io.objects[0].vertices.size());
76 EXPECT_EQ(6, io.objects[0].faces.size());
81 std::locale::global(std::locale("japanese"));
82 std::vector<char> all;
83 binary::readAll("
\8f\89\89¹
\83~
\83NVer2.pmd", all);
84 binary::MemoryReader reader(&all[0], all.size());
87 EXPECT_TRUE(io.read(reader));
88 //std::cout << io << std::endl;
89 EXPECT_STREQ("
\8f\89\89¹
\83~
\83N", io.name);
90 EXPECT_EQ(17, io.materials.size());
91 EXPECT_EQ(12354, io.vertices.size());
92 EXPECT_EQ(68883, io.indices.size());
93 EXPECT_EQ(45, io.rigidbodies.size());
94 EXPECT_EQ(27, io.constraints.size());
99 std::locale::global(std::locale("japanese"));
100 std::vector<char> all;
101 binary::readAll("mikumiku.vmd", all);
102 binary::MemoryReader reader(&all[0], all.size());
105 EXPECT_TRUE(io.read(reader));
106 //std::cout << io << std::endl;
107 EXPECT_EQ(122, io.boneMap.size());
108 EXPECT_EQ(16, io.morphMap.size());
111 int main(int argc, char **argv)
113 testing::InitGoogleTest(&argc, argv);