104c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka/* 204c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka * Copyright (C) 2011 The Android Open Source Project 304c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka * 4ce6bcdd1a547c9874f05a08074cafdfea16196d6Tadashi G. Takaoka * Licensed under the Apache License, Version 2.0 (the "License"); 5ce6bcdd1a547c9874f05a08074cafdfea16196d6Tadashi G. Takaoka * you may not use this file except in compliance with the License. 6ce6bcdd1a547c9874f05a08074cafdfea16196d6Tadashi G. Takaoka * You may obtain a copy of the License at 704c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka * 8ce6bcdd1a547c9874f05a08074cafdfea16196d6Tadashi G. Takaoka * http://www.apache.org/licenses/LICENSE-2.0 904c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka * 1004c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka * Unless required by applicable law or agreed to in writing, software 11ce6bcdd1a547c9874f05a08074cafdfea16196d6Tadashi G. Takaoka * distributed under the License is distributed on an "AS IS" BASIS, 12ce6bcdd1a547c9874f05a08074cafdfea16196d6Tadashi G. Takaoka * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13ce6bcdd1a547c9874f05a08074cafdfea16196d6Tadashi G. Takaoka * See the License for the specific language governing permissions and 14ce6bcdd1a547c9874f05a08074cafdfea16196d6Tadashi G. Takaoka * limitations under the License. 1504c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka */ 1604c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka 1732572948d7e3956efebcbd69d7c7d8403bb659e6Tadashi G. Takaokapackage com.android.inputmethod.keyboard; 1804c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka 1904c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaokaimport android.test.AndroidTestCase; 20307f49b8c1e954cfcba4f12ff74b22803825ca15Tadashi G. Takaokaimport android.test.suitebuilder.annotation.MediumTest; 2104c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka 2235ff94547c16c84c5b6fafdae0b4a683be782b97Tadashi G. Takaokaimport com.android.inputmethod.keyboard.MoreKeysKeyboard.MoreKeysKeyboardParams; 232affaf91a04d63e0994102299816014a8bbe11e1Tadashi G. Takaoka 24307f49b8c1e954cfcba4f12ff74b22803825ca15Tadashi G. Takaoka@MediumTest 25a9fc8622fe6024a3740895db354829f574ddfa75Tadashi G. Takaokapublic class MoreKeysKeyboardBuilderMaxOrderTests extends AndroidTestCase { 2604c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka private static final int WIDTH = 10; 2704c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka private static final int HEIGHT = 10; 2804c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka 295d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka private static final int KEYBOARD_WIDTH = WIDTH * 10; 306213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka private static final int XPOS_L0 = WIDTH * 0 + WIDTH / 2; 316213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka private static final int XPOS_L1 = WIDTH * 1 + WIDTH / 2; 326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka private static final int XPOS_L2 = WIDTH * 2 + WIDTH / 2; 336213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka private static final int XPOS_L3 = WIDTH * 3 + WIDTH / 2; 346213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka private static final int XPOS_M0 = WIDTH * 4 + WIDTH / 2; 356213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka private static final int XPOS_M1 = WIDTH * 5 + WIDTH / 2; 366213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka private static final int XPOS_R3 = WIDTH * 6 + WIDTH / 2; 376213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka private static final int XPOS_R2 = WIDTH * 7 + WIDTH / 2; 386213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka private static final int XPOS_R1 = WIDTH * 8 + WIDTH / 2; 396213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka private static final int XPOS_R0 = WIDTH * 9 + WIDTH / 2; 405d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 4104c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka @Override 4204c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka protected void setUp() throws Exception { 4304c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka super.setUp(); 4404c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka } 4504c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka 46b12c2af32e09624e1298e0109441b0f4d74b74ddTadashi G. Takaoka private static MoreKeysKeyboardParams createParams(final int numKeys, final int maxColumns, 47b12c2af32e09624e1298e0109441b0f4d74b74ddTadashi G. Takaoka final int coordXInParent) { 4842fd1d2d72c097b2227d4b22f0f824dbb34a4d0cTadashi G. Takaoka final MoreKeysKeyboardParams params = new MoreKeysKeyboardParams(); 49b12c2af32e09624e1298e0109441b0f4d74b74ddTadashi G. Takaoka params.setParameters(numKeys, maxColumns, WIDTH, HEIGHT, coordXInParent, KEYBOARD_WIDTH, 50a9fc8622fe6024a3740895db354829f574ddfa75Tadashi G. Takaoka false /* isMoreKeysFixedColumn */, false /* isMoreKeysFixedOrder */, 51a9fc8622fe6024a3740895db354829f574ddfa75Tadashi G. Takaoka 0 /* dividerWidth */); 5242fd1d2d72c097b2227d4b22f0f824dbb34a4d0cTadashi G. Takaoka return params; 536213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 546213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 5504c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka public void testLayoutError() { 562affaf91a04d63e0994102299816014a8bbe11e1Tadashi G. Takaoka MoreKeysKeyboardParams params = null; 5704c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka try { 586213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka final int maxColumns = KEYBOARD_WIDTH / WIDTH; 59b12c2af32e09624e1298e0109441b0f4d74b74ddTadashi G. Takaoka params = createParams(maxColumns + 1, maxColumns + 1, HEIGHT); 6004c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka fail("Should throw IllegalArgumentException"); 6104c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka } catch (IllegalArgumentException e) { 622affaf91a04d63e0994102299816014a8bbe11e1Tadashi G. Takaoka // Too small keyboard to hold more keys keyboard. 6304c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka } 642affaf91a04d63e0994102299816014a8bbe11e1Tadashi G. Takaoka assertNull("Too small keyboard to hold more keys keyboard", params); 6504c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka } 6604c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka 672affaf91a04d63e0994102299816014a8bbe11e1Tadashi G. Takaoka // More keys keyboard layout test. 682affaf91a04d63e0994102299816014a8bbe11e1Tadashi G. Takaoka // "[n]" represents n-th key position in more keys keyboard. 69aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // "<1>" is the default key. 7004c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka 71aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // <1> 726213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout1KeyMax5M0() { 736213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(1, 5, XPOS_M0); 746213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 M0 columns", 1, params.mNumColumns); 756213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 M0 rows", 1, params.mNumRows); 766213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 M0 left", 0, params.mLeftKeys); 776213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 M0 right", 1, params.mRightKeys); 78aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("1 key max 5 M0 <1>", 0, params.getColumnPos(0)); 796213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 M0 adjust", 0, params.mTopRowAdjustment); 806213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 M0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 815d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 825d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 83aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> 846213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout1KeyMax5L0() { 856213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(1, 5, XPOS_L0); 866213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L0 columns", 1, params.mNumColumns); 876213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L0 rows", 1, params.mNumRows); 886213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L0 left", 0, params.mLeftKeys); 896213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L0 right", 1, params.mRightKeys); 90aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("1 key max 5 L0 <1>", 0, params.getColumnPos(0)); 916213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L0 adjust", 0, params.mTopRowAdjustment); 926213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 935d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 945d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 95aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> 966213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout1KeyMax5L1() { 976213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(1, 5, XPOS_L1); 986213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L1 columns", 1, params.mNumColumns); 996213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L1 rows", 1, params.mNumRows); 1006213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L1 left", 0, params.mLeftKeys); 1016213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L1 right", 1, params.mRightKeys); 102aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("1 key max 5 L1 <1>", 0, params.getColumnPos(0)); 1036213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L1 adjust", 0, params.mTopRowAdjustment); 1046213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 1055d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 1065d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 107aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ ___ <1> 1086213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout1KeyMax5L2() { 1096213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(1, 5, XPOS_L2); 1106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L2 columns", 1, params.mNumColumns); 1116213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L2 rows", 1, params.mNumRows); 1126213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L2 left", 0, params.mLeftKeys); 1136213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L2 right", 1, params.mRightKeys); 114aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("1 key max 5 L2 <1>", 0, params.getColumnPos(0)); 1156213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L2 adjust", 0, params.mTopRowAdjustment); 1166213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 L2 default", WIDTH * 0, params.getDefaultKeyCoordX()); 1175d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 1185d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 119aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // <1>| 1206213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout1KeyMax5R0() { 1216213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(1, 5, XPOS_R0); 1226213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R0 columns", 1, params.mNumColumns); 1236213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R0 rows", 1, params.mNumRows); 1246213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R0 left", 0, params.mLeftKeys); 1256213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R0 right", 1, params.mRightKeys); 126aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("1 key max 5 R0 <1>", 0, params.getColumnPos(0)); 1276213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R0 adjust", 0, params.mTopRowAdjustment); 1286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 1295d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 1305d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 131aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // <1> ___| 1326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout1KeyMax5R1() { 1336213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(1, 5, XPOS_R1); 1346213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R1 columns", 1, params.mNumColumns); 1356213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R1 rows", 1, params.mNumRows); 1366213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R1 left", 0, params.mLeftKeys); 1376213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R1 right", 1, params.mRightKeys); 138aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("1 key max 5 R1 <1>", 0, params.getColumnPos(0)); 1396213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R1 adjust", 0, params.mTopRowAdjustment); 1406213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 1415d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 1425d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 143aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // <1> ___ ___| 1446213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout1KeyMax5R2() { 1456213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(1, 5, XPOS_R2); 1466213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R2 columns", 1, params.mNumColumns); 1476213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R2 rows", 1, params.mNumRows); 1486213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R2 left", 0, params.mLeftKeys); 1496213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R2 right", 1, params.mRightKeys); 150aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("1 key max 5 R2 <1>", 0, params.getColumnPos(0)); 1516213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R2 adjust", 0, params.mTopRowAdjustment); 1526213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("1 key max 5 R2 default", WIDTH * 0, params.getDefaultKeyCoordX()); 15304c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka } 15404c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka 155aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // <1> [2] 1566213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout2KeyMax5M0() { 1576213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(2, 5, XPOS_M0); 1586213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 M0 columns", 2, params.mNumColumns); 1596213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 M0 rows", 1, params.mNumRows); 1606213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 M0 left", 0, params.mLeftKeys); 1616213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 M0 right", 2, params.mRightKeys); 162aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("2 key max 5 M0 <1>", 0, params.getColumnPos(0)); 1636213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 M0 [2]", 1, params.getColumnPos(1)); 1646213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 M0 adjust", 0, params.mTopRowAdjustment); 1656213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 M0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 1665d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 1675d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 168aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] 1696213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout2KeyMax5L0() { 1706213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(2, 5, XPOS_L0); 1716213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L0 columns", 2, params.mNumColumns); 1726213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L0 rows", 1, params.mNumRows); 1736213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L0 left", 0, params.mLeftKeys); 1746213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L0 right", 2, params.mRightKeys); 175aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("2 key max 5 L0 <1>", 0, params.getColumnPos(0)); 1766213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L0 [2]", 1, params.getColumnPos(1)); 1776213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L0 adjust", 0, params.mTopRowAdjustment); 1786213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 1795d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 1805d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 181aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] 1826213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout2KeyMax5L1() { 1836213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(2, 5, XPOS_L1); 1846213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L1 columns", 2, params.mNumColumns); 1856213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L1 rows", 1, params.mNumRows); 1866213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L1 left", 0, params.mLeftKeys); 1876213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L1 right", 2, params.mRightKeys); 188aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("2 key max 5 L1 <1>", 0, params.getColumnPos(0)); 1896213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L1 [2]", 1, params.getColumnPos(1)); 1906213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L1 adjust", 0, params.mTopRowAdjustment); 1916213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 1925d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 1935d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 194aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ ___ <1> [2] 1956213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout2KeyMax5L2() { 1966213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(2, 5, XPOS_L2); 1976213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L2 columns", 2, params.mNumColumns); 1986213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L2 rows", 1, params.mNumRows); 1996213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L2 left", 0, params.mLeftKeys); 2006213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L2 right", 2, params.mRightKeys); 201aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("2 key max 5 L2 <1>", 0, params.getColumnPos(0)); 2026213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L2 [2]", 1, params.getColumnPos(1)); 2036213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L2 adjust", 0, params.mTopRowAdjustment); 2046213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 L2 default", WIDTH * 0, params.getDefaultKeyCoordX()); 2055d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 2065d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 207aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [2] <1>| 2086213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout2KeyMax5R0() { 2096213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(2, 5, XPOS_R0); 2106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R0 columns", 2, params.mNumColumns); 2116213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R0 rows", 1, params.mNumRows); 2126213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R0 left", 1, params.mLeftKeys); 2136213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R0 right", 1, params.mRightKeys); 214aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("2 key max 5 R0 <1>", 0, params.getColumnPos(0)); 2156213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R0 [2]", -1, params.getColumnPos(1)); 2166213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R0 adjust", 0, params.mTopRowAdjustment); 2176213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 2185d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 2195d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 220aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [2] <1> ___| 2216213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout2KeyMax5R1() { 2226213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(2, 5, XPOS_R1); 2236213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R1 columns", 2, params.mNumColumns); 2246213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R1 rows", 1, params.mNumRows); 2256213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R1 left", 1, params.mLeftKeys); 2266213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R1 right", 1, params.mRightKeys); 227aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("2 key max 5 R1 <1>", 0, params.getColumnPos(0)); 2286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R1 [2]", -1, params.getColumnPos(1)); 2296213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R1 adjust", 0, params.mTopRowAdjustment); 2306213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R1 default", WIDTH * 1, params.getDefaultKeyCoordX()); 2316213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 2326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 233aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // <1> [2] ___| 2346213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout2KeyMax5R2() { 2356213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(2, 5, XPOS_R2); 2366213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R2 columns", 2, params.mNumColumns); 2376213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R2 rows", 1, params.mNumRows); 2386213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R2 left", 0, params.mLeftKeys); 2396213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R2 right", 2, params.mRightKeys); 240aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("2 key max 5 R2 <1>", 0, params.getColumnPos(0)); 2416213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R2 [2]", 1, params.getColumnPos(1)); 2426213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R2 adjust", 0, params.mTopRowAdjustment); 2436213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("2 key max 5 R2 default", WIDTH * 0, params.getDefaultKeyCoordX()); 24404c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka } 24504c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka 246aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] 2476213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout3KeyMax5M0() { 2486213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(3, 5, XPOS_M0); 249aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 M0 columns", 3, params.mNumColumns); 250aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 M0 rows", 1, params.mNumRows); 251aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 M0 left", 1, params.mLeftKeys); 252aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 M0 right", 2, params.mRightKeys); 253aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 M0 <1>", 0, params.getColumnPos(0)); 254aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 M0 [2]", 1, params.getColumnPos(1)); 255aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 M0 [3]", -1, params.getColumnPos(2)); 256aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 M0 adjust", 0, params.mTopRowAdjustment); 257aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 M0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 258aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 259aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 260aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] [3] 2616213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout3KeyMax5L0() { 2626213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(3, 5, XPOS_L0); 2636213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L0 columns", 3, params.mNumColumns); 2646213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L0 rows", 1, params.mNumRows); 2656213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L0 left", 0, params.mLeftKeys); 2666213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L0 right", 3, params.mRightKeys); 267aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 L0 <1>", 0, params.getColumnPos(0)); 2686213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L0 [2]", 1, params.getColumnPos(1)); 2696213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L0 [3]", 2, params.getColumnPos(2)); 2706213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L0 adjust", 0, params.mTopRowAdjustment); 2716213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 2725d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 2735d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 274aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] [3] 2756213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout3KeyMax5L1() { 2766213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(3, 5, XPOS_L1); 2776213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L1 columns", 3, params.mNumColumns); 2786213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L1 rows", 1, params.mNumRows); 2796213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L1 left", 0, params.mLeftKeys); 2806213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L1 right", 3, params.mRightKeys); 281aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 L1 <1>", 0, params.getColumnPos(0)); 2826213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L1 [2]", 1, params.getColumnPos(1)); 2836213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L1 [3]", 2, params.getColumnPos(2)); 2846213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L1 adjust", 0, params.mTopRowAdjustment); 2856213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 2866213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 2876213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 288aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] <1> [2] 2896213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout3KeyMax5L2() { 2906213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(3, 5, XPOS_L2); 2916213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L2 columns", 3, params.mNumColumns); 2926213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L2 rows", 1, params.mNumRows); 2936213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L2 left", 1, params.mLeftKeys); 2946213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L2 right", 2, params.mRightKeys); 295aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 L2 <1>", 0, params.getColumnPos(0)); 2966213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L2 [2]", 1, params.getColumnPos(1)); 2976213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L2 [3]", -1, params.getColumnPos(2)); 2986213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L2 adjust", 0, params.mTopRowAdjustment); 2996213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 L2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 3005d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 3015d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 302aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] [2] <1>| 3036213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout3KeyMax5R0() { 3046213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(3, 5, XPOS_R0); 3056213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R0 columns", 3, params.mNumColumns); 3066213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R0 rows", 1, params.mNumRows); 3076213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R0 left", 2, params.mLeftKeys); 3086213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R0 right", 1, params.mRightKeys); 309aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 R0 <1>", 0, params.getColumnPos(0)); 3106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R0 [2]", -1, params.getColumnPos(1)); 3116213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R0 [3]", -2, params.getColumnPos(2)); 3126213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R0 adjust", 0, params.mTopRowAdjustment); 3136213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R0 default", WIDTH * 2, params.getDefaultKeyCoordX()); 3145d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 3155d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 316aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] [2] <1> ___| 3176213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout3KeyMax5R1() { 3186213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(3, 5, XPOS_R1); 3196213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R1 columns", 3, params.mNumColumns); 3206213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R1 rows", 1, params.mNumRows); 3216213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R1 left", 2, params.mLeftKeys); 3226213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R1 right", 1, params.mRightKeys); 323aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 R1 <1>", 0, params.getColumnPos(0)); 3246213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R1 [2]", -1, params.getColumnPos(1)); 3256213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R1 [3]", -2, params.getColumnPos(2)); 3266213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R1 adjust", 0, params.mTopRowAdjustment); 3276213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R1 default", WIDTH * 2, params.getDefaultKeyCoordX()); 3286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 3296213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 330aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] ___| 3316213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout3KeyMax5R2() { 3326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(3, 5, XPOS_R2); 3336213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R2 columns", 3, params.mNumColumns); 3346213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R2 rows", 1, params.mNumRows); 3356213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R2 left", 1, params.mLeftKeys); 3366213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R2 right", 2, params.mRightKeys); 337aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 5 R2 <1>", 0, params.getColumnPos(0)); 3386213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R2 [2]", 1, params.getColumnPos(1)); 3396213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R2 [3]", -1, params.getColumnPos(2)); 3406213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R2 adjust", 0, params.mTopRowAdjustment); 3416213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 5 R2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 3426213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 3436213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 344aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] 345aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // <1> [2] 3466213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout3KeyMax2M0() { 3476213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(3, 2, XPOS_M0); 348aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 M0 columns", 2, params.mNumColumns); 349aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 M0 rows", 2, params.mNumRows); 350aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 M0 left", 0, params.mLeftKeys); 351aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 M0 right", 2, params.mRightKeys); 352aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 M0 <1>", 0, params.getColumnPos(0)); 353aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 M0 [2]", 1, params.getColumnPos(1)); 354aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 M0 [3]", 0, params.getColumnPos(2)); 355aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 M0 adjust", 0, params.mTopRowAdjustment); 356aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 M0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 357aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 358aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 359aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |[3] 360aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] 3616213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout3KeyMax2L0() { 3626213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(3, 2, XPOS_L0); 3636213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L0 columns", 2, params.mNumColumns); 3646213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L0 rows", 2, params.mNumRows); 3656213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L0 left", 0, params.mLeftKeys); 3666213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L0 right", 2, params.mRightKeys); 367aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 L0 <1>", 0, params.getColumnPos(0)); 3686213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L0 [2]", 1, params.getColumnPos(1)); 3696213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L0 [3]", 0, params.getColumnPos(2)); 370aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 L0 adjust", 0, params.mTopRowAdjustment); 3716213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 3726213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 3736213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 374aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] 375aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] 3766213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout3KeyMax2L1() { 3776213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(3, 2, XPOS_L1); 3786213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L1 columns", 2, params.mNumColumns); 3796213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L1 rows", 2, params.mNumRows); 3806213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L1 left", 0, params.mLeftKeys); 3816213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L1 right", 2, params.mRightKeys); 382aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 L1 <1>", 0, params.getColumnPos(0)); 3836213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L1 [2]", 1, params.getColumnPos(1)); 3846213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L1 [3]", 0, params.getColumnPos(2)); 385aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 L1 adjust", 0, params.mTopRowAdjustment); 3866213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 3876213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 3886213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 389aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // | [3] 390aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ ___ <1> [2] 3916213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout3KeyMax2L2() { 3926213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(3, 2, XPOS_L2); 3936213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L2 columns", 2, params.mNumColumns); 3946213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L2 rows", 2, params.mNumRows); 3956213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L2 left", 0, params.mLeftKeys); 3966213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L2 right", 2, params.mRightKeys); 397aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 L2 <1>", 0, params.getColumnPos(0)); 3986213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L2 [2]", 1, params.getColumnPos(1)); 3996213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L2 [3]", 0, params.getColumnPos(2)); 400aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 L2 adjust", 0, params.mTopRowAdjustment); 4016213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 L2 default", WIDTH * 0, params.getDefaultKeyCoordX()); 4026213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 4036213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 404aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3]| 405aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [2] <1>| 4066213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout3KeyMax2R0() { 4076213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(3, 2, XPOS_R0); 4086213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R0 columns", 2, params.mNumColumns); 4096213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R0 rows", 2, params.mNumRows); 4106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R0 left", 1, params.mLeftKeys); 4116213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R0 right", 1, params.mRightKeys); 412aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 R0 <1>", 0, params.getColumnPos(0)); 4136213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R0 [2]", -1, params.getColumnPos(1)); 4146213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R0 [3]", 0, params.getColumnPos(2)); 415aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 R0 adjust", 0, params.mTopRowAdjustment); 4166213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 4176213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 4186213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 419aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] | 420aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [2] <1> ___| 4216213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout3KeyMax2R1() { 4226213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(3, 2, XPOS_R1); 4236213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R1 columns", 2, params.mNumColumns); 4246213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R1 rows", 2, params.mNumRows); 4256213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R1 left", 1, params.mLeftKeys); 4266213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R1 right", 1, params.mRightKeys); 427aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 R1 <1>", 0, params.getColumnPos(0)); 4286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R1 [2]", -1, params.getColumnPos(1)); 4296213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R1 [3]", 0, params.getColumnPos(2)); 430aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 R1 adjust", 0, params.mTopRowAdjustment); 4316213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R1 default", WIDTH * 1, params.getDefaultKeyCoordX()); 4326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 4336213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 434aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] | 435aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // <1> [2] ___| 4366213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout3KeyMax2R2() { 4376213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(3, 2, XPOS_R2); 4386213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R2 columns", 2, params.mNumColumns); 4396213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R2 rows", 2, params.mNumRows); 4406213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R2 left", 0, params.mLeftKeys); 4416213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R2 right", 2, params.mRightKeys); 442aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 R2 <1>", 0, params.getColumnPos(0)); 4436213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R2 [2]", 1, params.getColumnPos(1)); 4446213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R2 [3]", 0, params.getColumnPos(2)); 445aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("3 key max 2 R2 adjust", 0, params.mTopRowAdjustment); 4466213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("3 key max 2 R2 default", WIDTH * 0, params.getDefaultKeyCoordX()); 44704c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka } 44804c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka 449aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] [4] 450aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // <1> [2] 451aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout4KeyMax3M0() { 452aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 3, XPOS_M0); 453aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 M0 columns", 2, params.mNumColumns); 454aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 M0 rows", 2, params.mNumRows); 455aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 M0 left", 0, params.mLeftKeys); 456aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 M0 right", 2, params.mRightKeys); 457aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 M0 <1>", 0, params.getColumnPos(0)); 458aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 M0 [2]", 1, params.getColumnPos(1)); 459aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 M0 [3]", 0, params.getColumnPos(2)); 460aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 M0 [4]", 1, params.getColumnPos(3)); 461aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 M0 adjust", 0, params.mTopRowAdjustment); 462aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 M0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 463aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 464aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 465aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |[3] [4] 466aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] 467aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout4KeyMax3L0() { 468aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 3, XPOS_L0); 469aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L0 columns", 2, params.mNumColumns); 470aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L0 rows", 2, params.mNumRows); 471aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L0 left", 0, params.mLeftKeys); 472aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L0 right", 2, params.mRightKeys); 473aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L0 <1>", 0, params.getColumnPos(0)); 474aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L0 [2]", 1, params.getColumnPos(1)); 475aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L0 [3]", 0, params.getColumnPos(2)); 476aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L0 [4]", 1, params.getColumnPos(3)); 477aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L0 adjust", 0, params.mTopRowAdjustment); 478aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 479aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 480aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 481aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] [4] 482aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] 483aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout4KeyMax3L1() { 484aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 3, XPOS_L1); 485aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L1 columns", 2, params.mNumColumns); 486aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L1 rows", 2, params.mNumRows); 487aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L1 left", 0, params.mLeftKeys); 488aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L1 right", 2, params.mRightKeys); 489aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L1 <1>", 0, params.getColumnPos(0)); 490aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L1 [2]", 1, params.getColumnPos(1)); 491aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L1 [3]", 0, params.getColumnPos(2)); 492aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L1 [4]", 1, params.getColumnPos(3)); 493aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L1 adjust", 0, params.mTopRowAdjustment); 494aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 495aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 496aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 497aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ ___ [3] [4] 498aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ ___ <1> [2] 499aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout4KeyMax3L2() { 500aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 3, XPOS_L2); 501aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L2 columns", 2, params.mNumColumns); 502aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L2 rows", 2, params.mNumRows); 503aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L2 left", 0, params.mLeftKeys); 504aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L2 right", 2, params.mRightKeys); 505aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L2 <1>", 0, params.getColumnPos(0)); 506aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L2 [2]", 1, params.getColumnPos(1)); 507aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L2 [3]", 0, params.getColumnPos(2)); 508aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L2 [4]", 1, params.getColumnPos(3)); 509aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L2 adjust", 0, params.mTopRowAdjustment); 510aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 L2 default", WIDTH * 0, params.getDefaultKeyCoordX()); 511aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 512aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 513aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [3]| 514aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [2] <1>| 515aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout4KeyMax3R0() { 516aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 3, XPOS_R0); 517aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R0 columns", 2, params.mNumColumns); 518aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R0 rows", 2, params.mNumRows); 519aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R0 left", 1, params.mLeftKeys); 520aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R0 right", 1, params.mRightKeys); 521aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R0 <1>", 0, params.getColumnPos(0)); 522aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R0 [2]", -1, params.getColumnPos(1)); 523aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R0 [3]", 0, params.getColumnPos(2)); 524aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R0 [4]", -1, params.getColumnPos(3)); 525aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R0 adjust", 0, params.mTopRowAdjustment); 526aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 527aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 528aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 529aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [3] ___| 530aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [2] <1> ___| 531aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout4KeyMax3R1() { 532aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 3, XPOS_R1); 533aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R1 columns", 2, params.mNumColumns); 534aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R1 rows", 2, params.mNumRows); 535aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R1 left", 1, params.mLeftKeys); 536aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R1 right", 1, params.mRightKeys); 537aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R1 <1>", 0, params.getColumnPos(0)); 538aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R1 [2]", -1, params.getColumnPos(1)); 539aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R1 [3]", 0, params.getColumnPos(2)); 540aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R1 [4]", -1, params.getColumnPos(3)); 541aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R1 adjust", 0, params.mTopRowAdjustment); 542aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R1 default", WIDTH * 1, params.getDefaultKeyCoordX()); 543aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 544aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 545aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] [4] ___| 546aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // <1> [2] ___| 547aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout4KeyMax3R2() { 548aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 3, XPOS_R2); 549aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R2 columns", 2, params.mNumColumns); 550aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R2 rows", 2, params.mNumRows); 551aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R2 left", 0, params.mLeftKeys); 552aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R2 right", 2, params.mRightKeys); 553aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R2 <1>", 0, params.getColumnPos(0)); 554aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R2 [2]", 1, params.getColumnPos(1)); 555aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R2 [3]", 0, params.getColumnPos(2)); 556aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R2 [4]", 1, params.getColumnPos(3)); 557aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R2 adjust", 0, params.mTopRowAdjustment); 558aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 3 R2 default", WIDTH * 0, params.getDefaultKeyCoordX()); 559aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 560aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 561aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] [4] 562aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout4KeyMax4M0() { 563aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 4, XPOS_M0); 564aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 M0 columns", 4, params.mNumColumns); 565aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 M0 rows", 1, params.mNumRows); 566aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 M0 left", 1, params.mLeftKeys); 567aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 M0 right", 3, params.mRightKeys); 568aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 M0 <1>", 0, params.getColumnPos(0)); 569aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 M0 [2]", 1, params.getColumnPos(1)); 570aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 M0 [3]", -1, params.getColumnPos(2)); 571aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 M0 [4]", 2, params.getColumnPos(3)); 572aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 M0 adjust", 0, params.mTopRowAdjustment); 573aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 M0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 574aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 575aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 576aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] [3] [4] 577aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout4KeyMax4L0() { 578aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 4, XPOS_L0); 579aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L0 columns", 4, params.mNumColumns); 580aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L0 rows", 1, params.mNumRows); 581aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L0 left", 0, params.mLeftKeys); 582aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L0 right", 4, params.mRightKeys); 583aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L0 <1>", 0, params.getColumnPos(0)); 584aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L0 [2]", 1, params.getColumnPos(1)); 585aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L0 [3]", 2, params.getColumnPos(2)); 586aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L0 [4]", 3, params.getColumnPos(3)); 587aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L0 adjust", 0, params.mTopRowAdjustment); 588aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 589aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 590aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 591aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] [3] [4] 592aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout4KeyMax4L1() { 593aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 4, XPOS_L1); 594aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L1 columns", 4, params.mNumColumns); 595aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L1 rows", 1, params.mNumRows); 596aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L1 left", 0, params.mLeftKeys); 597aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L1 right", 4, params.mRightKeys); 598aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L1 <1>", 0, params.getColumnPos(0)); 599aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L1 [2]", 1, params.getColumnPos(1)); 600aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L1 [3]", 2, params.getColumnPos(2)); 601aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L1 [4]", 3, params.getColumnPos(3)); 602aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L1 adjust", 0, params.mTopRowAdjustment); 603aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 604aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 605aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 606aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] <1> [2] [4] 607aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout4KeyMax4L2() { 608aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 4, XPOS_L2); 609aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L2 columns", 4, params.mNumColumns); 610aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L2 rows", 1, params.mNumRows); 611aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L2 left", 1, params.mLeftKeys); 612aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L2 right", 3, params.mRightKeys); 613aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L2 <1>", 0, params.getColumnPos(0)); 614aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L2 [2]", 1, params.getColumnPos(1)); 615aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L2 [3]", -1, params.getColumnPos(2)); 616aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L2 [4]", 2, params.getColumnPos(3)); 617aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L2 adjust", 0, params.mTopRowAdjustment); 618aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 L2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 619aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 620aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 621aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [3] [2] <1>| 622aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout4KeyMax4R0() { 623aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 4, XPOS_R0); 624aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R0 columns", 4, params.mNumColumns); 625aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R0 rows", 1, params.mNumRows); 626aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R0 left", 3, params.mLeftKeys); 627aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R0 right", 1, params.mRightKeys); 628aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R0 <1>", 0, params.getColumnPos(0)); 629aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R0 [2]", -1, params.getColumnPos(1)); 630aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R0 [3]", -2, params.getColumnPos(2)); 631aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R0 [4]", -3, params.getColumnPos(3)); 632aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R0 adjust", 0, params.mTopRowAdjustment); 633aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R0 default", WIDTH * 3, params.getDefaultKeyCoordX()); 634aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 635aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 636aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [3] [2] <1> ___| 637aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout4KeyMax4R1() { 638aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 4, XPOS_R1); 639aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R1 columns", 4, params.mNumColumns); 640aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R1 rows", 1, params.mNumRows); 641aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R1 left", 3, params.mLeftKeys); 642aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R1 right", 1, params.mRightKeys); 643aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R1 <1>", 0, params.getColumnPos(0)); 644aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R1 [2]", -1, params.getColumnPos(1)); 645aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R1 [3]", -2, params.getColumnPos(2)); 646aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R1 [4]", -3, params.getColumnPos(3)); 647aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R1 adjust", 0, params.mTopRowAdjustment); 648aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R1 default", WIDTH * 3, params.getDefaultKeyCoordX()); 649aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 650aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 651aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [3] <1> [2] ___| 652aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout4KeyMax4R2() { 653aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 4, XPOS_R2); 654aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R2 columns", 4, params.mNumColumns); 655aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R2 rows", 1, params.mNumRows); 656aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R2 left", 2, params.mLeftKeys); 657aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R2 right", 2, params.mRightKeys); 658aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R2 <1>", 0, params.getColumnPos(0)); 659aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R2 [2]", 1, params.getColumnPos(1)); 660aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R2 [3]", -1, params.getColumnPos(2)); 661aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R2 [4]", -2, params.getColumnPos(3)); 662aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R2 adjust", 0, params.mTopRowAdjustment); 663aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 4 R2 default", WIDTH * 2, params.getDefaultKeyCoordX()); 664aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 665aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 666aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] [4] 6676213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout4KeyMax5M0() { 6686213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 5, XPOS_M0); 669aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 M0 columns", 4, params.mNumColumns); 670aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 M0 rows", 1, params.mNumRows); 671aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 M0 left", 1, params.mLeftKeys); 672aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 M0 right", 3, params.mRightKeys); 673aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 M0 <1>", 0, params.getColumnPos(0)); 674aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 M0 [2]", 1, params.getColumnPos(1)); 675aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 M0 [3]", -1, params.getColumnPos(2)); 676aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 M0 [4]", 2, params.getColumnPos(3)); 677aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 M0 adjust", 0, params.mTopRowAdjustment); 678aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 M0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 679aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 680aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 681aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] [3] [4] 6826213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout4KeyMax5L0() { 6836213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 5, XPOS_L0); 6846213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L0 columns", 4, params.mNumColumns); 6856213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L0 rows", 1, params.mNumRows); 6866213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L0 left", 0, params.mLeftKeys); 6876213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L0 right", 4, params.mRightKeys); 688aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 L0 <1>", 0, params.getColumnPos(0)); 6896213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L0 [2]", 1, params.getColumnPos(1)); 6906213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L0 [3]", 2, params.getColumnPos(2)); 6916213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L0 [4]", 3, params.getColumnPos(3)); 6926213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L0 adjust", 0, params.mTopRowAdjustment); 6936213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 6945d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 6955d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 696aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] [3] [4] 6976213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout4KeyMax5L1() { 6986213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 5, XPOS_L1); 6996213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L1 columns", 4, params.mNumColumns); 7006213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L1 rows", 1, params.mNumRows); 7016213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L1 left", 0, params.mLeftKeys); 7026213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L1 right", 4, params.mRightKeys); 703aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 L1 <1>", 0, params.getColumnPos(0)); 7046213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L1 [2]", 1, params.getColumnPos(1)); 7056213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L1 [3]", 2, params.getColumnPos(2)); 7066213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L1 [4]", 3, params.getColumnPos(3)); 7076213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L1 adjust", 0, params.mTopRowAdjustment); 7086213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 7096213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 7106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 711aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] <1> [2] [4] 7126213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout4KeyMax5L2() { 7136213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 5, XPOS_L2); 7146213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L2 columns", 4, params.mNumColumns); 7156213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L2 rows", 1, params.mNumRows); 7166213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L2 left", 1, params.mLeftKeys); 7176213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L2 right", 3, params.mRightKeys); 718aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 L2 <1>", 0, params.getColumnPos(0)); 7196213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L2 [2]", 1, params.getColumnPos(1)); 7206213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L2 [3]", -1, params.getColumnPos(2)); 7216213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L2 [4]", 2, params.getColumnPos(3)); 7226213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L2 adjust", 0, params.mTopRowAdjustment); 7236213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 L2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 7245d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 7255d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 726aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [3] [2] <1>| 7276213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout4KeyMax5R0() { 7286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 5, XPOS_R0); 7296213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R0 columns", 4, params.mNumColumns); 7306213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R0 rows", 1, params.mNumRows); 7316213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R0 left", 3, params.mLeftKeys); 7326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R0 right", 1, params.mRightKeys); 733aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 R0 <1>", 0, params.getColumnPos(0)); 7346213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R0 [2]", -1, params.getColumnPos(1)); 7356213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R0 [3]", -2, params.getColumnPos(2)); 7366213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R0 [4]", -3, params.getColumnPos(3)); 7376213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R0 adjust", 0, params.mTopRowAdjustment); 7386213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R0 default", WIDTH * 3, params.getDefaultKeyCoordX()); 7395d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 7405d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 741aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [3] [2] <1> ___| 7426213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout4KeyMax5R1() { 7436213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 5, XPOS_R1); 7446213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R1 columns", 4, params.mNumColumns); 7456213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R1 rows", 1, params.mNumRows); 7466213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R1 left", 3, params.mLeftKeys); 7476213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R1 right", 1, params.mRightKeys); 748aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 R1 <1>", 0, params.getColumnPos(0)); 7496213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R1 [2]", -1, params.getColumnPos(1)); 7506213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R1 [3]", -2, params.getColumnPos(2)); 7516213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R1 [4]", -3, params.getColumnPos(3)); 7526213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R1 adjust", 0, params.mTopRowAdjustment); 7536213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R1 default", WIDTH * 3, params.getDefaultKeyCoordX()); 7546213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 7556213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 756aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [3] <1> [2] ___| 7576213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout4KeyMax5R2() { 7586213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(4, 5, XPOS_R2); 7596213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R2 columns", 4, params.mNumColumns); 7606213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R2 rows", 1, params.mNumRows); 7616213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R2 left", 2, params.mLeftKeys); 7626213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R2 right", 2, params.mRightKeys); 763aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("4 key max 5 R2 <1>", 0, params.getColumnPos(0)); 7646213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R2 [2]", 1, params.getColumnPos(1)); 7656213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R2 [3]", -1, params.getColumnPos(2)); 7666213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R2 [4]", -2, params.getColumnPos(3)); 7676213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R2 adjust", 0, params.mTopRowAdjustment); 7686213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("4 key max 5 R2 default", WIDTH * 2, params.getDefaultKeyCoordX()); 76904c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka } 77004c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka 771aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [5] 772aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] 773aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout5KeyMax3M0() { 774aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 3, XPOS_M0); 775aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 M0 columns", 3, params.mNumColumns); 776aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 M0 rows", 2, params.mNumRows); 777aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 M0 left", 1, params.mLeftKeys); 778aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 M0 right", 2, params.mRightKeys); 779aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 M0 <1>", 0, params.getColumnPos(0)); 780aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 M0 [2]", 1, params.getColumnPos(1)); 781aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 M0 [3]", -1, params.getColumnPos(2)); 782aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 M0 [4]", 0, params.getColumnPos(3)); 783aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 M0 [5]", 1, params.getColumnPos(4)); 784aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 M0 adjust", -1, params.mTopRowAdjustment); 785aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 M0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 786aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 787aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 788aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |[4] [5] 789aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] [3] 790aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout5KeyMax3L0() { 791aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 3, XPOS_L0); 792aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L0 columns", 3, params.mNumColumns); 793aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L0 rows", 2, params.mNumRows); 794aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L0 left", 0, params.mLeftKeys); 795aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L0 right", 3, params.mRightKeys); 796aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L0 <1>", 0, params.getColumnPos(0)); 797aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L0 [2]", 1, params.getColumnPos(1)); 798aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L0 [3]", 2, params.getColumnPos(2)); 799aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L0 [4]", 0, params.getColumnPos(3)); 800aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L0 [5]", 1, params.getColumnPos(4)); 801aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L0 adjust", 0, params.mTopRowAdjustment); 802aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 803aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 804aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 805aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [4] [5] 806aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] [3] 807aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout5KeyMax3L1() { 808aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 3, XPOS_L1); 809aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L1 columns", 3, params.mNumColumns); 810aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L1 rows", 2, params.mNumRows); 811aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L1 left", 0, params.mLeftKeys); 812aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L1 right", 3, params.mRightKeys); 813aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L1 <1>", 0, params.getColumnPos(0)); 814aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L1 [2]", 1, params.getColumnPos(1)); 815aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L1 [3]", 2, params.getColumnPos(2)); 816aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L1 [4]", 0, params.getColumnPos(3)); 817aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L1 [5]", 1, params.getColumnPos(4)); 818aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L1 adjust", 0, params.mTopRowAdjustment); 819aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 820aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 821aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 822aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [4] [5] 823aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] <1> [2] 824aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout5KeyMax3L2() { 825aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 3, XPOS_L2); 826aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L2 columns", 3, params.mNumColumns); 827aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L2 rows", 2, params.mNumRows); 828aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L2 left", 1, params.mLeftKeys); 829aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L2 right", 2, params.mRightKeys); 830aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L2 <1>", 0, params.getColumnPos(0)); 831aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L2 [2]", 1, params.getColumnPos(1)); 832aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L2 [3]", -1, params.getColumnPos(2)); 833aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L2 [4]", 0, params.getColumnPos(3)); 834aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L2 [5]", 1, params.getColumnPos(4)); 835aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L2 adjust", -1, params.mTopRowAdjustment); 836aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 L2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 837aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 838aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 839aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [4]| 840aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] [2] <1>| 841aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout5KeyMax3R0() { 842aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 3, XPOS_R0); 843aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R0 columns", 3, params.mNumColumns); 844aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R0 rows", 2, params.mNumRows); 845aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R0 left", 2, params.mLeftKeys); 846aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R0 right", 1, params.mRightKeys); 847aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R0 <1>", 0, params.getColumnPos(0)); 848aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R0 [2]", -1, params.getColumnPos(1)); 849aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R0 [3]", -2, params.getColumnPos(2)); 850aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R0 [4]", 0, params.getColumnPos(3)); 851aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R0 [5]", -1, params.getColumnPos(4)); 852aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R0 adjust", 0, params.mTopRowAdjustment); 853aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R0 default", WIDTH * 2, params.getDefaultKeyCoordX()); 854aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 855aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 856aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [4] ___| 857aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] [2] <1> ___| 858aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout5KeyMax3R1() { 859aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 3, XPOS_R1); 860aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R1 columns", 3, params.mNumColumns); 861aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R1 rows", 2, params.mNumRows); 862aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R1 left", 2, params.mLeftKeys); 863aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R1 right", 1, params.mRightKeys); 864aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R1 <1>", 0, params.getColumnPos(0)); 865aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R1 [2]", -1, params.getColumnPos(1)); 866aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R1 [3]", -2, params.getColumnPos(2)); 867aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R1 [4]", 0, params.getColumnPos(3)); 868aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R1 [5]", -1, params.getColumnPos(4)); 869aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R1 adjust", 0, params.mTopRowAdjustment); 870aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R1 default", WIDTH * 2, params.getDefaultKeyCoordX()); 871aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 872aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 873aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [5] ___| 874aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] ___| 875aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout5KeyMax3R2() { 876aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 3, XPOS_R2); 877aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R2 columns", 3, params.mNumColumns); 878aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R2 rows", 2, params.mNumRows); 879aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R2 left", 1, params.mLeftKeys); 880aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R2 right", 2, params.mRightKeys); 881aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R2 <1>", 0, params.getColumnPos(0)); 882aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R2 [2]", 1, params.getColumnPos(1)); 883aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R2 [3]", -1, params.getColumnPos(2)); 884aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R2 [4]", 0, params.getColumnPos(3)); 885aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R2 [5]", 1, params.getColumnPos(4)); 886aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R2 adjust", -1, params.mTopRowAdjustment); 887aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 3 R2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 888aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 889aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 890aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [5] 891aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] 892aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout5KeyMax4M0() { 893aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 4, XPOS_M0); 894aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 M0 columns", 3, params.mNumColumns); 895aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 M0 rows", 2, params.mNumRows); 896aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 M0 left", 1, params.mLeftKeys); 897aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 M0 right", 2, params.mRightKeys); 898aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 M0 <1>", 0, params.getColumnPos(0)); 899aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 M0 [2]", 1, params.getColumnPos(1)); 900aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 M0 [3]", -1, params.getColumnPos(2)); 901aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 M0 [4]", 0, params.getColumnPos(3)); 902aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 M0 [5]", 1, params.getColumnPos(4)); 903aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 M0 adjust", -1, params.mTopRowAdjustment); 904aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 M0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 905aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 906aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 907aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |[4] [5] 908aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] [3] 909aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout5KeyMax4L0() { 910aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 4, XPOS_L0); 911aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L0 columns", 3, params.mNumColumns); 912aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L0 rows", 2, params.mNumRows); 913aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L0 left", 0, params.mLeftKeys); 914aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L0 right", 3, params.mRightKeys); 915aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L0 <1>", 0, params.getColumnPos(0)); 916aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L0 [2]", 1, params.getColumnPos(1)); 917aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L0 [3]", 2, params.getColumnPos(2)); 918aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L0 [4]", 0, params.getColumnPos(3)); 919aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L0 [5]", 1, params.getColumnPos(4)); 920aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L0 adjust", 0, params.mTopRowAdjustment); 921aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 922aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 923aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 924aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [4] [5] 925aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] [3] 926aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout5KeyMax4L1() { 927aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 4, XPOS_L1); 928aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L1 columns", 3, params.mNumColumns); 929aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L1 rows", 2, params.mNumRows); 930aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L1 left", 0, params.mLeftKeys); 931aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L1 right", 3, params.mRightKeys); 932aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L1 <1>", 0, params.getColumnPos(0)); 933aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L1 [2]", 1, params.getColumnPos(1)); 934aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L1 [3]", 2, params.getColumnPos(2)); 935aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L1 [4]", 0, params.getColumnPos(3)); 936aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L1 [5]", 1, params.getColumnPos(4)); 937aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L1 adjust", 0, params.mTopRowAdjustment); 938aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 939aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 940aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 941aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [4] [5] 942aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] <1> [2] 943aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout5KeyMax4L2() { 944aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 4, XPOS_L2); 945aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L2 columns", 3, params.mNumColumns); 946aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L2 rows", 2, params.mNumRows); 947aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L2 left", 1, params.mLeftKeys); 948aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L2 right", 2, params.mRightKeys); 949aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L2 <1>", 0, params.getColumnPos(0)); 950aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L2 [2]", 1, params.getColumnPos(1)); 951aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L2 [3]", -1, params.getColumnPos(2)); 952aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L2 [4]", 0, params.getColumnPos(3)); 953aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L2 [5]", 1, params.getColumnPos(4)); 954aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L2 adjust", -1, params.mTopRowAdjustment); 955aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 L2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 956aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 957aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 958aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [4]| 959aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] [2] <1>| 960aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout5KeyMax4R0() { 961aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 4, XPOS_R0); 962aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R0 columns", 3, params.mNumColumns); 963aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R0 rows", 2, params.mNumRows); 964aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R0 left", 2, params.mLeftKeys); 965aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R0 right", 1, params.mRightKeys); 966aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R0 <1>", 0, params.getColumnPos(0)); 967aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R0 [2]", -1, params.getColumnPos(1)); 968aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R0 [3]", -2, params.getColumnPos(2)); 969aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R0 [4]", 0, params.getColumnPos(3)); 970aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R0 [5]", -1, params.getColumnPos(4)); 971aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R0 adjust", 0, params.mTopRowAdjustment); 972aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R0 default", WIDTH * 2, params.getDefaultKeyCoordX()); 973aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 974aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 975aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [4] ___| 976aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] [2] <1> ___| 977aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout5KeyMax4R1() { 978aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 4, XPOS_R1); 979aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R1 columns", 3, params.mNumColumns); 980aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R1 rows", 2, params.mNumRows); 981aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R1 left", 2, params.mLeftKeys); 982aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R1 right", 1, params.mRightKeys); 983aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R1 <1>", 0, params.getColumnPos(0)); 984aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R1 [2]", -1, params.getColumnPos(1)); 985aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R1 [3]", -2, params.getColumnPos(2)); 986aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R1 [4]", 0, params.getColumnPos(3)); 987aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R1 [5]", -1, params.getColumnPos(4)); 988aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R1 adjust", 0, params.mTopRowAdjustment); 989aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R1 default", WIDTH * 2, params.getDefaultKeyCoordX()); 990aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 991aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 992aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [5] ___| 993aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] ___| 994aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout5KeyMax4R2() { 995aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 4, XPOS_R2); 996aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R2 columns", 3, params.mNumColumns); 997aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R2 rows", 2, params.mNumRows); 998aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R2 left", 1, params.mLeftKeys); 999aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R2 right", 2, params.mRightKeys); 1000aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R2 <1>", 0, params.getColumnPos(0)); 1001aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R2 [2]", 1, params.getColumnPos(1)); 1002aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R2 [3]", -1, params.getColumnPos(2)); 1003aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R2 [4]", 0, params.getColumnPos(3)); 1004aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R2 [5]", 1, params.getColumnPos(4)); 1005aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R2 adjust", -1, params.mTopRowAdjustment); 1006aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 4 R2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 1007aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1008aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1009aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [3] <1> [2] [4] 10106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout5KeyMax5M0() { 10116213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 5, XPOS_M0); 1012aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 M0 columns", 5, params.mNumColumns); 1013aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 M0 rows", 1, params.mNumRows); 1014aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 M0 left", 2, params.mLeftKeys); 1015aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 M0 right", 3, params.mRightKeys); 1016aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 M0 <1>", 0, params.getColumnPos(0)); 1017aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 M0 [2]", 1, params.getColumnPos(1)); 1018aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 M0 [3]", -1, params.getColumnPos(2)); 1019aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 M0 [4]", 2, params.getColumnPos(3)); 1020aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 M0 [5]", -2, params.getColumnPos(4)); 1021aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 M0 adjust", 0, params.mTopRowAdjustment); 1022aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 M0 default", WIDTH * 2, params.getDefaultKeyCoordX()); 1023aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1024aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1025aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] [3] [4] [5] 10266213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout5KeyMax5L0() { 10276213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 5, XPOS_L0); 10286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L0 columns", 5, params.mNumColumns); 10296213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L0 rows", 1, params.mNumRows); 10306213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L0 left", 0, params.mLeftKeys); 10316213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L0 right", 5, params.mRightKeys); 1032aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 L0 <1>", 0, params.getColumnPos(0)); 10336213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L0 [2]", 1, params.getColumnPos(1)); 10346213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L0 [3]", 2, params.getColumnPos(2)); 10356213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L0 [4]", 3, params.getColumnPos(3)); 10366213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L0 [5]", 4, params.getColumnPos(4)); 10376213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L0 adjust", 0, params.mTopRowAdjustment); 10386213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 10395d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 10405d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 1041aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] [3] [4] [5] 10426213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout5KeyMax5L1() { 10436213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 5, XPOS_L1); 10446213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L1 columns", 5, params.mNumColumns); 10456213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L1 rows", 1, params.mNumRows); 10466213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L1 left", 0, params.mLeftKeys); 10476213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L1 right", 5, params.mRightKeys); 1048aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 L1 <1>", 0, params.getColumnPos(0)); 10496213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L1 [2]", 1, params.getColumnPos(1)); 10506213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L1 [3]", 2, params.getColumnPos(2)); 10516213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L1 [4]", 3, params.getColumnPos(3)); 10526213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L1 [5]", 4, params.getColumnPos(4)); 10536213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L1 adjust", 0, params.mTopRowAdjustment); 10546213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 10556213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 10566213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 1057aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] <1> [2] [4] [5] 10586213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout5KeyMax5L2() { 10596213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 5, XPOS_L2); 10606213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L2 columns", 5, params.mNumColumns); 10616213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L2 rows", 1, params.mNumRows); 10626213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L2 left", 1, params.mLeftKeys); 10636213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L2 right", 4, params.mRightKeys); 1064aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 L2 <1>", 0, params.getColumnPos(0)); 10656213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L2 [2]", 1, params.getColumnPos(1)); 10666213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L2 [3]", -1, params.getColumnPos(2)); 10676213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L2 [4]", 2, params.getColumnPos(3)); 10686213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L2 [5]", 3, params.getColumnPos(4)); 10696213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L2 adjust", 0, params.mTopRowAdjustment); 10706213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 L2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 10715d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 10725d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 1073aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [4] [3] [2] <1>| 10746213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout5KeyMax5R0() { 10756213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 5, XPOS_R0); 10766213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R0 columns", 5, params.mNumColumns); 10776213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R0 rows", 1, params.mNumRows); 10786213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R0 left", 4, params.mLeftKeys); 10796213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R0 right", 1, params.mRightKeys); 1080aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 R0 <1>", 0, params.getColumnPos(0)); 10816213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R0 [2]", -1, params.getColumnPos(1)); 10826213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R0 [3]", -2, params.getColumnPos(2)); 10836213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R0 [4]", -3, params.getColumnPos(3)); 10846213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R0 [5]", -4, params.getColumnPos(4)); 10856213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R0 adjust", 0, params.mTopRowAdjustment); 10866213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R0 default", WIDTH * 4, params.getDefaultKeyCoordX()); 10875d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 10885d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 1089aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [4] [3] [2] <1> ___| 10906213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout5KeyMax5R1() { 10916213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 5, XPOS_R1); 10926213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R1 columns", 5, params.mNumColumns); 10936213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R1 rows", 1, params.mNumRows); 10946213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R1 left", 4, params.mLeftKeys); 10956213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R1 right", 1, params.mRightKeys); 1096aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 R1 <1>", 0, params.getColumnPos(0)); 10976213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R1 [2]", -1, params.getColumnPos(1)); 10986213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R1 [3]", -2, params.getColumnPos(2)); 10996213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R1 [4]", -3, params.getColumnPos(3)); 11006213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R1 [5]", -4, params.getColumnPos(4)); 11016213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R1 adjust", 0, params.mTopRowAdjustment); 11026213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R1 default", WIDTH * 4, params.getDefaultKeyCoordX()); 11036213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 11046213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 1105aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [4] [3] <1> [2] ___| 11066213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout5KeyMax5R2() { 11076213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(5, 5, XPOS_R2); 11086213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R2 columns", 5, params.mNumColumns); 11096213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R2 rows", 1, params.mNumRows); 11106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R2 left", 3, params.mLeftKeys); 11116213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R2 right", 2, params.mRightKeys); 1112aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("5 key max 5 R2 <1>", 0, params.getColumnPos(0)); 11136213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R2 [2]", 1, params.getColumnPos(1)); 11146213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R2 [3]", -1, params.getColumnPos(2)); 11156213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R2 [4]", -2, params.getColumnPos(3)); 11166213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R2 [5]", -3, params.getColumnPos(4)); 11176213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R2 adjust", 0, params.mTopRowAdjustment); 11186213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("5 key max 5 R2 default", WIDTH * 3, params.getDefaultKeyCoordX()); 11195d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 11205d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 11215d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // [6] [4] [5] 1122aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] 1123aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout6KeyMax4M0() { 1124aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(6, 4, XPOS_M0); 1125aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 M0 columns", 3, params.mNumColumns); 1126aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 M0 rows", 2, params.mNumRows); 1127aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 M0 left", 1, params.mLeftKeys); 1128aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 M0 right", 2, params.mRightKeys); 1129aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 M0 <1>", 0, params.getColumnPos(0)); 1130aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 M0 [2]", 1, params.getColumnPos(1)); 1131aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 M0 [3]", -1, params.getColumnPos(2)); 1132aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 M0 [4]", 0, params.getColumnPos(3)); 1133aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 M0 [5]", 1, params.getColumnPos(4)); 1134aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 M0 [6]", -1, params.getColumnPos(5)); 1135aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 M0 adjust", 0, params.mTopRowAdjustment); 1136aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 M0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 1137aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1138aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1139aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |[4] [5] [6] 1140aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] [3] 1141aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout6KeyMax4L0() { 1142aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(6, 4, XPOS_L0); 1143aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L0 columns", 3, params.mNumColumns); 1144aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L0 rows", 2, params.mNumRows); 1145aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L0 left", 0, params.mLeftKeys); 1146aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L0 right", 3, params.mRightKeys); 1147aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L0 <1>", 0, params.getColumnPos(0)); 1148aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L0 [2]", 1, params.getColumnPos(1)); 1149aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L0 [3]", 2, params.getColumnPos(2)); 1150aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L0 [4]", 0, params.getColumnPos(3)); 1151aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L0 [5]", 1, params.getColumnPos(4)); 1152aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L0 [6]", 2, params.getColumnPos(5)); 1153aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L0 adjust", 0, params.mTopRowAdjustment); 1154aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 1155aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1156aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1157aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [4] [5] [6] 1158aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] [3] 1159aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout6KeyMax4L1() { 1160aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(6, 4, XPOS_L1); 1161aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L1 columns", 3, params.mNumColumns); 1162aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L1 rows", 2, params.mNumRows); 1163aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L1 left", 0, params.mLeftKeys); 1164aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L1 right", 3, params.mRightKeys); 1165aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L1 <1>", 0, params.getColumnPos(0)); 1166aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L1 [2]", 1, params.getColumnPos(1)); 1167aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L1 [3]", 2, params.getColumnPos(2)); 1168aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L1 [4]", 0, params.getColumnPos(3)); 1169aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L1 [5]", 1, params.getColumnPos(4)); 1170aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L1 [6]", 2, params.getColumnPos(5)); 1171aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L1 adjust", 0, params.mTopRowAdjustment); 1172aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 1173aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1174aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1175aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [6] [4] [5] 1176aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] <1> [2] 1177aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout6KeyMax4L2() { 1178aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(6, 4, XPOS_L2); 1179aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L2 columns", 3, params.mNumColumns); 1180aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L2 rows", 2, params.mNumRows); 1181aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L2 left", 1, params.mLeftKeys); 1182aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L2 right", 2, params.mRightKeys); 1183aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L2 <1>", 0, params.getColumnPos(0)); 1184aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L2 [2]", 1, params.getColumnPos(1)); 1185aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L2 [3]", -1, params.getColumnPos(2)); 1186aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L2 [4]", 0, params.getColumnPos(3)); 1187aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L2 [5]", 1, params.getColumnPos(4)); 1188aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L2 [6]", -1, params.getColumnPos(5)); 1189aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L2 adjust", 0, params.mTopRowAdjustment); 1190aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 L2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 1191aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1192aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1193aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [6] [5] [4]| 1194aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] [2] <1>| 1195aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout6KeyMax4R0() { 1196aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(6, 4, XPOS_R0); 1197aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R0 columns", 3, params.mNumColumns); 1198aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R0 rows", 2, params.mNumRows); 1199aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R0 left", 2, params.mLeftKeys); 1200aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R0 right", 1, params.mRightKeys); 1201aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R0 <1>", 0, params.getColumnPos(0)); 1202aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R0 [2]", -1, params.getColumnPos(1)); 1203aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R0 [3]", -2, params.getColumnPos(2)); 1204aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R0 [4]", 0, params.getColumnPos(3)); 1205aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R0 [5]", -1, params.getColumnPos(4)); 1206aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R0 [6]", -2, params.getColumnPos(5)); 1207aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R0 adjust", 0, params.mTopRowAdjustment); 1208aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R0 default", WIDTH * 2, params.getDefaultKeyCoordX()); 1209aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1210aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1211aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [6] [5] [4] ___| 1212aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] [2] <1> ___| 1213aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout6KeyMax4R1() { 1214aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(6, 4, XPOS_R1); 1215aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R1 columns", 3, params.mNumColumns); 1216aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R1 rows", 2, params.mNumRows); 1217aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R1 left", 2, params.mLeftKeys); 1218aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R1 right", 1, params.mRightKeys); 1219aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R1 <1>", 0, params.getColumnPos(0)); 1220aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R1 [2]", -1, params.getColumnPos(1)); 1221aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R1 [3]", -2, params.getColumnPos(2)); 1222aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R1 [4]", 0, params.getColumnPos(3)); 1223aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R1 [5]", -1, params.getColumnPos(4)); 1224aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R1 [6]", -2, params.getColumnPos(5)); 1225aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R1 adjust", 0, params.mTopRowAdjustment); 1226aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R1 default", WIDTH * 2, params.getDefaultKeyCoordX()); 1227aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1228aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1229aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [6] [4] [5] ___| 1230aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] ___| 1231aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout6KeyMax4R2() { 1232aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(6, 4, XPOS_R2); 1233aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R2 columns", 3, params.mNumColumns); 1234aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R2 rows", 2, params.mNumRows); 1235aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R2 left", 1, params.mLeftKeys); 1236aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R2 right", 2, params.mRightKeys); 1237aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R2 <1>", 0, params.getColumnPos(0)); 1238aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R2 [2]", 1, params.getColumnPos(1)); 1239aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R2 [3]", -1, params.getColumnPos(2)); 1240aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R2 [4]", 0, params.getColumnPos(3)); 1241aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R2 [5]", 1, params.getColumnPos(4)); 1242aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R2 [6]", -1, params.getColumnPos(5)); 1243aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R2 adjust", 0, params.mTopRowAdjustment); 1244aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 4 R2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 1245aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1246aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1247aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [6] [4] [5] 1248aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] 12496213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout6KeyMax5M0() { 12506213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(6, 5, XPOS_M0); 1251aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 M0 columns", 3, params.mNumColumns); 1252aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 M0 rows", 2, params.mNumRows); 1253aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 M0 left", 1, params.mLeftKeys); 1254aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 M0 right", 2, params.mRightKeys); 1255aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 M0 <1>", 0, params.getColumnPos(0)); 1256aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 M0 [2]", 1, params.getColumnPos(1)); 1257aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 M0 [3]", -1, params.getColumnPos(2)); 1258aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 M0 [4]", 0, params.getColumnPos(3)); 1259aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 M0 [5]", 1, params.getColumnPos(4)); 1260aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 M0 [6]", -1, params.getColumnPos(5)); 1261aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 M0 adjust", 0, params.mTopRowAdjustment); 1262aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 M0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 126304c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka } 126404c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka 12655d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // |[4] [5] [6] 1266aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] [3] 12676213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout6KeyMax5L0() { 12686213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(6, 5, XPOS_L0); 12696213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L0 columns", 3, params.mNumColumns); 12706213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L0 rows", 2, params.mNumRows); 12716213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L0 left", 0, params.mLeftKeys); 12726213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L0 right", 3, params.mRightKeys); 1273aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 L0 <1>", 0, params.getColumnPos(0)); 12746213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L0 [2]", 1, params.getColumnPos(1)); 12756213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L0 [3]", 2, params.getColumnPos(2)); 12766213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L0 [4]", 0, params.getColumnPos(3)); 12776213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L0 [5]", 1, params.getColumnPos(4)); 12786213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L0 [6]", 2, params.getColumnPos(5)); 12796213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L0 adjust", 0, params.mTopRowAdjustment); 12806213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 12815d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 12825d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 12835d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // |___ [4] [5] [6] 1284aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] [3] 12856213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout6KeyMax5L1() { 12866213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(6, 5, XPOS_L1); 12876213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L1 columns", 3, params.mNumColumns); 12886213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L1 rows", 2, params.mNumRows); 12896213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L1 left", 0, params.mLeftKeys); 12906213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L1 right", 3, params.mRightKeys); 1291aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 L1 <1>", 0, params.getColumnPos(0)); 12926213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L1 [2]", 1, params.getColumnPos(1)); 12936213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L1 [3]", 2, params.getColumnPos(2)); 12946213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L1 [4]", 0, params.getColumnPos(3)); 12956213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L1 [5]", 1, params.getColumnPos(4)); 12966213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L1 [6]", 2, params.getColumnPos(5)); 12976213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L1 adjust", 0, params.mTopRowAdjustment); 12986213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 12996213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 13006213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 13016213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka // |___ [6] [4] [5] 1302aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] <1> [2] 13036213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout6KeyMax5L2() { 13046213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(6, 5, XPOS_L2); 13056213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L2 columns", 3, params.mNumColumns); 13066213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L2 rows", 2, params.mNumRows); 13076213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L2 left", 1, params.mLeftKeys); 13086213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L2 right", 2, params.mRightKeys); 1309aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 L2 <1>", 0, params.getColumnPos(0)); 13106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L2 [2]", 1, params.getColumnPos(1)); 13116213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L2 [3]", -1, params.getColumnPos(2)); 13126213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L2 [4]", 0, params.getColumnPos(3)); 13136213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L2 [5]", 1, params.getColumnPos(4)); 13146213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L2 [6]", -1, params.getColumnPos(5)); 13156213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L2 adjust", 0, params.mTopRowAdjustment); 13166213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 L2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 13175d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 13185d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 13195d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // [6] [5] [4]| 1320aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] [2] <1>| 13216213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout6KeyMax5R0() { 13226213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(6, 5, XPOS_R0); 13236213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R0 columns", 3, params.mNumColumns); 13246213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R0 rows", 2, params.mNumRows); 13256213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R0 left", 2, params.mLeftKeys); 13266213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R0 right", 1, params.mRightKeys); 1327aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 R0 <1>", 0, params.getColumnPos(0)); 13286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R0 [2]", -1, params.getColumnPos(1)); 13296213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R0 [3]", -2, params.getColumnPos(2)); 13306213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R0 [4]", 0, params.getColumnPos(3)); 13316213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R0 [5]", -1, params.getColumnPos(4)); 13326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R0 [6]", -2, params.getColumnPos(5)); 13336213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R0 adjust", 0, params.mTopRowAdjustment); 13346213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R0 default", WIDTH * 2, params.getDefaultKeyCoordX()); 13355d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 13365d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 13375d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // [6] [5] [4] ___| 1338aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] [2] <1> ___| 13396213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout6KeyMax5R1() { 13406213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(6, 5, XPOS_R1); 13416213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R1 columns", 3, params.mNumColumns); 13426213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R1 rows", 2, params.mNumRows); 13436213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R1 left", 2, params.mLeftKeys); 13446213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R1 right", 1, params.mRightKeys); 1345aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 R1 <1>", 0, params.getColumnPos(0)); 13466213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R1 [2]", -1, params.getColumnPos(1)); 13476213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R1 [3]", -2, params.getColumnPos(2)); 13486213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R1 [4]", 0, params.getColumnPos(3)); 13496213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R1 [5]", -1, params.getColumnPos(4)); 13506213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R1 [6]", -2, params.getColumnPos(5)); 13516213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R1 adjust", 0, params.mTopRowAdjustment); 13526213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R1 default", WIDTH * 2, params.getDefaultKeyCoordX()); 13536213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 13546213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 13556213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka // [6] [4] [5] ___| 1356aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] ___| 13576213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout6KeyMax5R2() { 13586213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(6, 5, XPOS_R2); 13596213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R2 columns", 3, params.mNumColumns); 13606213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R2 rows", 2, params.mNumRows); 13616213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R2 left", 1, params.mLeftKeys); 13626213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R2 right", 2, params.mRightKeys); 1363aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("6 key max 5 R2 <1>", 0, params.getColumnPos(0)); 13646213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R2 [2]", 1, params.getColumnPos(1)); 13656213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R2 [3]", -1, params.getColumnPos(2)); 13666213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R2 [4]", 0, params.getColumnPos(3)); 13676213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R2 [5]", 1, params.getColumnPos(4)); 13686213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R2 [6]", -1, params.getColumnPos(5)); 13696213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R2 adjust", 0, params.mTopRowAdjustment); 13706213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("6 key max 5 R2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 13715d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 13725d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 1373aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] [3] [4] [5] [6] [7] ___ ___ ___| 13746213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout7KeyMax7L0() { 13756213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 7, XPOS_L0); 13766213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L0 columns", 7, params.mNumColumns); 13776213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L0 rows", 1, params.mNumRows); 13786213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L0 left", 0, params.mLeftKeys); 13796213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L0 right", 7, params.mRightKeys); 1380aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 7 L0 <1>", 0, params.getColumnPos(0)); 13816213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L0 [2]", 1, params.getColumnPos(1)); 13826213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L0 [3]", 2, params.getColumnPos(2)); 13836213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L0 [4]", 3, params.getColumnPos(3)); 13846213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L0 [5]", 4, params.getColumnPos(4)); 13856213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L0 [6]", 5, params.getColumnPos(5)); 13866213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L0 [7]", 6, params.getColumnPos(6)); 13876213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L0 adjust", 0, params.mTopRowAdjustment); 13886213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 13896213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 13906213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 1391aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] [3] [4] [5] [6] [7] ___ ___| 13926213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout7KeyMax7L1() { 13936213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 7, XPOS_L1); 13946213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L1 columns", 7, params.mNumColumns); 13956213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L1 rows", 1, params.mNumRows); 13966213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L1 left", 0, params.mLeftKeys); 13976213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L1 right", 7, params.mRightKeys); 1398aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 7 L1 <1>", 0, params.getColumnPos(0)); 13996213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L1 [2]", 1, params.getColumnPos(1)); 14006213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L1 [3]", 2, params.getColumnPos(2)); 14016213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L1 [4]", 3, params.getColumnPos(3)); 14026213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L1 [5]", 4, params.getColumnPos(4)); 14036213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L1 [6]", 5, params.getColumnPos(5)); 14046213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L1 [7]", 6, params.getColumnPos(6)); 14056213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L1 adjust", 0, params.mTopRowAdjustment); 14066213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 14076213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 14086213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 1409aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] <1> [2] [4] [5] [6] [7] ___ ___| 14106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout7KeyMax7L2() { 14116213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 7, XPOS_L2); 14126213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L2 columns", 7, params.mNumColumns); 14136213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L2 rows", 1, params.mNumRows); 14146213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L2 left", 1, params.mLeftKeys); 14156213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L2 right", 6, params.mRightKeys); 1416aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 7 L2 <1>", 0, params.getColumnPos(0)); 14176213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L2 [2]", 1, params.getColumnPos(1)); 14186213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L2 [3]", -1, params.getColumnPos(2)); 14196213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L2 [4]", 2, params.getColumnPos(3)); 14206213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L2 [5]", 3, params.getColumnPos(4)); 14216213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L2 [6]", 4, params.getColumnPos(5)); 14226213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L2 [7]", 5, params.getColumnPos(6)); 14236213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L2 adjust", 0, params.mTopRowAdjustment); 14246213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 14256213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 14266213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 1427aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [5] [3] <1> [2] [4] [6] [7] ___ ___| 14286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout7KeyMax7L3() { 14296213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 7, XPOS_L3); 14306213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L3 columns", 7, params.mNumColumns); 14316213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L3 rows", 1, params.mNumRows); 14326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L3 left", 2, params.mLeftKeys); 14336213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L3 right", 5, params.mRightKeys); 1434aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 7 L3 <1>", 0, params.getColumnPos(0)); 14356213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L3 [2]", 1, params.getColumnPos(1)); 14366213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L3 [3]", -1, params.getColumnPos(2)); 14376213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L3 [4]", 2, params.getColumnPos(3)); 14386213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L3 [5]", -2, params.getColumnPos(4)); 14396213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L3 [6]", 3, params.getColumnPos(5)); 14406213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L3 [7]", 4, params.getColumnPos(6)); 14416213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L3 adjust", 0, params.mTopRowAdjustment); 14426213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 L3 default", WIDTH * 2, params.getDefaultKeyCoordX()); 14436213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 14446213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 1445aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [7] [5] [3] <1> [2] [4] [6] ___ ___| 14466213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout7KeyMax7M0() { 14476213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 7, XPOS_M0); 14486213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M0 columns", 7, params.mNumColumns); 14496213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M0 rows", 1, params.mNumRows); 14506213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M0 left", 3, params.mLeftKeys); 14516213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M0 right", 4, params.mRightKeys); 1452aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 7 M0 <1>", 0, params.getColumnPos(0)); 14536213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M0 [2]", 1, params.getColumnPos(1)); 14546213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M0 [3]", -1, params.getColumnPos(2)); 14556213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M0 [4]", 2, params.getColumnPos(3)); 14566213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M0 [5]", -2, params.getColumnPos(4)); 14576213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M0 [6]", 3, params.getColumnPos(5)); 14586213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M0 [7]", -3, params.getColumnPos(6)); 14596213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M0 adjust", 0, params.mTopRowAdjustment); 14606213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M0 default", WIDTH * 3, params.getDefaultKeyCoordX()); 14616213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 14626213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 1463aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ ___ [7] [5] [3] <1> [2] [4] [6] ___| 14646213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout7KeyMax7M1() { 14656213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 7, XPOS_M1); 14666213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M1 columns", 7, params.mNumColumns); 14676213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M1 rows", 1, params.mNumRows); 14686213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M1 left", 3, params.mLeftKeys); 14696213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M1 right", 4, params.mRightKeys); 1470aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 7 M1 <1>", 0, params.getColumnPos(0)); 14716213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M1 [2]", 1, params.getColumnPos(1)); 14726213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M1 [3]", -1, params.getColumnPos(2)); 14736213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M1 [4]", 2, params.getColumnPos(3)); 14746213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M1 [5]", -2, params.getColumnPos(4)); 14756213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M1 [6]", 3, params.getColumnPos(5)); 14766213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M1 [7]", -3, params.getColumnPos(6)); 14776213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M1 adjust", 0, params.mTopRowAdjustment); 14786213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 M1 default", WIDTH * 3, params.getDefaultKeyCoordX()); 14796213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 14806213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 1481aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ ___ [7] [6] [5] [3] <1> [2] [4] ___| 14826213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout7KeyMax7R3() { 14836213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 7, XPOS_R3); 14846213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R3 columns", 7, params.mNumColumns); 14856213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R3 rows", 1, params.mNumRows); 14866213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R3 left", 4, params.mLeftKeys); 14876213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R3 right", 3, params.mRightKeys); 1488aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 7 R3 <1>", 0, params.getColumnPos(0)); 14896213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R3 [2]", 1, params.getColumnPos(1)); 14906213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R3 [3]", -1, params.getColumnPos(2)); 14916213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R3 [4]", 2, params.getColumnPos(3)); 14926213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R3 [5]", -2, params.getColumnPos(4)); 14936213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R3 [6]", -3, params.getColumnPos(5)); 14946213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R3 [7]", -4, params.getColumnPos(6)); 14956213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R3 adjust", 0, params.mTopRowAdjustment); 14966213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R3 default", WIDTH * 4, params.getDefaultKeyCoordX()); 14976213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 14986213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 1499aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ ___ [7] [6] [5] [4] [3] <1> [2] ___| 15006213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout7KeyMax7R2() { 15016213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 7, XPOS_R2); 15026213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R2 columns", 7, params.mNumColumns); 15036213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R2 rows", 1, params.mNumRows); 15046213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R2 left", 5, params.mLeftKeys); 15056213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R2 right", 2, params.mRightKeys); 1506aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 7 R2 <1>", 0, params.getColumnPos(0)); 15076213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R2 [2]", 1, params.getColumnPos(1)); 15086213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R2 [3]", -1, params.getColumnPos(2)); 15096213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R2 [4]", -2, params.getColumnPos(3)); 15106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R2 [5]", -3, params.getColumnPos(4)); 15116213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R2 [6]", -4, params.getColumnPos(5)); 15126213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R2 [7]", -5, params.getColumnPos(6)); 15136213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R2 adjust", 0, params.mTopRowAdjustment); 15146213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R2 default", WIDTH * 5, params.getDefaultKeyCoordX()); 15156213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 15166213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 1517aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ ___ [7] [6] [5] [4] [3] [2] <1> ___| 15186213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout7KeyMax7R1() { 15196213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 7, XPOS_R1); 15206213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R1 columns", 7, params.mNumColumns); 15216213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R1 rows", 1, params.mNumRows); 15226213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R1 left", 6, params.mLeftKeys); 15236213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R1 right", 1, params.mRightKeys); 1524aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 7 R1 <1>", 0, params.getColumnPos(0)); 15256213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R1 [2]", -1, params.getColumnPos(1)); 15266213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R1 [3]", -2, params.getColumnPos(2)); 15276213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R1 [4]", -3, params.getColumnPos(3)); 15286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R1 [5]", -4, params.getColumnPos(4)); 15296213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R1 [6]", -5, params.getColumnPos(5)); 15306213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R1 [7]", -6, params.getColumnPos(6)); 15316213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R1 adjust", 0, params.mTopRowAdjustment); 15326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R1 default", WIDTH * 6, params.getDefaultKeyCoordX()); 15336213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 15346213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 1535aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ ___ [7] [6] [5] [4] [3] [2] <1>| 15366213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout7KeyMax7R0() { 15376213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 7, XPOS_R0); 15386213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R0 columns", 7, params.mNumColumns); 15396213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R0 rows", 1, params.mNumRows); 15406213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R0 left", 6, params.mLeftKeys); 15416213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R0 right", 1, params.mRightKeys); 1542aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 7 R0 <1>", 0, params.getColumnPos(0)); 15436213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R0 [2]", -1, params.getColumnPos(1)); 15446213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R0 [3]", -2, params.getColumnPos(2)); 15456213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R0 [4]", -3, params.getColumnPos(3)); 15466213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R0 [5]", -4, params.getColumnPos(4)); 15476213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R0 [6]", -5, params.getColumnPos(5)); 15486213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R0 [7]", -6, params.getColumnPos(6)); 15496213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R0 adjust", 0, params.mTopRowAdjustment); 15506213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("7 key max 7 R0 default", WIDTH * 6, params.getDefaultKeyCoordX()); 15515d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 15525d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 1553aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [6] [7] 1554aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] [4] 1555aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout7KeyMax5M0() { 1556aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 5, XPOS_M0); 1557aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 M0 columns", 4, params.mNumColumns); 1558aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 M0 rows", 2, params.mNumRows); 1559aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 M0 left", 1, params.mLeftKeys); 1560aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 M0 right", 3, params.mRightKeys); 1561aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 M0 <1>", 0, params.getColumnPos(0)); 1562aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 M0 [2]", 1, params.getColumnPos(1)); 1563aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 M0 [3]", -1, params.getColumnPos(2)); 1564aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 M0 [4]", 2, params.getColumnPos(3)); 1565aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 M0 [5]", 0, params.getColumnPos(4)); 1566aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 M0 [6]", 1, params.getColumnPos(5)); 1567aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 M0 [7]", 2, params.getColumnPos(6)); 1568aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 M0 adjust", -1, params.mTopRowAdjustment); 1569aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 M0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 1570aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1571aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1572aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |[5] [6] [7] 1573aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] [3] [4] 1574aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout7KeyMax5L0() { 1575aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 5, XPOS_L0); 1576aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L0 columns", 4, params.mNumColumns); 1577aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L0 rows", 2, params.mNumRows); 1578aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L0 left", 0, params.mLeftKeys); 1579aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L0 right", 4, params.mRightKeys); 1580aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L0 <1>", 0, params.getColumnPos(0)); 1581aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L0 [2]", 1, params.getColumnPos(1)); 1582aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L0 [3]", 2, params.getColumnPos(2)); 1583aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L0 [4]", 3, params.getColumnPos(3)); 1584aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L0 [5]", 0, params.getColumnPos(4)); 1585aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L0 [6]", 1, params.getColumnPos(5)); 1586aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L0 [7]", 2, params.getColumnPos(6)); 1587aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L0 adjust", 0, params.mTopRowAdjustment); 1588aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 1589aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1590aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1591aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [5] [6] [7] 1592aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] [3] [4] 1593aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout7KeyMax5L1() { 1594aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 5, XPOS_L1); 1595aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L1 columns", 4, params.mNumColumns); 1596aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L1 rows", 2, params.mNumRows); 1597aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L1 left", 0, params.mLeftKeys); 1598aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L1 right", 4, params.mRightKeys); 1599aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L1 <1>", 0, params.getColumnPos(0)); 1600aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L1 [2]", 1, params.getColumnPos(1)); 1601aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L1 [3]", 2, params.getColumnPos(2)); 1602aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L1 [4]", 3, params.getColumnPos(3)); 1603aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L1 [5]", 0, params.getColumnPos(4)); 1604aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L1 [6]", 1, params.getColumnPos(5)); 1605aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L1 [7]", 2, params.getColumnPos(6)); 1606aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L1 adjust", 0, params.mTopRowAdjustment); 1607aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 1608aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1609aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1610aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [5] [6] [7] 1611aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] <1> [2] [4] 1612aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout7KeyMax5L2() { 1613aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 5, XPOS_L2); 1614aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L2 columns", 4, params.mNumColumns); 1615aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L2 rows", 2, params.mNumRows); 1616aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L2 left", 1, params.mLeftKeys); 1617aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L2 right", 3, params.mRightKeys); 1618aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L2 <1>", 0, params.getColumnPos(0)); 1619aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L2 [2]", 1, params.getColumnPos(1)); 1620aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L2 [3]", -1, params.getColumnPos(2)); 1621aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L2 [4]", 2, params.getColumnPos(3)); 1622aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L2 [5]", 0, params.getColumnPos(4)); 1623aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L2 [6]", 1, params.getColumnPos(5)); 1624aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L2 [7]", 2, params.getColumnPos(6)); 1625aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L2 adjust", -1, params.mTopRowAdjustment); 1626aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 L2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 1627aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1628aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1629aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [7] [6] [5]| 1630aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [3] [2] <1>| 1631aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout7KeyMax5R0() { 1632aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 5, XPOS_R0); 1633aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R0 columns", 4, params.mNumColumns); 1634aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R0 rows", 2, params.mNumRows); 1635aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R0 left", 3, params.mLeftKeys); 1636aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R0 right", 1, params.mRightKeys); 1637aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R0 <1>", 0, params.getColumnPos(0)); 1638aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R0 [2]", -1, params.getColumnPos(1)); 1639aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R0 [3]", -2, params.getColumnPos(2)); 1640aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R0 [4]", -3, params.getColumnPos(3)); 1641aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R0 [5]", 0, params.getColumnPos(4)); 1642aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R0 [6]", -1, params.getColumnPos(5)); 1643aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R0 [7]", -2, params.getColumnPos(6)); 1644aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R0 adjust", 0, params.mTopRowAdjustment); 1645aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R0 default", WIDTH * 3, params.getDefaultKeyCoordX()); 1646aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1647aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1648aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [7] [6] [5] ___| 1649aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [3] [2] <1> ___| 1650aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout7KeyMax5R1() { 1651aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 5, XPOS_R1); 1652aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R1 columns", 4, params.mNumColumns); 1653aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R1 rows", 2, params.mNumRows); 1654aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R1 left", 3, params.mLeftKeys); 1655aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R1 right", 1, params.mRightKeys); 1656aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R1 <1>", 0, params.getColumnPos(0)); 1657aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R1 [2]", -1, params.getColumnPos(1)); 1658aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R1 [3]", -2, params.getColumnPos(2)); 1659aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R1 [4]", -3, params.getColumnPos(3)); 1660aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R1 [5]", 0, params.getColumnPos(4)); 1661aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R1 [6]", -1, params.getColumnPos(5)); 1662aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R1 [7]", -2, params.getColumnPos(6)); 1663aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R1 adjust", 0, params.mTopRowAdjustment); 1664aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R1 default", WIDTH * 3, params.getDefaultKeyCoordX()); 1665aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1666aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1667aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [7] [5] [6] ___| 1668aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [3] <1> [2] ___| 1669aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout7KeyMax5R2() { 1670aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 5, XPOS_R2); 1671aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R2 columns", 4, params.mNumColumns); 1672aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R2 rows", 2, params.mNumRows); 1673aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R2 left", 2, params.mLeftKeys); 1674aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R2 right", 2, params.mRightKeys); 1675aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R2 <1>", 0, params.getColumnPos(0)); 1676aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R2 [2]", 1, params.getColumnPos(1)); 1677aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R2 [3]", -1, params.getColumnPos(2)); 1678aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R2 [4]", -2, params.getColumnPos(3)); 1679aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R2 [5]", 0, params.getColumnPos(4)); 1680aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R2 [6]", 1, params.getColumnPos(5)); 1681aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R2 [7]", -1, params.getColumnPos(6)); 1682aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R2 adjust", -1, params.mTopRowAdjustment); 1683aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 5 R2 default", WIDTH * 2, params.getDefaultKeyCoordX()); 1684aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1685aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1686aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [7] 1687aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [6] [4] [5] 1688aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] 1689aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout7KeyMax3M0() { 1690aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 3, XPOS_M0); 1691aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 M0 columns", 3, params.mNumColumns); 1692aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 M0 rows", 3, params.mNumRows); 1693aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 M0 left", 1, params.mLeftKeys); 1694aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 M0 right", 2, params.mRightKeys); 1695aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 M0 <1>", 0, params.getColumnPos(0)); 1696aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 M0 [2]", 1, params.getColumnPos(1)); 1697aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 M0 [3]", -1, params.getColumnPos(2)); 1698aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 M0 [4]", 0, params.getColumnPos(3)); 1699aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 M0 [5]", 1, params.getColumnPos(4)); 1700aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 M0 [6]", -1, params.getColumnPos(5)); 1701aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 M0 [7]", 0, params.getColumnPos(6)); 1702aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 M0 adjust", 0, params.mTopRowAdjustment); 1703aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 M0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 1704aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1705aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1706aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |[7] 1707aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |[4] [5] [6] 1708aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] [3] 1709aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout7KeyMax3L0() { 1710aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 3, XPOS_L0); 1711aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L0 columns", 3, params.mNumColumns); 1712aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L0 rows", 3, params.mNumRows); 1713aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L0 left", 0, params.mLeftKeys); 1714aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L0 right", 3, params.mRightKeys); 1715aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L0 <1>", 0, params.getColumnPos(0)); 1716aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L0 [2]", 1, params.getColumnPos(1)); 1717aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L0 [3]", 2, params.getColumnPos(2)); 1718aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L0 [4]", 0, params.getColumnPos(3)); 1719aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L0 [5]", 1, params.getColumnPos(4)); 1720aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L0 [6]", 2, params.getColumnPos(5)); 1721aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L0 [7]", 0, params.getColumnPos(6)); 1722aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L0 adjust", 0, params.mTopRowAdjustment); 1723aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 1724aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1725aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1726aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [7] 1727aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [4] [5] [6] 1728aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] [3] 1729aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout7KeyMax3L1() { 1730aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 3, XPOS_L1); 1731aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L1 columns", 3, params.mNumColumns); 1732aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L1 rows", 3, params.mNumRows); 1733aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L1 left", 0, params.mLeftKeys); 1734aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L1 right", 3, params.mRightKeys); 1735aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L1 <1>", 0, params.getColumnPos(0)); 1736aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L1 [2]", 1, params.getColumnPos(1)); 1737aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L1 [3]", 2, params.getColumnPos(2)); 1738aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L1 [4]", 0, params.getColumnPos(3)); 1739aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L1 [5]", 1, params.getColumnPos(4)); 1740aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L1 [6]", 2, params.getColumnPos(5)); 1741aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L1 [7]", 0, params.getColumnPos(6)); 1742aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L1 adjust", 0, params.mTopRowAdjustment); 1743aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 1744aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1745aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1746aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [7] 1747aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [6] [4] [5] 1748aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] <1> [2] 1749aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout7KeyMax3L2() { 1750aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 3, XPOS_L2); 1751aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L2 columns", 3, params.mNumColumns); 1752aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L2 rows", 3, params.mNumRows); 1753aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L2 left", 1, params.mLeftKeys); 1754aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L2 right", 2, params.mRightKeys); 1755aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L2 <1>", 0, params.getColumnPos(0)); 1756aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L2 [2]", 1, params.getColumnPos(1)); 1757aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L2 [3]", -1, params.getColumnPos(2)); 1758aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L2 [4]", 0, params.getColumnPos(3)); 1759aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L2 [5]", 1, params.getColumnPos(4)); 1760aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L2 [6]", -1, params.getColumnPos(5)); 1761aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L2 [7]", 0, params.getColumnPos(6)); 1762aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L2 adjust", 0, params.mTopRowAdjustment); 1763aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 L2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 1764aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1765aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1766aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [7]| 1767aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [6] [5] [4]| 1768aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] [2] <1>| 1769aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout7KeyMax3R0() { 1770aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 3, XPOS_R0); 1771aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R0 columns", 3, params.mNumColumns); 1772aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R0 rows", 3, params.mNumRows); 1773aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R0 left", 2, params.mLeftKeys); 1774aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R0 right", 1, params.mRightKeys); 1775aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R0 <1>", 0, params.getColumnPos(0)); 1776aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R0 [2]", -1, params.getColumnPos(1)); 1777aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R0 [3]", -2, params.getColumnPos(2)); 1778aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R0 [4]", 0, params.getColumnPos(3)); 1779aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R0 [5]", -1, params.getColumnPos(4)); 1780aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R0 [6]", -2, params.getColumnPos(5)); 1781aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R0 [7]", 0, params.getColumnPos(6)); 1782aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R0 adjust", 0, params.mTopRowAdjustment); 1783aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R0 default", WIDTH * 2, params.getDefaultKeyCoordX()); 1784aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1785aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1786aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [7] ___| 1787aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [6] [5] [4] ___| 1788aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] [2] <1> ___| 1789aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout7KeyMax3R1() { 1790aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 3, XPOS_R1); 1791aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R1 columns", 3, params.mNumColumns); 1792aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R1 rows", 3, params.mNumRows); 1793aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R1 left", 2, params.mLeftKeys); 1794aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R1 right", 1, params.mRightKeys); 1795aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R1 <1>", 0, params.getColumnPos(0)); 1796aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R1 [2]", -1, params.getColumnPos(1)); 1797aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R1 [3]", -2, params.getColumnPos(2)); 1798aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R1 [4]", 0, params.getColumnPos(3)); 1799aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R1 [5]", -1, params.getColumnPos(4)); 1800aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R1 [6]", -2, params.getColumnPos(5)); 1801aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R1 [7]", 0, params.getColumnPos(6)); 1802aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R1 adjust", 0, params.mTopRowAdjustment); 1803aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R1 default", WIDTH * 2, params.getDefaultKeyCoordX()); 1804aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1805aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 1806aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [7] ___| 1807aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [6] [4] [5] ___| 1808aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] ___| 1809aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout7KeyMax3R2() { 1810aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(7, 3, XPOS_R2); 1811aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R2 columns", 3, params.mNumColumns); 1812aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R2 rows", 3, params.mNumRows); 1813aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R2 left", 1, params.mLeftKeys); 1814aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R2 right", 2, params.mRightKeys); 1815aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R2 <1>", 0, params.getColumnPos(0)); 1816aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R2 [2]", 1, params.getColumnPos(1)); 1817aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R2 [3]", -1, params.getColumnPos(2)); 1818aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R2 [4]", 0, params.getColumnPos(3)); 1819aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R2 [5]", 1, params.getColumnPos(4)); 1820aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R2 [6]", -1, params.getColumnPos(5)); 1821aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R2 [7]", 0, params.getColumnPos(6)); 1822aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R2 adjust", 0, params.mTopRowAdjustment); 1823aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("7 key max 3 R2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 1824aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 1825aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 18265d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // [7] [5] [6] [8] 1827aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] [4] 18286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout8KeyMax5M0() { 18296213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(8, 5, XPOS_M0); 18306213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 M0 columns", 4, params.mNumColumns); 18316213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 M0 rows", 2, params.mNumRows); 18326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 M0 left", 1, params.mLeftKeys); 18336213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 M0 right", 3, params.mRightKeys); 1834aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("8 key max 5 M0 <1>", 0, params.getColumnPos(0)); 18356213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 M0 [2]", 1, params.getColumnPos(1)); 18366213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 M0 [3]", -1, params.getColumnPos(2)); 18376213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 M0 [4]", 2, params.getColumnPos(3)); 18386213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 M0 [5]", 0, params.getColumnPos(4)); 18396213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 M0 [6]", 1, params.getColumnPos(5)); 18406213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 M0 [7]", -1, params.getColumnPos(6)); 18416213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 M0 [8]", 2, params.getColumnPos(7)); 18426213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 M0 adjust", 0, params.mTopRowAdjustment); 18436213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 M0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 18445d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 18455d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 18465d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // |[5] [6] [7] [8] 1847aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] [3] [4] 18486213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout8KeyMax5L0() { 18496213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(8, 5, XPOS_L0); 18506213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L0 columns", 4, params.mNumColumns); 18516213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L0 rows", 2, params.mNumRows); 18526213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L0 left", 0, params.mLeftKeys); 18536213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L0 right", 4, params.mRightKeys); 1854aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("8 key max 5 L0 <1>", 0, params.getColumnPos(0)); 18556213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L0 [2]", 1, params.getColumnPos(1)); 18566213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L0 [3]", 2, params.getColumnPos(2)); 18576213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L0 [4]", 3, params.getColumnPos(3)); 18586213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L0 [5]", 0, params.getColumnPos(4)); 18596213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L0 [6]", 1, params.getColumnPos(5)); 18606213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L0 [7]", 2, params.getColumnPos(6)); 18616213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L0 [8]", 3, params.getColumnPos(7)); 18626213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L0 adjust", 0, params.mTopRowAdjustment); 18636213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 18645d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 18655d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 18665d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // |___ [5] [6] [7] [8] 1867aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] [3] [4] 18686213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout8KeyMax5L1() { 18696213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(8, 5, XPOS_L1); 18706213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L1 columns", 4, params.mNumColumns); 18716213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L1 rows", 2, params.mNumRows); 18726213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L1 left", 0, params.mLeftKeys); 18736213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L1 right", 4, params.mRightKeys); 1874aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("8 key max 5 L1 <1>", 0, params.getColumnPos(0)); 18756213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L1 [2]", 1, params.getColumnPos(1)); 18766213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L1 [3]", 2, params.getColumnPos(2)); 18776213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L1 [4]", 3, params.getColumnPos(3)); 18786213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L1 [5]", 0, params.getColumnPos(4)); 18796213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L1 [6]", 1, params.getColumnPos(5)); 18806213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L1 [7]", 2, params.getColumnPos(6)); 18816213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L1 [8]", 3, params.getColumnPos(7)); 18826213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L1 adjust", 0, params.mTopRowAdjustment); 18836213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 18846213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 18856213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 18866213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka // |___ [7] [5] [6] [8] 1887aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] <1> [2] [4] 18886213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout8KeyMax5L2() { 18896213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(8, 5, XPOS_L2); 18906213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L2 columns", 4, params.mNumColumns); 18916213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L2 rows", 2, params.mNumRows); 18926213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L2 left", 1, params.mLeftKeys); 18936213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L2 right", 3, params.mRightKeys); 1894aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("8 key max 5 L2 <1>", 0, params.getColumnPos(0)); 18956213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L2 [2]", 1, params.getColumnPos(1)); 18966213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L2 [3]", -1, params.getColumnPos(2)); 18976213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L2 [4]", 2, params.getColumnPos(3)); 18986213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L2 [5]", 0, params.getColumnPos(4)); 18996213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L2 [6]", 1, params.getColumnPos(5)); 19006213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L2 [7]", -1, params.getColumnPos(6)); 19016213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L2 [8]", 2, params.getColumnPos(7)); 19026213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L2 adjust", 0, params.mTopRowAdjustment); 19036213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 L2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 19045d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 19055d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 19065d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // [8] [7] [6] [5]| 1907aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [3] [2] <1>| 19086213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout8KeyMax5R0() { 19096213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(8, 5, XPOS_R0); 19106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R0 columns", 4, params.mNumColumns); 19116213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R0 rows", 2, params.mNumRows); 19126213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R0 left", 3, params.mLeftKeys); 19136213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R0 right", 1, params.mRightKeys); 1914aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("8 key max 5 R0 <1>", 0, params.getColumnPos(0)); 19156213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R0 [2]", -1, params.getColumnPos(1)); 19166213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R0 [3]", -2, params.getColumnPos(2)); 19176213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R0 [4]", -3, params.getColumnPos(3)); 19186213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R0 [5]", 0, params.getColumnPos(4)); 19196213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R0 [6]", -1, params.getColumnPos(5)); 19206213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R0 [7]", -2, params.getColumnPos(6)); 19216213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R0 [8]", -3, params.getColumnPos(7)); 19226213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R0 adjust", 0, params.mTopRowAdjustment); 19236213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R0 default", WIDTH * 3, params.getDefaultKeyCoordX()); 19245d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 19255d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 19265d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // [8] [7] [6] [5] ___| 1927aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [3] [2] <1> ___| 19286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout8KeyMax5R1() { 19296213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(8, 5, XPOS_R1); 19306213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R1 columns", 4, params.mNumColumns); 19316213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R1 rows", 2, params.mNumRows); 19326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R1 left", 3, params.mLeftKeys); 19336213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R1 right", 1, params.mRightKeys); 1934aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("8 key max 5 R1 <1>", 0, params.getColumnPos(0)); 19356213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R1 [2]", -1, params.getColumnPos(1)); 19366213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R1 [3]", -2, params.getColumnPos(2)); 19376213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R1 [4]", -3, params.getColumnPos(3)); 19386213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R1 [5]", 0, params.getColumnPos(4)); 19396213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R1 [6]", -1, params.getColumnPos(5)); 19406213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R1 [7]", -2, params.getColumnPos(6)); 19416213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R1 [8]", -3, params.getColumnPos(7)); 19426213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R1 adjust", 0, params.mTopRowAdjustment); 19436213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R1 default", WIDTH * 3, params.getDefaultKeyCoordX()); 19446213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 19456213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 19466213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka // [8] [7] [5] [6] ___| 1947aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [4] [3] <1> [2] ___| 19486213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout8KeyMax5R2() { 19496213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(8, 5, XPOS_R2); 19506213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R2 columns", 4, params.mNumColumns); 19516213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R2 rows", 2, params.mNumRows); 19526213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R2 left", 2, params.mLeftKeys); 19536213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R2 right", 2, params.mRightKeys); 1954aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("8 key max 5 R2 <1>", 0, params.getColumnPos(0)); 19556213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R2 [2]", 1, params.getColumnPos(1)); 19566213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R2 [3]", -1, params.getColumnPos(2)); 19576213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R2 [4]", -2, params.getColumnPos(3)); 19586213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R2 [5]", 0, params.getColumnPos(4)); 19596213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R2 [6]", 1, params.getColumnPos(5)); 19606213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R2 [7]", -1, params.getColumnPos(6)); 19616213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R2 [8]", -2, params.getColumnPos(7)); 19626213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R2 adjust", 0, params.mTopRowAdjustment); 19636213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("8 key max 5 R2 default", WIDTH * 2, params.getDefaultKeyCoordX()); 196404c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka } 196504c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka 196604c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka // [8] [6] [7] [9] 1967aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [3] <1> [2] [4] 19686213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout9KeyMax5M0() { 19696213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(9, 5, XPOS_M0); 19706213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 M0 columns", 5, params.mNumColumns); 19716213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 M0 rows", 2, params.mNumRows); 19726213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 M0 left", 2, params.mLeftKeys); 19736213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 M0 right", 3, params.mRightKeys); 1974aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("9 key max 5 M0 <1>", 0, params.getColumnPos(0)); 19756213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 M0 [2]", 1, params.getColumnPos(1)); 19766213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 M0 [3]", -1, params.getColumnPos(2)); 19776213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 M0 [4]", 2, params.getColumnPos(3)); 19786213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 M0 [5]", -2, params.getColumnPos(4)); 19796213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 M0 [6]", 0, params.getColumnPos(5)); 19806213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 M0 [7]", 1, params.getColumnPos(6)); 19816213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 M0 [8]", -1, params.getColumnPos(7)); 19826213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 M0 [9]", 2, params.getColumnPos(8)); 19836213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 M0 adjust", -1, params.mTopRowAdjustment); 19846213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 M0 default", WIDTH * 2, params.getDefaultKeyCoordX()); 19856213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 19866213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 1987aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |[6] [7] [8] [9] 1988aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] [3] [4] [5] 19896213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout9KeyMax5L0() { 19906213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(9, 5, XPOS_L0); 19916213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L0 columns", 5, params.mNumColumns); 19926213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L0 rows", 2, params.mNumRows); 19936213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L0 left", 0, params.mLeftKeys); 19946213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L0 right", 5, params.mRightKeys); 1995aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("9 key max 5 L0 <1>", 0, params.getColumnPos(0)); 19966213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L0 [2]", 1, params.getColumnPos(1)); 19976213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L0 [3]", 2, params.getColumnPos(2)); 19986213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L0 [4]", 3, params.getColumnPos(3)); 19996213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L0 [5]", 4, params.getColumnPos(4)); 20006213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L0 [6]", 0, params.getColumnPos(5)); 20016213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L0 [7]", 1, params.getColumnPos(6)); 20026213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L0 [8]", 2, params.getColumnPos(7)); 20036213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L0 [9]", 3, params.getColumnPos(8)); 2004aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("9 key max 5 L0 adjust", 0, params.mTopRowAdjustment); 20056213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 20066213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 20076213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 2008aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [6] [7] [8] [9] 2009aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] [3] [4] [5] 20106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout9KeyMax5L1() { 20116213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(9, 5, XPOS_L1); 20126213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L1 columns", 5, params.mNumColumns); 20136213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L1 rows", 2, params.mNumRows); 20146213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L1 left", 0, params.mLeftKeys); 20156213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L1 right", 5, params.mRightKeys); 2016aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("9 key max 5 L1 <1>", 0, params.getColumnPos(0)); 20176213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L1 [2]", 1, params.getColumnPos(1)); 20186213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L1 [3]", 2, params.getColumnPos(2)); 20196213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L1 [4]", 3, params.getColumnPos(3)); 20206213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L1 [5]", 4, params.getColumnPos(4)); 20216213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L1 [6]", 0, params.getColumnPos(5)); 20226213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L1 [7]", 1, params.getColumnPos(6)); 20236213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L1 [8]", 2, params.getColumnPos(7)); 20246213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L1 [9]", 3, params.getColumnPos(8)); 2025aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("9 key max 5 L1 adjust",0, params.mTopRowAdjustment); 20266213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 20276213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 20286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 2029aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [6] [7] [8] [9] 2030aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] <1> [2] [4] [5] 20316213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout9KeyMax5L2() { 20326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(9, 5, XPOS_L2); 20336213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L2 columns", 5, params.mNumColumns); 20346213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L2 rows", 2, params.mNumRows); 20356213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L2 left", 1, params.mLeftKeys); 20366213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L2 right", 4, params.mRightKeys); 2037aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("9 key max 5 L2 <1>", 0, params.getColumnPos(0)); 20386213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L2 [2]", 1, params.getColumnPos(1)); 20396213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L2 [3]", -1, params.getColumnPos(2)); 20406213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L2 [4]", 2, params.getColumnPos(3)); 20416213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L2 [5]", 3, params.getColumnPos(4)); 20426213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L2 [6]", 0, params.getColumnPos(5)); 20436213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L2 [7]", 1, params.getColumnPos(6)); 2044aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("9 key max 5 L2 [8]", 2, params.getColumnPos(7)); 2045aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("9 key max 5 L2 [9]", 3, params.getColumnPos(8)); 2046aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("9 key max 5 L2 adjust", -1, params.mTopRowAdjustment); 20476213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 L2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 20486213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 20496213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 2050aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [9] [8] [7] [6]| 2051aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [4] [3] [2] <1>| 20526213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout9KeyMax5R0() { 20536213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(9, 5, XPOS_R0); 20546213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R0 columns", 5, params.mNumColumns); 20556213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R0 rows", 2, params.mNumRows); 20566213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R0 left", 4, params.mLeftKeys); 20576213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R0 right", 1, params.mRightKeys); 2058aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("9 key max 5 R0 <1>", 0, params.getColumnPos(0)); 20596213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R0 [2]", -1, params.getColumnPos(1)); 20606213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R0 [3]", -2, params.getColumnPos(2)); 20616213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R0 [4]", -3, params.getColumnPos(3)); 20626213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R0 [5]", -4, params.getColumnPos(4)); 20636213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R0 [6]", 0, params.getColumnPos(5)); 20646213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R0 [7]", -1, params.getColumnPos(6)); 20656213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R0 [8]", -2, params.getColumnPos(7)); 20666213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R0 [9]", -3, params.getColumnPos(8)); 2067aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("9 key max 5 R0 adjust", 0, params.mTopRowAdjustment); 20686213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R0 default", WIDTH * 4, params.getDefaultKeyCoordX()); 20696213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 20706213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 2071aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [9] [8] [7] [6] ___| 2072aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [4] [3] [2] <1> ___| 20736213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout9KeyMax5R1() { 20746213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(9, 5, XPOS_R1); 20756213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R1 columns", 5, params.mNumColumns); 20766213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R1 rows", 2, params.mNumRows); 20776213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R1 left", 4, params.mLeftKeys); 20786213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R1 right", 1, params.mRightKeys); 2079aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("9 key max 5 R1 <1>", 0, params.getColumnPos(0)); 20806213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R1 [2]", -1, params.getColumnPos(1)); 20816213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R1 [3]", -2, params.getColumnPos(2)); 20826213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R1 [4]", -3, params.getColumnPos(3)); 20836213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R1 [5]", -4, params.getColumnPos(4)); 20846213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R1 [6]", 0, params.getColumnPos(5)); 20856213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R1 [7]", -1, params.getColumnPos(6)); 20866213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R1 [8]", -2, params.getColumnPos(7)); 20876213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R1 [9]", -3, params.getColumnPos(8)); 2088aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("9 key max 5 R1 adjust", 0, params.mTopRowAdjustment); 20896213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R1 default", WIDTH * 4, params.getDefaultKeyCoordX()); 20906213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 20916213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 20926213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka // [9] [8] [6] [7] ___| 2093aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [4] [3] <1> [2] ___| 20946213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout9KeyMax5R2() { 20956213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(9, 5, XPOS_R2); 20966213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R2 columns", 5, params.mNumColumns); 20976213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R2 rows", 2, params.mNumRows); 20986213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R2 left", 3, params.mLeftKeys); 20996213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R2 right", 2, params.mRightKeys); 2100aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("9 key max 5 R2 <1>", 0, params.getColumnPos(0)); 21016213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R2 [2]", 1, params.getColumnPos(1)); 21026213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R2 [3]", -1, params.getColumnPos(2)); 21036213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R2 [4]", -2, params.getColumnPos(3)); 21046213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R2 [5]", -3, params.getColumnPos(4)); 21056213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R2 [6]", 0, params.getColumnPos(5)); 21066213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R2 [7]", 1, params.getColumnPos(6)); 21076213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R2 [8]", -1, params.getColumnPos(7)); 21086213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R2 [9]", -2, params.getColumnPos(8)); 21096213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R2 adjust", -1, params.mTopRowAdjustment); 21106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("9 key max 5 R2 default", WIDTH * 3, params.getDefaultKeyCoordX()); 21115d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 21125d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 21135d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // [A] [8] [6] [7] [9] 2114aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [3] <1> [2] [4] 21156213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout10KeyMax5M0() { 21166213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(10, 5, XPOS_M0); 21176213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 columns", 5, params.mNumColumns); 21186213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 rows", 2, params.mNumRows); 21196213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 left", 2, params.mLeftKeys); 21206213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 right", 3, params.mRightKeys); 2121aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("10 key max 5 M0 <1>", 0, params.getColumnPos(0)); 21226213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 [2]", 1, params.getColumnPos(1)); 21236213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 [3]", -1, params.getColumnPos(2)); 21246213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 [4]", 2, params.getColumnPos(3)); 21256213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 [5]", -2, params.getColumnPos(4)); 21266213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 [6]", 0, params.getColumnPos(5)); 21276213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 [7]", 1, params.getColumnPos(6)); 21286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 [8]", -1, params.getColumnPos(7)); 21296213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 [9]", 2, params.getColumnPos(8)); 21306213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 [A]", -2, params.getColumnPos(9)); 21316213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 adjust", 0, params.mTopRowAdjustment); 21326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 M0 default", WIDTH * 2, params.getDefaultKeyCoordX()); 21335d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 21345d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 21355d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // |[6] [7] [8] [9] [A] 2136aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |<1> [2] [3] [4] [5] 21376213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout10KeyMax5L0() { 21386213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(10, 5, XPOS_L0); 21396213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 columns", 5, params.mNumColumns); 21406213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 rows", 2, params.mNumRows); 21416213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 left", 0, params.mLeftKeys); 21426213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 right", 5, params.mRightKeys); 2143aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("10 key max 5 L0 <1>", 0, params.getColumnPos(0)); 21446213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 [2]", 1, params.getColumnPos(1)); 21456213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 [3]", 2, params.getColumnPos(2)); 21466213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 [4]", 3, params.getColumnPos(3)); 21476213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 [5]", 4, params.getColumnPos(4)); 21486213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 [6]", 0, params.getColumnPos(5)); 21496213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 [7]", 1, params.getColumnPos(6)); 21506213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 [8]", 2, params.getColumnPos(7)); 21516213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 [9]", 3, params.getColumnPos(8)); 21526213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 [A]", 4, params.getColumnPos(9)); 21536213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 adjust", 0, params.mTopRowAdjustment); 21546213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L0 default", WIDTH * 0, params.getDefaultKeyCoordX()); 21555d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 21565d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 21575d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // |___ [6] [7] [8] [9] [A] 2158aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ <1> [2] [3] [4] [5] 21596213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout10KeyMax5L1() { 21606213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(10, 5, XPOS_L1); 21616213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 columns", 5, params.mNumColumns); 21626213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 rows", 2, params.mNumRows); 21636213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 left", 0, params.mLeftKeys); 21646213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 right", 5, params.mRightKeys); 2165aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("10 key max 5 L1 <1>", 0, params.getColumnPos(0)); 21666213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 [2]", 1, params.getColumnPos(1)); 21676213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 [3]", 2, params.getColumnPos(2)); 21686213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 [4]", 3, params.getColumnPos(3)); 21696213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 [5]", 4, params.getColumnPos(4)); 21706213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 [6]", 0, params.getColumnPos(5)); 21716213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 [7]", 1, params.getColumnPos(6)); 21726213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 [8]", 2, params.getColumnPos(7)); 21736213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 [9]", 3, params.getColumnPos(8)); 21746213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 [A]", 4, params.getColumnPos(9)); 21756213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 adjust", 0, params.mTopRowAdjustment); 21766213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L1 default", WIDTH * 0, params.getDefaultKeyCoordX()); 21776213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 21786213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 21796213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka // |___ [8] [6] [7] [9] [A] 2180aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // |___ [3] <1> [2] [4] [5] 21816213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout10KeyMax5L2() { 21826213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(10, 5, XPOS_L2); 21836213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 columns", 5, params.mNumColumns); 21846213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 rows", 2, params.mNumRows); 21856213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 left", 1, params.mLeftKeys); 21866213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 right", 4, params.mRightKeys); 2187aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("10 key max 5 L2 <1>", 0, params.getColumnPos(0)); 21886213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 [2]", 1, params.getColumnPos(1)); 21896213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 [3]", -1, params.getColumnPos(2)); 21906213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 [4]", 2, params.getColumnPos(3)); 21916213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 [5]", 3, params.getColumnPos(4)); 21926213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 [6]", 0, params.getColumnPos(5)); 21936213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 [7]", 1, params.getColumnPos(6)); 21946213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 [8]", -1, params.getColumnPos(7)); 21956213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 [9]", 2, params.getColumnPos(8)); 21966213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 [A]", 3, params.getColumnPos(9)); 21976213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 adjust", 0, params.mTopRowAdjustment); 21986213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 L2 default", WIDTH * 1, params.getDefaultKeyCoordX()); 21995d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 22005d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 22015d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // [A] [9] [8] [7] [6]| 2202aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [4] [3] [2] <1>| 22036213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout10KeyMax5R0() { 22046213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(10, 5, XPOS_R0); 22056213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 columns", 5, params.mNumColumns); 22066213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 rows", 2, params.mNumRows); 22076213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 left", 4, params.mLeftKeys); 22086213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 right", 1, params.mRightKeys); 2209aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("10 key max 5 R0 <1>", 0, params.getColumnPos(0)); 22106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 [2]", -1, params.getColumnPos(1)); 22116213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 [3]", -2, params.getColumnPos(2)); 22126213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 [4]", -3, params.getColumnPos(3)); 22136213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 [5]", -4, params.getColumnPos(4)); 22146213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 [6]", 0, params.getColumnPos(5)); 22156213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 [7]", -1, params.getColumnPos(6)); 22166213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 [8]", -2, params.getColumnPos(7)); 22176213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 [9]", -3, params.getColumnPos(8)); 22186213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 [A]", -4, params.getColumnPos(9)); 22196213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 adjust", 0, params.mTopRowAdjustment); 22206213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R0 default", WIDTH * 4, params.getDefaultKeyCoordX()); 22215d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 22225d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 22235d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // [A] [9] [8] [7] [6] ___| 2224aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [4] [3] [2] <1> ___| 22256213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout10KeyMax5R1() { 22266213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(10, 5, XPOS_R1); 22276213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 columns", 5, params.mNumColumns); 22286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 rows", 2, params.mNumRows); 22296213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 left", 4, params.mLeftKeys); 22306213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 right", 1, params.mRightKeys); 2231aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("10 key max 5 R1 <1>", 0, params.getColumnPos(0)); 22326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 [2]", -1, params.getColumnPos(1)); 22336213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 [3]", -2, params.getColumnPos(2)); 22346213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 [4]", -3, params.getColumnPos(3)); 22356213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 [5]", -4, params.getColumnPos(4)); 22366213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 [6]", 0, params.getColumnPos(5)); 22376213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 [7]", -1, params.getColumnPos(6)); 22386213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 [8]", -2, params.getColumnPos(7)); 22396213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 [9]", -3, params.getColumnPos(8)); 22406213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 [A]", -4, params.getColumnPos(9)); 22416213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 adjust", 0, params.mTopRowAdjustment); 22426213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R1 default", WIDTH * 4, params.getDefaultKeyCoordX()); 22436213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka } 22446213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka 22456213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka // [A] [9] [8] [6] [7] ___| 2246aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [4] [3] <1> [2] ___| 22476213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout10KeyMax5R2() { 22486213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(10, 5, XPOS_R2); 22496213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 columns", 5, params.mNumColumns); 22506213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 rows", 2, params.mNumRows); 22516213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 left", 3, params.mLeftKeys); 22526213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 right", 2, params.mRightKeys); 2253aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("10 key max 5 R2 <1>", 0, params.getColumnPos(0)); 22546213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 [2]", 1, params.getColumnPos(1)); 22556213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 [3]", -1, params.getColumnPos(2)); 22566213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 [4]", -2, params.getColumnPos(3)); 22576213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 [5]", -3, params.getColumnPos(4)); 22586213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 [6]", 0, params.getColumnPos(5)); 22596213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 [7]", 1, params.getColumnPos(6)); 22606213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 [8]", -1, params.getColumnPos(7)); 22616213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 [9]", -2, params.getColumnPos(8)); 22626213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 [A]", -3, params.getColumnPos(9)); 22636213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 adjust", 0, params.mTopRowAdjustment); 22646213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("10 key max 5 R2 default", WIDTH * 3, params.getDefaultKeyCoordX()); 22655d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 22665d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 2267aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [9] [A] [B] 22685d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // [7] [5] [6] [8] 2269aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] [4] 22706213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout11KeyMax5M0() { 22716213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(11, 5, XPOS_M0); 22726213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("11 key max 5 M0 columns", 4, params.mNumColumns); 22736213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("11 key max 5 M0 rows", 3, params.mNumRows); 22746213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("11 key max 5 M0 left", 1, params.mLeftKeys); 22756213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("11 key max 5 M0 right", 3, params.mRightKeys); 2276aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("11 key max 5 M0 <1>", 0, params.getColumnPos(0)); 22776213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("11 key max 5 M0 [2]", 1, params.getColumnPos(1)); 22786213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("11 key max 5 M0 [3]", -1, params.getColumnPos(2)); 22796213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("11 key max 5 M0 [4]", 2, params.getColumnPos(3)); 22806213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("11 key max 5 M0 [5]", 0, params.getColumnPos(4)); 22816213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("11 key max 5 M0 [6]", 1, params.getColumnPos(5)); 22826213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("11 key max 5 M0 [7]", -1, params.getColumnPos(6)); 22836213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("11 key max 5 M0 [8]", 2, params.getColumnPos(7)); 22846213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("11 key max 5 M0 [9]", 0, params.getColumnPos(8)); 22856213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("11 key max 5 M0 [A]", 1, params.getColumnPos(9)); 2286aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("11 key max 5 M0 [B]", 2, params.getColumnPos(10)); 2287aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("11 key max 5 M0 adjust", -1, params.mTopRowAdjustment); 22886213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("11 key max 5 M0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 22895d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 22905d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 22915d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // [B] [9] [A] [C] 22925d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // [7] [5] [6] [8] 2293aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [3] <1> [2] [4] 22946213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout12KeyMax5M0() { 22956213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(12, 5, XPOS_M0); 22966213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 columns", 4, params.mNumColumns); 22976213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 rows", 3, params.mNumRows); 22986213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 left", 1, params.mLeftKeys); 22996213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 right", 3, params.mRightKeys); 2300aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("12 key max 5 M0 <1>", 0, params.getColumnPos(0)); 23016213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 [2]", 1, params.getColumnPos(1)); 23026213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 [3]", -1, params.getColumnPos(2)); 23036213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 [4]", 2, params.getColumnPos(3)); 23046213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 [5]", 0, params.getColumnPos(4)); 23056213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 [6]", 1, params.getColumnPos(5)); 23066213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 [7]", -1, params.getColumnPos(6)); 23076213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 [8]", 2, params.getColumnPos(7)); 23086213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 [9]", 0, params.getColumnPos(8)); 23096213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 [A]", 1, params.getColumnPos(9)); 23106213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 [B]", -1, params.getColumnPos(10)); 23116213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 [C]", 2, params.getColumnPos(11)); 23126213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 adjust", 0, params.mTopRowAdjustment); 23136213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("12 key max 5 M0 default", WIDTH * 1, params.getDefaultKeyCoordX()); 23145d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka } 23155d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka 23165d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // [D] [B] [C] 23175d542c24922ae531a581c122d685c3d86047b468Tadashi G. Takaoka // [A] [8] [6] [7] [9] 2318aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [3] <1> [2] [4] 23196213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka public void testLayout13KeyMax5M0() { 23206213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(13, 5, XPOS_M0); 23216213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 columns", 5, params.mNumColumns); 23226213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 rows", 3, params.mNumRows); 23236213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 left", 2, params.mLeftKeys); 23246213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 right", 3, params.mRightKeys); 2325aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 <1>", 0, params.getColumnPos(0)); 23266213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 [2]", 1, params.getColumnPos(1)); 23276213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 [3]", -1, params.getColumnPos(2)); 23286213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 [4]", 2, params.getColumnPos(3)); 23296213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 [5]", -2, params.getColumnPos(4)); 23306213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 [6]", 0, params.getColumnPos(5)); 23316213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 [7]", 1, params.getColumnPos(6)); 23326213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 [8]", -1, params.getColumnPos(7)); 23336213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 [9]", 2, params.getColumnPos(8)); 23346213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 [A]", -2, params.getColumnPos(9)); 23356213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 [B]", 0, params.getColumnPos(10)); 23366213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 [C]", 1, params.getColumnPos(11)); 23376213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 [D]", -1, params.getColumnPos(12)); 23386213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 adjust", 0, params.mTopRowAdjustment); 23396213983fa147d010ce30314f43b0a1800d2528baTadashi G. Takaoka assertEquals("13 key max 5 M0 default", WIDTH * 2, params.getDefaultKeyCoordX()); 234004c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka } 2341aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka 2342aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [D] [B] [C] [E] 2343aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [A] [8] [6] [7] [9] 2344aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka // [5] [3] <1> [2] [4] 2345aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka public void testLayout14KeyMax5M0() { 2346aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka MoreKeysKeyboardParams params = createParams(14, 5, XPOS_M0); 2347aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 columns", 5, params.mNumColumns); 2348aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 rows", 3, params.mNumRows); 2349aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 left", 2, params.mLeftKeys); 2350aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 right", 3, params.mRightKeys); 2351aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 <1>", 0, params.getColumnPos(0)); 2352aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 [2]", 1, params.getColumnPos(1)); 2353aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 [3]", -1, params.getColumnPos(2)); 2354aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 [4]", 2, params.getColumnPos(3)); 2355aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 [5]", -2, params.getColumnPos(4)); 2356aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 [6]", 0, params.getColumnPos(5)); 2357aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 [7]", 1, params.getColumnPos(6)); 2358aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 [8]", -1, params.getColumnPos(7)); 2359aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 [9]", 2, params.getColumnPos(8)); 2360aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 [A]", -2, params.getColumnPos(9)); 2361aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 [B]", 0, params.getColumnPos(10)); 2362aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 [C]", 1, params.getColumnPos(11)); 2363aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 [D]", -1, params.getColumnPos(12)); 2364aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 [E]", 2, params.getColumnPos(13)); 2365aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 adjust", -1, params.mTopRowAdjustment); 2366aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka assertEquals("13 key max 5 M0 default", WIDTH * 2, params.getDefaultKeyCoordX()); 2367aeeed758480b0fac848f4556884d978f3004555bTadashi G. Takaoka } 236804c96ab966e8a58e5cd401362b49509751ce75d9Tadashi G. Takaoka} 2369