1# Copyright 2016 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5source_set("snapshots") {
6  public = [
7    "snapshot_browser_agent.h",
8    "snapshot_cache.h",
9    "snapshot_cache_internal.h",
10    "snapshot_cache_observer.h",
11    "snapshot_cache_web_state_list_observer.h",
12    "snapshot_generator_delegate.h",
13    "snapshot_lru_cache.h",
14    "snapshot_tab_helper.h",
15    "snapshots_util.h",
16  ]
17  sources = [
18    "snapshot_browser_agent.mm",
19    "snapshot_cache.mm",
20    "snapshot_cache_web_state_list_observer.mm",
21    "snapshot_generator.h",
22    "snapshot_generator.mm",
23    "snapshot_lru_cache.mm",
24    "snapshot_tab_helper.mm",
25    "snapshots_util.mm",
26  ]
27  deps = [
28    "//base",
29    "//ios/chrome/browser/browser_state",
30    "//ios/chrome/browser/main:public",
31    "//ios/chrome/browser/ui:feature_flags",
32    "//ios/chrome/browser/ui/util",
33    "//ios/chrome/browser/ui/util:multiwindow_util",
34    "//ios/chrome/browser/web:tab_id_tab_helper",
35    "//ios/chrome/browser/web_state_list",
36    "//ios/third_party/webkit",
37    "//ios/web/public",
38    "//ui/gfx",
39  ]
40  frameworks = [
41    "QuartzCore.framework",
42    "UIKit.framework",
43  ]
44  configs += [ "//build/config/compiler:enable_arc" ]
45}
46
47source_set("test_utils") {
48  testonly = true
49  configs += [ "//build/config/compiler:enable_arc" ]
50  sources = [
51    "fake_snapshot_generator_delegate.h",
52    "fake_snapshot_generator_delegate.mm",
53  ]
54  deps = [ ":snapshots" ]
55}
56
57source_set("unit_tests") {
58  configs += [ "//build/config/compiler:enable_arc" ]
59  testonly = true
60  sources = [
61    "snapshot_browser_agent_unittest.mm",
62    "snapshot_cache_unittest.mm",
63    "snapshot_lru_cache_unittest.mm",
64    "snapshot_tab_helper_unittest.mm",
65    "snapshots_util_unittest.mm",
66  ]
67  deps = [
68    ":snapshots",
69    ":test_utils",
70    "//base",
71    "//base/test:test_support",
72    "//ios/chrome/browser/main:public",
73    "//ios/chrome/browser/main:test_support",
74    "//ios/chrome/browser/ui/image_util",
75    "//ios/chrome/browser/ui/util",
76    "//ios/chrome/browser/web:tab_id_tab_helper",
77    "//ios/web",
78    "//ios/web/public/test",
79    "//ios/web/public/test/fakes:fakes",
80    "//testing/gmock",
81    "//testing/gtest",
82    "//third_party/ocmock",
83    "//ui/base:test_support",
84    "//ui/gfx",
85  ]
86}
87