Add a test for File::truncate().

This commit is contained in:
Tsuda Kageyu
2016-10-27 15:15:22 +09:00
parent 06ca9a099d
commit d2b3547254

View File

@ -45,6 +45,7 @@ class TestFile : public CppUnit::TestFixture
CPPUNIT_TEST(testFindInSmallFile);
CPPUNIT_TEST(testRFindInSmallFile);
CPPUNIT_TEST(testSeek);
CPPUNIT_TEST(testTruncate);
CPPUNIT_TEST_SUITE_END();
public:
@ -129,6 +130,24 @@ public:
CPPUNIT_ASSERT_EQUAL((long)4428, f.tell());
}
void testTruncate()
{
ScopedFileCopy copy("empty", ".ogg");
std::string name = copy.fileName();
{
PlainFile f(name.c_str());
CPPUNIT_ASSERT_EQUAL(4328L, f.length());
f.truncate(2000);
CPPUNIT_ASSERT_EQUAL(2000L, f.length());
}
{
PlainFile f(name.c_str());
CPPUNIT_ASSERT_EQUAL(2000L, f.length());
}
}
};
CPPUNIT_TEST_SUITE_REGISTRATION(TestFile);