pull/2/head
commit
b5ea108609
@ -0,0 +1,96 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2022 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
|
||||||
|
*
|
||||||
|
* https://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 com.google.samples.apps.nowinandroid.core.database.util
|
||||||
|
|
||||||
|
import com.google.samples.apps.nowinandroid.core.model.data.NewsResourceType
|
||||||
|
import org.junit.Assert.assertEquals
|
||||||
|
import org.junit.Test
|
||||||
|
|
||||||
|
class NewsResourceTypeConverterTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_room_news_resource_type_converter_for_video() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.Video,
|
||||||
|
NewsResourceTypeConverter().stringToNewsResourceType("Video 📺")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_room_news_resource_type_converter_for_article() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.Article,
|
||||||
|
NewsResourceTypeConverter().stringToNewsResourceType("Article 📚")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_room_news_resource_type_converter_for_api_change() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.APIChange,
|
||||||
|
NewsResourceTypeConverter().stringToNewsResourceType("API change")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_room_news_resource_type_converter_for_codelab() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.Codelab,
|
||||||
|
NewsResourceTypeConverter().stringToNewsResourceType("Codelab")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_room_news_resource_type_converter_for_podcast() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.Podcast,
|
||||||
|
NewsResourceTypeConverter().stringToNewsResourceType("Podcast 🎙")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_room_news_resource_type_converter_for_docs() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.Docs,
|
||||||
|
NewsResourceTypeConverter().stringToNewsResourceType("Docs 📑")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_room_news_resource_type_converter_for_event() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.Event,
|
||||||
|
NewsResourceTypeConverter().stringToNewsResourceType("Event 📆")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_room_news_resource_type_converter_for_dac() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.DAC,
|
||||||
|
NewsResourceTypeConverter().stringToNewsResourceType("DAC")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_room_news_resource_type_converter_for_umm() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.Unknown,
|
||||||
|
NewsResourceTypeConverter().stringToNewsResourceType("umm")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,97 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2022 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
|
||||||
|
*
|
||||||
|
* https://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 com.google.samples.apps.nowinandroid.core.network.model.util
|
||||||
|
|
||||||
|
import com.google.samples.apps.nowinandroid.core.model.data.NewsResourceType
|
||||||
|
import kotlinx.serialization.json.Json
|
||||||
|
import org.junit.Assert.assertEquals
|
||||||
|
import org.junit.Test
|
||||||
|
|
||||||
|
class NewsResourceTypeSerializerTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_news_resource_serializer_video() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.Video,
|
||||||
|
Json.decodeFromString(NewsResourceTypeSerializer, """"Video 📺"""")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_news_resource_serializer_article() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.Article,
|
||||||
|
Json.decodeFromString(NewsResourceTypeSerializer, """"Article 📚"""")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_news_resource_serializer_api_change() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.APIChange,
|
||||||
|
Json.decodeFromString(NewsResourceTypeSerializer, """"API change"""")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_news_resource_serializer_codelab() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.Codelab,
|
||||||
|
Json.decodeFromString(NewsResourceTypeSerializer, """"Codelab"""")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_news_resource_serializer_podcast() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.Podcast,
|
||||||
|
Json.decodeFromString(NewsResourceTypeSerializer, """"Podcast 🎙"""")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_news_resource_serializer_docs() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.Docs,
|
||||||
|
Json.decodeFromString(NewsResourceTypeSerializer, """"Docs 📑"""")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_news_resource_serializer_event() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.Event,
|
||||||
|
Json.decodeFromString(NewsResourceTypeSerializer, """"Event 📆"""")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_news_resource_serializer_dac() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.DAC,
|
||||||
|
Json.decodeFromString(NewsResourceTypeSerializer, """"DAC"""")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun test_news_resource_serializer_unknown() {
|
||||||
|
assertEquals(
|
||||||
|
NewsResourceType.Unknown,
|
||||||
|
Json.decodeFromString(NewsResourceTypeSerializer, """"umm"""")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue