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