| // Copyright 2015 The Chromium 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 "tools/gn/source_file.h" |
| #include "util/test/test.h" |
| |
| // The SourceFile object should normalize the input passed to the constructor. |
| // The normalizer unit test checks for all the weird edge cases for normalizing |
| // so here just check that it gets called. |
| TEST(SourceFile, Normalize) { |
| SourceFile a("//foo/../bar.cc"); |
| EXPECT_EQ("//bar.cc", a.value()); |
| |
| std::string b_str("//foo/././../bar.cc"); |
| SourceFile b(SourceFile::SwapIn(), &b_str); |
| EXPECT_TRUE(b_str.empty()); // Should have been swapped in. |
| EXPECT_EQ("//bar.cc", b.value()); |
| } |