WritableValueTest.kt revision f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cd
1f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets/*
2f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets * Copyright 2018 The Android Open Source Project
3f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets *
4f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets * Licensed under the Apache License, Version 2.0 (the "License");
5f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets * you may not use this file except in compliance with the License.
6f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets * You may obtain a copy of the License at
7f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets *
8f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets *      http://www.apache.org/licenses/LICENSE-2.0
9f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets *
10f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets * Unless required by applicable law or agreed to in writing, software
11f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets * distributed under the License is distributed on an "AS IS" BASIS,
12f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets * See the License for the specific language governing permissions and
14f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets * limitations under the License.
15f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets */
16f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets
17f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinetspackage android.arch.navigation.safe.args.generator
18f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets
19f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinetsimport org.hamcrest.CoreMatchers.`is`
20f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinetsimport org.hamcrest.MatcherAssert.assertThat
21f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinetsimport org.junit.Test
22f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinetsimport org.junit.runner.RunWith
23f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinetsimport org.junit.runners.JUnit4
24f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets
25f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets@RunWith(JUnit4::class)
26f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinetsclass NavTypesTest {
27f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets
28f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets    @Test
29f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets    fun testIntVerify() {
30f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets        assertThat(IntegerType.verify("foo"), `is`(false))
31f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets        assertThat(IntegerType.verify("10"), `is`(true))
32f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets        assertThat(IntegerType.verify("-10"), `is`(true))
33f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets    }
34f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets
35f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets    @Test
36f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets    fun testIntWrite() {
37f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets        assertThat(IntegerType.write("-10").toString(), `is`("-10"))
38f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets        assertThat(IntegerType.write("11").toString(), `is`("11"))
39f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets    }
40f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets
41f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets    @Test
42f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets    fun testStringVerify() {
43f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets        assertThat(StringType.verify("foo"), `is`(true))
44f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets    }
45f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets
46f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets    @Test
47f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets    fun testStringWrite() {
48f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets        assertThat(StringType.write("foo").toString(), `is`("\"foo\""))
49f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets    }
50f49d36a214375ac9a735ab9af9e1b3a4b9d2a3cdSergey Vasilinets}