Skip to content

Commit

Permalink
SavedDesk: Implement Saved Desk Builder boilerplate
Browse files Browse the repository at this point in the history
This CL implements the saved desk builder boilerplate code needed
to build comprehensive tests for the Saved Desk storage format.
These builders are not completely covered in tests but will be
as we approach the overall goal of testing the Saved Desk format.

The builders currently work with the tests that use them.  More
test coverage is coming up, for more information see the attached
implementation plan.

Implementation plan: go/saved-desk-format-consistency-ip

Design: go/saved-desk-format-consistency-dd
Bug: b/248645924
Change-Id: I6eea2723e3ac3f8633e2049d77507ea64041e8c6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3999050
Reviewed-by: Yanzhu Du <yzd@google.com>
Commit-Queue: Avynn Donaghe <avynn@google.com>
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1067575}
  • Loading branch information
avynn authored and Chromium LUCI CQ committed Nov 4, 2022
1 parent e28478e commit cd991f2
Show file tree
Hide file tree
Showing 6 changed files with 602 additions and 91 deletions.
2 changes: 2 additions & 0 deletions components/desks_storage/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -80,5 +80,7 @@ source_set("unit_tests") {
"//components/app_constants",
"//components/sync:test_support",
"//testing/gtest",
"//ui/gfx/geometry",
"//ui/gfx/range",
]
}
3 changes: 2 additions & 1 deletion components/desks_storage/DEPS
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,6 @@ include_rules = [
"+third_party/re2",
"+ui/base/ui_base_types.h",
"+ui/base/window_open_disposition.h",
"+ui/gfx/geometry"
"+ui/gfx/geometry",
"+ui/gfx/range",
]
66 changes: 48 additions & 18 deletions components/desks_storage/core/desk_sync_bridge_unittest.cc
Original file line number Diff line number Diff line change
Expand Up @@ -935,9 +935,14 @@ TEST_F(DeskSyncBridgeTest, EnsureAshBrowserWindowsSavedProperly) {
SavedDeskBuilder()
.SetUuid(base::StringPrintf(kUuidFormat, kDefaultTemplateIndex))
.SetName(base::StringPrintf(kNameFormat, kDefaultTemplateIndex))
.AddAshBrowserAppWindow(kBrowserWindowId,
{GURL(base::StringPrintf(kTestUrlFormat, 1)),
GURL(base::StringPrintf(kTestUrlFormat, 2))})
.AddAppWindow(
SavedDeskBrowserBuilder()
.SetUrls({GURL(base::StringPrintf(kTestUrlFormat, 1)),
GURL(base::StringPrintf(kTestUrlFormat, 2))})
.SetIsLacros(false)
.SetGenericBuilder(SavedDeskGenericAppBuilder().SetWindowId(
kBrowserWindowId))
.Build())
.Build();

EXPECT_THAT(
Expand All @@ -956,9 +961,14 @@ TEST_F(DeskSyncBridgeTest, EnsureLacrosBrowserWindowsCanBeSavedProperly) {
SavedDeskBuilder()
.SetUuid(base::StringPrintf(kUuidFormat, kDefaultTemplateIndex))
.SetName(base::StringPrintf(kNameFormat, kDefaultTemplateIndex))
.AddLacrosBrowserAppWindow(
kBrowserWindowId, {GURL(base::StringPrintf(kTestUrlFormat, 1)),
GURL(base::StringPrintf(kTestUrlFormat, 2))})
.AddAppWindow(
SavedDeskBrowserBuilder()
.SetUrls({GURL(base::StringPrintf(kTestUrlFormat, 1)),
GURL(base::StringPrintf(kTestUrlFormat, 2))})
.SetIsLacros(true)
.SetGenericBuilder(SavedDeskGenericAppBuilder().SetWindowId(
kBrowserWindowId))
.Build())
.Build();

EXPECT_THAT(
Expand All @@ -974,8 +984,14 @@ TEST_F(DeskSyncBridgeTest, EnsurePwaInAshChromeCanBeSavedProperly) {
SavedDeskBuilder()
.SetUuid(base::StringPrintf(kUuidFormat, kDefaultTemplateIndex))
.SetName(base::StringPrintf(kNameFormat, kDefaultTemplateIndex))
.AddAshPwaAppWindow(kPwaWindowId,
base::StringPrintf(kTestUrlFormat, 1))
.AddAppWindow(
SavedDeskBrowserBuilder()
.SetUrls({GURL(base::StringPrintf(kTestUrlFormat, 1))})
.SetIsLacros(false)
.SetIsApp(true)
.SetGenericBuilder(
SavedDeskGenericAppBuilder().SetWindowId(kPwaWindowId))
.Build())
.Build();

EXPECT_THAT(
Expand All @@ -991,8 +1007,14 @@ TEST_F(DeskSyncBridgeTest, EnsurePwaInLacrosChromeCanBeSavedProperly) {
SavedDeskBuilder()
.SetUuid(base::StringPrintf(kUuidFormat, kDefaultTemplateIndex))
.SetName(base::StringPrintf(kNameFormat, kDefaultTemplateIndex))
.AddLacrosPwaAppWindow(kPwaWindowId,
base::StringPrintf(kTestUrlFormat, 1))
.AddAppWindow(
SavedDeskBrowserBuilder()
.SetUrls({GURL(base::StringPrintf(kTestUrlFormat, 1))})
.SetIsLacros(true)
.SetIsApp(true)
.SetGenericBuilder(
SavedDeskGenericAppBuilder().SetWindowId(kPwaWindowId))
.Build())
.Build();

EXPECT_THAT(
Expand All @@ -1008,8 +1030,10 @@ TEST_F(DeskSyncBridgeTest, EnsureChromeAppCanBeSavedProperly) {
SavedDeskBuilder()
.SetUuid(base::StringPrintf(kUuidFormat, kDefaultTemplateIndex))
.SetName(base::StringPrintf(kNameFormat, kDefaultTemplateIndex))
.AddChromeAppWindow(kChromeAppWindowId,
desk_test_util::kTestChromeAppId)
.AddAppWindow(SavedDeskGenericAppBuilder()
.SetAppId(desk_test_util::kTestChromeAppId)
.SetWindowId(kChromeAppWindowId)
.Build())
.Build();

EXPECT_THAT(
Expand All @@ -1026,8 +1050,10 @@ TEST_F(DeskSyncBridgeTest, EnsureLacrosChromeAppCanBeSavedProperly) {
SavedDeskBuilder()
.SetUuid(base::StringPrintf(kUuidFormat, kDefaultTemplateIndex))
.SetName(base::StringPrintf(kNameFormat, kDefaultTemplateIndex))
.AddChromeAppWindow(kChromeAppWindowId,
desk_test_util::kTestLacrosChromeAppId)
.AddAppWindow(SavedDeskGenericAppBuilder()
.SetAppId(desk_test_util::kTestLacrosChromeAppId)
.SetWindowId(kChromeAppWindowId)
.Build())
.Build();

EXPECT_THAT(
Expand All @@ -1045,10 +1071,14 @@ TEST_F(DeskSyncBridgeTest, EnsureUnsupportedAppCanBeIgnored) {
SavedDeskBuilder()
.SetUuid(base::StringPrintf(kUuidFormat, kDefaultTemplateIndex))
.SetName(base::StringPrintf(kNameFormat, kDefaultTemplateIndex))
.AddChromeAppWindow(kChromeAppWindowId,
desk_test_util::kTestChromeAppId)
.AddGenericAppWindow(kUnsupportedAppWindowId,
desk_test_util::kTestUnsupportedAppId)
.AddAppWindow(SavedDeskGenericAppBuilder()
.SetWindowId(kChromeAppWindowId)
.SetAppId(desk_test_util::kTestChromeAppId)
.Build())
.AddAppWindow(SavedDeskGenericAppBuilder()
.SetWindowId(kUnsupportedAppWindowId)
.SetAppId(desk_test_util::kTestUnsupportedAppId)
.Build())
.Build();

EXPECT_THAT(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -365,8 +365,12 @@ TEST_F(DeskTemplateConversionTest, EnsureLacrosBrowserWindowsSavedProperly) {
.SetName(kBrowserTemplateName)
.SetType(ash::DeskTemplateType::kSaveAndRecall)
.SetCreatedTime(created_time)
.AddLacrosBrowserAppWindow(kBrowserWindowId,
{GURL(kBrowserUrl1), GURL(kBrowserUrl2)})
.AddAppWindow(
SavedDeskBrowserBuilder()
.SetGenericBuilder(SavedDeskGenericAppBuilder().SetWindowId(
kBrowserWindowId))
.SetUrls({GURL(kBrowserUrl1), GURL(kBrowserUrl2)})
.Build())
.Build();

base::Value desk_template_value =
Expand Down

0 comments on commit cd991f2

Please sign in to comment.