1bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount/*
2bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount * Copyright (C) 2015 The Android Open Source Project
3bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount *
4bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount * Licensed under the Apache License, Version 2.0 (the "License");
5bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount * you may not use this file except in compliance with the License.
6bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount * You may obtain a copy of the License at
7bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount *
8bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount *      http://www.apache.org/licenses/LICENSE-2.0
9bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount *
10bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount * Unless required by applicable law or agreed to in writing, software
11bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount * distributed under the License is distributed on an "AS IS" BASIS,
12bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount * See the License for the specific language governing permissions and
14bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount * limitations under the License.
15bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount */
16bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mountpackage android.databinding.testapp;
17bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount
18bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mountimport android.databinding.testapp.databinding.ConvertersBinding;
19bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount
20bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mountimport android.test.UiThreadTest;
21bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount
22bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mountimport java.util.ArrayList;
23bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mountimport java.util.LinkedList;
24bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount
25bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mountpublic class ConverterTest extends BaseDataBinderTest<ConvertersBinding> {
26bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount    public ConverterTest() {
27bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount        super(ConvertersBinding.class);
28bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount    }
29bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount
30bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount    @UiThreadTest
31bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount    public void testGenericConverter() {
32bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount        initBinder();
33bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount        ArrayList<String> values = new ArrayList<String>();
34bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount        LinkedList<String> linkedValues = new LinkedList<String>();
35bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount        values.add("Hello");
36bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount        values.add("World");
37bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount        linkedValues.add("Holy");
38bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount        linkedValues.add("Cow!");
39bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount        mBinder.setList(values);
40bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount        mBinder.setLinked(linkedValues);
41bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount        mBinder.executePendingBindings();
42bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount        assertEquals("Hello World", mBinder.textView1.getText().toString());
43bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount        assertEquals("Holy Cow!", mBinder.textView2.getText().toString());
44bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount    }
45bd42d20f70b1f88e27e3b3c9c3a9c55ec155d128George Mount}
46