blob: 8ac54ab0433dd53cd8c979e1bc5d983b05143ab2 [file] [log] [blame]
// Copyright 2018 The Goma Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "lib/fake_flags.h"
#include "glog/logging.h"
#include "gtest/gtest.h"
using std::string;
namespace devtools_goma {
TEST(FakeFlagsTest, Basic) {
const std::vector<string> args{
"fake", "foo.fake", "bar.fake",
};
const string cwd = ".";
FakeFlags flags(args, cwd);
EXPECT_TRUE(flags.is_successful());
EXPECT_EQ((std::vector<string>{"foo.fake", "bar.fake"}),
flags.input_filenames());
EXPECT_EQ((std::vector<string>{"foo.out", "bar.out"}), flags.output_files());
}
TEST(FakeFlagsTest, IsFakeCommand) {
EXPECT_TRUE(FakeFlags::IsFakeCommand("fake"));
EXPECT_TRUE(FakeFlags::IsFakeCommand("/usr/bin/fake"));
EXPECT_TRUE(FakeFlags::IsFakeCommand("fake.exe"));
EXPECT_FALSE(FakeFlags::IsFakeCommand("foo"));
EXPECT_FALSE(FakeFlags::IsFakeCommand("bar"));
}
TEST(FakeFlagsTest, GetCompilerName) {
EXPECT_EQ("fake", FakeFlags::GetCompilerName("fake"));
EXPECT_EQ("fake", FakeFlags::GetCompilerName("fake.exe"));
}
} // namespace devtools_goma