summaryrefslogtreecommitdiffstats
path: root/courgette/encode_decode_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'courgette/encode_decode_unittest.cc')
-rw-r--r--courgette/encode_decode_unittest.cc29
1 files changed, 12 insertions, 17 deletions
diff --git a/courgette/encode_decode_unittest.cc b/courgette/encode_decode_unittest.cc
index 20f0e16..90f5cd6 100644
--- a/courgette/encode_decode_unittest.cc
+++ b/courgette/encode_decode_unittest.cc
@@ -8,20 +8,20 @@
class EncodeDecodeTest : public BaseTest {
public:
- void TestAssembleToStreamDisassemble(std::string file,
- size_t expected_encoded_lenth) const;
+ void TestExe(const char *) const;
};
-void EncodeDecodeTest::TestAssembleToStreamDisassemble(
- std::string file,
- size_t expected_encoded_lenth) const {
- const void* original_buffer = file.c_str();
- size_t original_length = file.length();
+void EncodeDecodeTest::TestExe(const char* file_name) const {
+ // Test top-level Courgette API for converting an a file to a binary
+ // assembly representation and back.
+ std::string file1 = FileContents(file_name);
+
+ const void* original_buffer = file1.c_str();
+ size_t original_length = file1.size();
courgette::AssemblyProgram* program = NULL;
const courgette::Status parse_status =
- courgette::ParseDetectedExecutable(original_buffer,
- original_length,
+ courgette::ParseDetectedExecutable(original_buffer, original_length,
&program);
EXPECT_EQ(courgette::C_OK, parse_status);
@@ -45,7 +45,7 @@ void EncodeDecodeTest::TestAssembleToStreamDisassemble(
const void* buffer = sink.Buffer();
size_t length = sink.Length();
- EXPECT_EQ(expected_encoded_lenth, length);
+ EXPECT_EQ(971850U, length);
courgette::SourceStreamSet sources;
bool can_get_source_streams = sources.Init(buffer, length);
@@ -68,12 +68,7 @@ void EncodeDecodeTest::TestAssembleToStreamDisassemble(
DeleteEncodedProgram(encoded2);
}
-TEST_F(EncodeDecodeTest, PE) {
- std::string file = FileContents("setup1.exe");
- TestAssembleToStreamDisassemble(file, 971850);
-}
-TEST_F(EncodeDecodeTest, Elf_Small) {
- std::string file = FileContents("elf-32-1");
- TestAssembleToStreamDisassemble(file, 135988);
+TEST_F(EncodeDecodeTest, All) {
+ TestExe("setup1.exe");
}