1ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera/*
2ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera * Copyright (C) 2016 The Android Open Source Project
3ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera *
4ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera * Licensed under the Apache License, Version 2.0 (the "License");
5ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera * you may not use this file except in compliance with the License.
6ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera * You may obtain a copy of the License at
7ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera *
8ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera *      http://www.apache.org/licenses/LICENSE-2.0
9ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera *
10ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera * Unless required by applicable law or agreed to in writing, software
11ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera * distributed under the License is distributed on an "AS IS" BASIS,
12ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera * See the License for the specific language governing permissions and
14ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera * limitations under the License
15ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera */
16ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera
17ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmerapackage libcore.java.util;
18ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera
19ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmeraimport java.util.List;
20ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera
21ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmeraimport static junit.framework.Assert.assertEquals;
22ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmeraimport static junit.framework.Assert.fail;
23ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera
24ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmerapublic class ListDefaultMethodTester {
25ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera
26ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera    public static void test_replaceAll(List<Integer> l) {
27ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        l.add(5);
28ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        l.add(2);
29ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        l.add(-3);
30ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        l.replaceAll(v -> v * 2);
31ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        assertEquals((Integer)10, l.get(0));
32ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        assertEquals((Integer)4, l.get(1));
33ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        assertEquals((Integer)(-6), l.get(2));
34ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera
35ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        try {
36ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera            l.replaceAll(null);
37ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera            fail();
38ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        } catch (NullPointerException expected) {}
39ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera    }
40ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera
41ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera    public static void test_sort(List<Double> l) {
42ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        l.add(5.0);
43ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        l.add(2.0);
44ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        l.add(-3.0);
45ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        l.sort((v1, v2) -> v1.compareTo(v2));
46ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        assertEquals(-3.0, l.get(0));
47ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        assertEquals(2.0, l.get(1));
48ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera        assertEquals(5.0, l.get(2));
49ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera    }
50ed47d30308588e419164d9311a41b04b8eefa04cShubham Ajmera}
51