1ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka/*
2ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka * Copyright (C) 2014 The Android Open Source Project
3ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka *
4ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka * Licensed under the Apache License, Version 2.0 (the "License");
5ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka * you may not use this file except in compliance with the License.
6ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka * You may obtain a copy of the License at
7ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka *
8ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka *      http://www.apache.org/licenses/LICENSE-2.0
9ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka *
10ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka * Unless required by applicable law or agreed to in writing, software
11ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka * distributed under the License is distributed on an "AS IS" BASIS,
12ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka * See the License for the specific language governing permissions and
14ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka * limitations under the License.
15ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka */
16ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka
17ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaokapackage com.android.inputmethod.keyboard.layout.tests;
18ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka
19ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaokaimport android.test.suitebuilder.annotation.SmallTest;
20ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka
21ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaokaimport com.android.inputmethod.keyboard.layout.LayoutBase;
22ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaokaimport com.android.inputmethod.keyboard.layout.Swiss;
23ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaokaimport com.android.inputmethod.keyboard.layout.expected.ExpectedKeyboardBuilder;
24ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka
25ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaokaimport java.util.Locale;
26ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka
27ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka/**
28ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka * fr_CH: French (Switzerland)/swiss
29ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka */
30ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka@SmallTest
31ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaokapublic final class TestsFrenchCH extends LayoutTestsBase {
32ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka    private static final Locale LOCALE = new Locale("fr", "CH");
33ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka    private static final LayoutBase LAYOUT = new Swiss(new FrenchCHCustomizer(LOCALE));
34ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka
35ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka    @Override
36ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka    LayoutBase getLayout() { return LAYOUT; }
37ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka
380dabae720a83f9099667dea4de002007fdf35d60Tadashi G. Takaoka    private static class FrenchCHCustomizer extends FrenchCustomizer {
39ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka        public FrenchCHCustomizer(final Locale locale) { super(locale); }
40ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka
41ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka        @Override
42ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka        public ExpectedKeyboardBuilder setAccentedLetters(final ExpectedKeyboardBuilder builder) {
430dabae720a83f9099667dea4de002007fdf35d60Tadashi G. Takaoka            super.setAccentedLetters(builder);
44ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka            return builder
45ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka                    // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
46ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka                    // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
47ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka                    .replaceKeyOfLabel(Swiss.ROW1_11, key("\u00E8", moreKey("\u00FC")))
48ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka                    // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
49ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka                    // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
50ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka                    .replaceKeyOfLabel(Swiss.ROW2_10, key("\u00E9", moreKey("\u00F6")))
51ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka                    // U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
52ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka                    // U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
530dabae720a83f9099667dea4de002007fdf35d60Tadashi G. Takaoka                    .replaceKeyOfLabel(Swiss.ROW2_11, key("\u00E0", moreKey("\u00E4")));
54ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka        }
55ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka    }
56ffd7db77c35c37b01a4ee415ed884eb9b63bbc5dTadashi G. Takaoka}
57