• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2021 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 
4 #include "gn/bundle_data.h"
5 #include "util/test/test.h"
6 
TEST(BundleDataTest,GetAssetsCatalogDirectory)7 TEST(BundleDataTest, GetAssetsCatalogDirectory) {
8   struct TestCase {
9     SourceFile source_file;
10     SourceFile catalog_dir;
11   };
12 
13   static TestCase kTestCases[] = {
14       {
15           .source_file = SourceFile("//my/bundle/foo.xcassets/my/file"),
16           .catalog_dir = SourceFile("//my/bundle/foo.xcassets"),
17       },
18       {
19           .source_file = SourceFile(
20               "//my/bundle/foo.xcassets/nested/bar.xcassets/my/file"),
21           .catalog_dir = SourceFile("//my/bundle/foo.xcassets"),
22       },
23       {
24           .source_file = SourceFile("//my/bundle/my/file"),
25           .catalog_dir = SourceFile(),
26       },
27   };
28 
29   for (const TestCase& test_case : kTestCases) {
30     const SourceFile assets_catalog_dir =
31         BundleData::GetAssetsCatalogDirectory(test_case.source_file);
32     EXPECT_EQ(assets_catalog_dir, test_case.catalog_dir);
33   }
34 }
35