52 lines
1.5 KiB
C++
52 lines
1.5 KiB
C++
#include "gtest/gtest.h"
|
|
#include "FileLoader.h"
|
|
|
|
TEST(FileLoaderTest, num_lines_defaults_to_0)
|
|
{
|
|
FileLoader fr;
|
|
EXPECT_EQ(0u, fr.num_lines());
|
|
}
|
|
|
|
TEST(FileLoaderTest, load_returns_false_for_nonexistent_file)
|
|
{
|
|
FileLoader fr;
|
|
EXPECT_FALSE(fr.load("this/file/does/not/exist.txt"));
|
|
}
|
|
|
|
TEST(FileLoaderTest, loading_empty_file)
|
|
{
|
|
FileLoader fr;
|
|
EXPECT_TRUE(fr.load("test/files/empty.txt"));
|
|
EXPECT_EQ(0u, fr.num_lines());
|
|
}
|
|
|
|
TEST(FileLoaderTest, reads_lf_format_file)
|
|
{
|
|
FileLoader fr;
|
|
EXPECT_TRUE(fr.load("test/files/line_endings/unix_format.txt"));
|
|
EXPECT_EQ(FileLoader::LINE_ENDING_LF, fr.get_line_endings());
|
|
EXPECT_EQ(2u, fr.num_lines());
|
|
// EXPECT_EQ("Hello.", fr.get_line(0)->to_s());
|
|
// EXPECT_EQ("This file is in UNIX line ending format.", fr.get_line(1)->to_s());
|
|
}
|
|
|
|
TEST(FileLoaderTest, reads_cr_format_file)
|
|
{
|
|
FileLoader fr;
|
|
EXPECT_TRUE(fr.load("test/files/line_endings/mac_format.txt"));
|
|
EXPECT_EQ(FileLoader::LINE_ENDING_CR, fr.get_line_endings());
|
|
EXPECT_EQ(2u, fr.num_lines());
|
|
// EXPECT_EQ("Hello.", fr.get_line(0)->to_s());
|
|
// EXPECT_EQ("This file is in MAC line ending format.", fr.get_line(1)->to_s());
|
|
}
|
|
|
|
TEST(FileLoaderTest, reads_crlf_format_file)
|
|
{
|
|
FileLoader fr;
|
|
EXPECT_TRUE(fr.load("test/files/line_endings/dos_format.txt"));
|
|
EXPECT_EQ(FileLoader::LINE_ENDING_CRLF, fr.get_line_endings());
|
|
EXPECT_EQ(2u, fr.num_lines());
|
|
// EXPECT_EQ("Hello.", fr.get_line(0)->to_s());
|
|
// EXPECT_EQ("This file is in DOS line ending format.", fr.get_line(1)->to_s());
|
|
}
|