|  | // 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(std::move(b_str)); | 
|  | EXPECT_TRUE(b_str.empty());  // Should have been swapped in. | 
|  | EXPECT_EQ("//bar.cc", b.value()); | 
|  | } |