//===- ELFBinaryReaderTest.cpp --------------------------------------------===// // // The MCLinker Project // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// #include "mcld/LD/ELFBinaryReader.h" #include "mcld/Module.h" #include "mcld/LinkerScript.h" #include "mcld/LinkerConfig.h" #include "mcld/IRBuilder.h" #include "mcld/GeneralOptions.h" #include "mcld/MC/Input.h" #include "ELFBinaryReaderTest.h" using namespace mcld; using namespace mcld::test; // Constructor can do set-up work for all test here. ELFBinaryReaderTest::ELFBinaryReaderTest() { } // Destructor can do clean-up work that doesn't throw exceptions here. ELFBinaryReaderTest::~ELFBinaryReaderTest() { } // SetUp() will be called immediately before each test. void ELFBinaryReaderTest::SetUp() { } // TearDown() will be called immediately after each test. void ELFBinaryReaderTest::TearDown() { } //===----------------------------------------------------------------------===// // Testcases //===----------------------------------------------------------------------===// TEST_F(ELFBinaryReaderTest, is_myformat) { LinkerScript script; Module module("test", script); LinkerConfig config; IRBuilder builder(module, config); ELFBinaryReader* reader = new ELFBinaryReader(builder, config); Input input("test.bin"); bool doContinue = false; config.options().setBinaryInput(); ASSERT_TRUE(reader->isMyFormat(input, doContinue)); config.options().setBinaryInput(false); ASSERT_FALSE(reader->isMyFormat(input, doContinue)); delete reader; }