| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "tools/gn/target.h" | 5 #include "tools/gn/target.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
| 10 #include "tools/gn/build_settings.h" | 10 #include "tools/gn/build_settings.h" |
| (...skipping 411 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 422 ASSERT_TRUE(forward.OnResolved(&err)); | 422 ASSERT_TRUE(forward.OnResolved(&err)); |
| 423 } | 423 } |
| 424 | 424 |
| 425 // Tests that different link/depend outputs work for solink tools. | 425 // Tests that different link/depend outputs work for solink tools. |
| 426 TEST(Target, LinkAndDepOutputs) { | 426 TEST(Target, LinkAndDepOutputs) { |
| 427 TestWithScope setup; | 427 TestWithScope setup; |
| 428 Err err; | 428 Err err; |
| 429 | 429 |
| 430 Toolchain toolchain(setup.settings(), Label(SourceDir("//tc/"), "tc")); | 430 Toolchain toolchain(setup.settings(), Label(SourceDir("//tc/"), "tc")); |
| 431 | 431 |
| 432 scoped_ptr<Tool> solink_tool(new Tool()); | 432 std::unique_ptr<Tool> solink_tool(new Tool()); |
| 433 solink_tool->set_output_prefix("lib"); | 433 solink_tool->set_output_prefix("lib"); |
| 434 solink_tool->set_default_output_extension(".so"); | 434 solink_tool->set_default_output_extension(".so"); |
| 435 | 435 |
| 436 const char kLinkPattern[] = | 436 const char kLinkPattern[] = |
| 437 "{{root_out_dir}}/{{target_output_name}}{{output_extension}}"; | 437 "{{root_out_dir}}/{{target_output_name}}{{output_extension}}"; |
| 438 SubstitutionPattern link_output = SubstitutionPattern::MakeForTest( | 438 SubstitutionPattern link_output = SubstitutionPattern::MakeForTest( |
| 439 kLinkPattern); | 439 kLinkPattern); |
| 440 solink_tool->set_link_output(link_output); | 440 solink_tool->set_link_output(link_output); |
| 441 | 441 |
| 442 const char kDependPattern[] = | 442 const char kDependPattern[] = |
| (...skipping 18 matching lines...) Expand all Loading... |
| 461 } | 461 } |
| 462 | 462 |
| 463 // Tests that runtime_link output works without an explicit link_output for | 463 // Tests that runtime_link output works without an explicit link_output for |
| 464 // solink tools. | 464 // solink tools. |
| 465 TEST(Target, RuntimeLinkOuput) { | 465 TEST(Target, RuntimeLinkOuput) { |
| 466 TestWithScope setup; | 466 TestWithScope setup; |
| 467 Err err; | 467 Err err; |
| 468 | 468 |
| 469 Toolchain toolchain(setup.settings(), Label(SourceDir("//tc/"), "tc")); | 469 Toolchain toolchain(setup.settings(), Label(SourceDir("//tc/"), "tc")); |
| 470 | 470 |
| 471 scoped_ptr<Tool> solink_tool(new Tool()); | 471 std::unique_ptr<Tool> solink_tool(new Tool()); |
| 472 solink_tool->set_output_prefix(""); | 472 solink_tool->set_output_prefix(""); |
| 473 solink_tool->set_default_output_extension(".dll"); | 473 solink_tool->set_default_output_extension(".dll"); |
| 474 | 474 |
| 475 const char kLibPattern[] = | 475 const char kLibPattern[] = |
| 476 "{{root_out_dir}}/{{target_output_name}}{{output_extension}}.lib"; | 476 "{{root_out_dir}}/{{target_output_name}}{{output_extension}}.lib"; |
| 477 SubstitutionPattern lib_output = | 477 SubstitutionPattern lib_output = |
| 478 SubstitutionPattern::MakeForTest(kLibPattern); | 478 SubstitutionPattern::MakeForTest(kLibPattern); |
| 479 | 479 |
| 480 const char kDllPattern[] = | 480 const char kDllPattern[] = |
| 481 "{{root_out_dir}}/{{target_output_name}}{{output_extension}}"; | 481 "{{root_out_dir}}/{{target_output_name}}{{output_extension}}"; |
| (...skipping 392 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 874 ASSERT_EQ(c.bundle_data().file_rules().size(), 1u); | 874 ASSERT_EQ(c.bundle_data().file_rules().size(), 1u); |
| 875 ASSERT_EQ(c.bundle_data().file_rules()[0].sources().size(), 1u); | 875 ASSERT_EQ(c.bundle_data().file_rules()[0].sources().size(), 1u); |
| 876 ASSERT_EQ(c.bundle_data().bundle_deps().size(), 1u); | 876 ASSERT_EQ(c.bundle_data().bundle_deps().size(), 1u); |
| 877 | 877 |
| 878 // E does not have any bundle_data information but gets a list of | 878 // E does not have any bundle_data information but gets a list of |
| 879 // bundle_deps to propagate them during target resolution. | 879 // bundle_deps to propagate them during target resolution. |
| 880 ASSERT_TRUE(e.bundle_data().file_rules().empty()); | 880 ASSERT_TRUE(e.bundle_data().file_rules().empty()); |
| 881 ASSERT_TRUE(e.bundle_data().asset_catalog_sources().empty()); | 881 ASSERT_TRUE(e.bundle_data().asset_catalog_sources().empty()); |
| 882 ASSERT_EQ(e.bundle_data().bundle_deps().size(), 2u); | 882 ASSERT_EQ(e.bundle_data().bundle_deps().size(), 2u); |
| 883 } | 883 } |
| OLD | NEW |