5434c9d370
Now TestWorkspaceBuilder has the logic to add hotseat icons and the operations to add items to the Workspace is done in batches which is faster and more stable. To submit everything in batches it uses the FavoriteItemsTransaction. This improves the design because TestWorkspaceBuilder and HomeScreenImageTest belong to the Test layer and they should only deal with the logic to run a test and TestWorkspaceBuilder is the Model layer and holds all the logic to interact with the Launcher model/data, so this separates the concern of each class. Also, chagned the name from CellLayoutBoardBuilder to TestWorkspaceBuilder to make it clearer. Bug: 243440737 Bug: 235518637 Bug: 242323136 Test: atest HomeScreenImageTest Test: atest ReorderWidgets Change-Id: I14eef064fade153b8362537743b061958bb3071d
89 lines
2.8 KiB
Java
89 lines
2.8 KiB
Java
/*
|
|
* Copyright (C) 2022 The Android Open Source Project
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
package com.android.launcher3.celllayout.testcases;
|
|
|
|
import android.graphics.Point;
|
|
|
|
import java.util.Map;
|
|
|
|
/**
|
|
* The grids represent the workspace to be build by TestWorkspaceBuilder, to see what each character
|
|
* in the board mean refer to {@code CellType}
|
|
*/
|
|
public class FullReorderCase {
|
|
|
|
/** 5x5 Test
|
|
**/
|
|
private static final String START_BOARD_STR_5x5 = ""
|
|
+ "xxxxx\n"
|
|
+ "222mm\n"
|
|
+ "222mm\n"
|
|
+ "ii111\n"
|
|
+ "ii111";
|
|
private static final Point MOVE_TO_5x5 = new Point(0, 4);
|
|
private static final String END_BOARD_STR_5x5 = ""
|
|
+ "xxxxx\n"
|
|
+ "222ii\n"
|
|
+ "222ii\n"
|
|
+ "mm111\n"
|
|
+ "mm111";
|
|
private static final ReorderTestCase TEST_CASE_5x5 = new ReorderTestCase(START_BOARD_STR_5x5,
|
|
MOVE_TO_5x5,
|
|
END_BOARD_STR_5x5);
|
|
|
|
/** 6x5 Test
|
|
**/
|
|
private static final String START_BOARD_STR_6x5 = ""
|
|
+ "xxxxxx\n"
|
|
+ "2222mm\n"
|
|
+ "2222mm\n"
|
|
+ "ii1111\n"
|
|
+ "ii1111";
|
|
private static final Point MOVE_TO_6x5 = new Point(0, 4);
|
|
private static final String END_BOARD_STR_6x5 = ""
|
|
+ "xxxxxx\n"
|
|
+ "2222ii\n"
|
|
+ "2222ii\n"
|
|
+ "mm1111\n"
|
|
+ "mm1111";
|
|
private static final ReorderTestCase TEST_CASE_6x5 = new ReorderTestCase(START_BOARD_STR_6x5,
|
|
MOVE_TO_6x5,
|
|
END_BOARD_STR_6x5);
|
|
|
|
/** 4x4 Test
|
|
**/
|
|
private static final String START_BOARD_STR_4x4 = ""
|
|
+ "xxxx\n"
|
|
+ "22mm\n"
|
|
+ "iimm\n"
|
|
+ "ii11";
|
|
private static final Point MOVE_TO_4x4 = new Point(0, 3);
|
|
private static final String END_BOARD_STR_4x4 = ""
|
|
+ "xxxx\n"
|
|
+ "22ii\n"
|
|
+ "mmii\n"
|
|
+ "mm11";
|
|
|
|
private static final ReorderTestCase TEST_CASE_4x4 = new ReorderTestCase(START_BOARD_STR_4x4,
|
|
MOVE_TO_4x4,
|
|
END_BOARD_STR_4x4);
|
|
|
|
public static final Map<Point, ReorderTestCase> TEST_BY_GRID_SIZE =
|
|
Map.of(new Point(5, 5), TEST_CASE_5x5,
|
|
new Point(6, 5), TEST_CASE_6x5,
|
|
new Point(4, 4), TEST_CASE_4x4);
|
|
}
|