diff options
author | Yigit Boyar <yboyar@google.com> | 2015-04-16 15:12:02 -0700 |
---|---|---|
committer | Yigit Boyar <yboyar@google.com> | 2015-04-16 19:00:18 -0700 |
commit | ee7586713d68806b556a425cbebf007a56261ff3 (patch) | |
tree | 2528563bfa37afa021ac37ed172b5513cd063111 /compiler/src/test/java/android/databinding/tool/reflection | |
parent | 3b8fedce6e9ee814ffe7b63d07aa5456f08fb9b2 (diff) | |
download | data-binding-ee7586713d68806b556a425cbebf007a56261ff3.tar.gz |
Add 3rd party licenses to fatJar
This CL adds 3rd party licenses to compiler-fatJar so that
we can use it in our build process w/o maven dependency.
It also removes dependency on SDK folder for api level lookup
by shipping versions.xml file with the bundle.
It adds a new gradle task, preparePrebuilds, which bundsles
all necessary builds to a prebuild folder which should be
committed. These pre-builds will be used by the makefile to
support make builds.
Bug: 19945740
Change-Id: I0bba72bbb13770aba94317301217ddd842211e2d
Diffstat (limited to 'compiler/src/test/java/android/databinding/tool/reflection')
-rw-r--r-- | compiler/src/test/java/android/databinding/tool/reflection/SdkVersionTest.java | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/compiler/src/test/java/android/databinding/tool/reflection/SdkVersionTest.java b/compiler/src/test/java/android/databinding/tool/reflection/SdkVersionTest.java new file mode 100644 index 00000000..00456645 --- /dev/null +++ b/compiler/src/test/java/android/databinding/tool/reflection/SdkVersionTest.java @@ -0,0 +1,59 @@ +/* + * Copyright (C) 2015 The Android Open Source Project + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package android.databinding.tool.reflection; + +import org.junit.Before; +import org.junit.Test; + +import android.databinding.tool.reflection.java.JavaAnalyzer; + +import static org.junit.Assert.assertEquals; + +public class SdkVersionTest { + + @Before + public void setUp() throws Exception { + JavaAnalyzer.initForTests(); + } + + @Test + public void testApiVersionsFromResources() { + SdkUtil.ApiChecker apiChecker = SdkUtil.sApiChecker; + int minSdk = SdkUtil.sMinSdk; + try { + SdkUtil.sApiChecker = new SdkUtil.ApiChecker(null); + ModelClass view = ModelAnalyzer.getInstance().findClass("android.widget.TextView", null); + ModelMethod isSuggestionsEnabled = view.getMethods("isSuggestionsEnabled", 0)[0]; + assertEquals(14, SdkUtil.getMinApi(isSuggestionsEnabled)); + } finally { + SdkUtil.sMinSdk = minSdk; + SdkUtil.sApiChecker = apiChecker; + } + } + + @Test + public void testNewApiMethod() { + ModelClass view = ModelAnalyzer.getInstance().findClass("android.view.View", null); + ModelMethod setElevation = view.getMethods("setElevation", 1)[0]; + assertEquals(21, SdkUtil.getMinApi(setElevation)); + } + + @Test + public void testCustomCode() { + ModelClass view = ModelAnalyzer.getInstance() + .findClass("android.databinding.tool.reflection.SdkVersionTest", null); + ModelMethod setElevation = view.getMethods("testCustomCode", 0)[0]; + assertEquals(1, SdkUtil.getMinApi(setElevation)); + } +} |