From 6ad8143fa851d9b5c38f4dfd4c744d4c5004857c Mon Sep 17 00:00:00 2001 From: joshliebe Date: Mon, 12 Aug 2024 11:57:41 +0100 Subject: [PATCH] Fix parsing issue --- .../AdClickAttributionFeatureModels.kt | 5 - .../AdClickAttributionFeatureSettingsStore.kt | 12 +- ...dClickAttributionAllowlistReferenceTest.kt | 2 +- ...lickAttributionLinkFormatsReferenceTest.kt | 2 +- .../ad_click_attribution_reference.json | 104 +++++++++--------- 5 files changed, 58 insertions(+), 67 deletions(-) diff --git a/ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/remoteconfig/AdClickAttributionFeatureModels.kt b/ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/remoteconfig/AdClickAttributionFeatureModels.kt index 8e3f57306366..997fa9bf66c0 100644 --- a/ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/remoteconfig/AdClickAttributionFeatureModels.kt +++ b/ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/remoteconfig/AdClickAttributionFeatureModels.kt @@ -19,11 +19,6 @@ package com.duckduckgo.adclick.impl.remoteconfig import com.squareup.moshi.Json data class AdClickAttributionFeatureModel( - @field:Json(name = "settings") - val settings: AdClickAttributionSettings, -) - -data class AdClickAttributionSettings( @field:Json(name = "linkFormats") val linkFormats: List, @field:Json(name = "allowlist") diff --git a/ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/remoteconfig/AdClickAttributionFeatureSettingsStore.kt b/ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/remoteconfig/AdClickAttributionFeatureSettingsStore.kt index 868ad5d04ff3..9252bc3bc5b8 100644 --- a/ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/remoteconfig/AdClickAttributionFeatureSettingsStore.kt +++ b/ad-click/ad-click-impl/src/main/java/com/duckduckgo/adclick/impl/remoteconfig/AdClickAttributionFeatureSettingsStore.kt @@ -36,12 +36,12 @@ class AdClickAttributionFeatureSettingsStore @Inject constructor( override fun store(jsonString: String) { jsonAdapter.fromJson(jsonString)?.let { adClickAttributionRepository.updateAll( - it.settings.linkFormats, - it.settings.allowlist, - it.settings.navigationExpiration, - it.settings.totalExpiration, - it.settings.heuristicDetection, - it.settings.domainDetection, + it.linkFormats, + it.allowlist, + it.navigationExpiration, + it.totalExpiration, + it.heuristicDetection, + it.domainDetection, ) } } diff --git a/ad-click/ad-click-impl/src/test/java/com/duckduckgo/adclick/impl/referencetests/AdClickAttributionAllowlistReferenceTest.kt b/ad-click/ad-click-impl/src/test/java/com/duckduckgo/adclick/impl/referencetests/AdClickAttributionAllowlistReferenceTest.kt index 09e9729032c4..637c797505bd 100644 --- a/ad-click/ad-click-impl/src/test/java/com/duckduckgo/adclick/impl/referencetests/AdClickAttributionAllowlistReferenceTest.kt +++ b/ad-click/ad-click-impl/src/test/java/com/duckduckgo/adclick/impl/referencetests/AdClickAttributionAllowlistReferenceTest.kt @@ -87,7 +87,7 @@ class AdClickAttributionAllowlistReferenceTest(private val testCase: TestCase) { "reference_tests/adclickattribution/ad_click_attribution_reference.json", ) - val allowList: List? = jsonAdapter.fromJson(jsonObject.toString())?.settings?.allowlist + val allowList: List? = jsonAdapter.fromJson(jsonObject.toString())?.allowlist allowList?.let { list -> adClickAllowlist.addAll( list.map { diff --git a/ad-click/ad-click-impl/src/test/java/com/duckduckgo/adclick/impl/referencetests/AdClickAttributionLinkFormatsReferenceTest.kt b/ad-click/ad-click-impl/src/test/java/com/duckduckgo/adclick/impl/referencetests/AdClickAttributionLinkFormatsReferenceTest.kt index 0cd17ac60527..0332779e3bcd 100644 --- a/ad-click/ad-click-impl/src/test/java/com/duckduckgo/adclick/impl/referencetests/AdClickAttributionLinkFormatsReferenceTest.kt +++ b/ad-click/ad-click-impl/src/test/java/com/duckduckgo/adclick/impl/referencetests/AdClickAttributionLinkFormatsReferenceTest.kt @@ -87,7 +87,7 @@ class AdClickAttributionLinkFormatsReferenceTest(private val testCase: TestCase) "reference_tests/adclickattribution/ad_click_attribution_reference.json", ) - val linkFormatList: List? = jsonAdapter.fromJson(jsonObject.toString())?.settings?.linkFormats + val linkFormatList: List? = jsonAdapter.fromJson(jsonObject.toString())?.linkFormats linkFormatList?.let { list -> adClickLinkFormats.addAll( list.map { diff --git a/ad-click/ad-click-impl/src/test/resources/reference_tests/adclickattribution/ad_click_attribution_reference.json b/ad-click/ad-click-impl/src/test/resources/reference_tests/adclickattribution/ad_click_attribution_reference.json index fb109a157a9c..c5fb644680e1 100644 --- a/ad-click/ad-click-impl/src/test/resources/reference_tests/adclickattribution/ad_click_attribution_reference.json +++ b/ad-click/ad-click-impl/src/test/resources/reference_tests/adclickattribution/ad_click_attribution_reference.json @@ -1,56 +1,52 @@ { - "state": "enabled", - "exceptions": [], - "settings": { - "linkFormats": [ - { - "url": "duckduckgo.com/y.js", - "adDomainParameterName": "ad_domain", - "desc": "SERP Ads" - }, - { - "url": "www.search-company.site/y.js", - "adDomainParameterName": "ad_domain", - "desc": "Test Domain" - }, - { - "url": "www.search-company.example/y.js", - "adDomainParameterName": "ad_domain", - "desc": "Test Domain" - }, - { - "url": "links.duckduckgo.com/m.js", - "adDomainParameterName": "ad_domain", - "desc": "Shopping Ads" - }, - { - "url": "www.search-company.site/m.js", - "adDomainParameterName": "ad_domain", - "desc": "Test Domain" - }, - { - "url": "www.search-company.example/m.js", - "adDomainParameterName": "ad_domain", - "desc": "Test Domain" - } - ], - "allowlist": [ - { - "blocklistEntry": "bing.com", - "host": "bat.bing.com" - }, - { - "blocklistEntry": "ad-company.site", - "host": "convert.ad-company.site" - }, - { - "blocklistEntry": "ad-company.example", - "host": "convert.ad-company.example" - } - ], - "navigationExpiration": 1800, - "totalExpiration": 604800, - "heuristicDetection": "enabled", - "domainDetection": "enabled" - } + "linkFormats": [ + { + "url": "duckduckgo.com/y.js", + "adDomainParameterName": "ad_domain", + "desc": "SERP Ads" + }, + { + "url": "www.search-company.site/y.js", + "adDomainParameterName": "ad_domain", + "desc": "Test Domain" + }, + { + "url": "www.search-company.example/y.js", + "adDomainParameterName": "ad_domain", + "desc": "Test Domain" + }, + { + "url": "links.duckduckgo.com/m.js", + "adDomainParameterName": "ad_domain", + "desc": "Shopping Ads" + }, + { + "url": "www.search-company.site/m.js", + "adDomainParameterName": "ad_domain", + "desc": "Test Domain" + }, + { + "url": "www.search-company.example/m.js", + "adDomainParameterName": "ad_domain", + "desc": "Test Domain" + } + ], + "allowlist": [ + { + "blocklistEntry": "bing.com", + "host": "bat.bing.com" + }, + { + "blocklistEntry": "ad-company.site", + "host": "convert.ad-company.site" + }, + { + "blocklistEntry": "ad-company.example", + "host": "convert.ad-company.example" + } + ], + "navigationExpiration": 1800, + "totalExpiration": 604800, + "heuristicDetection": "enabled", + "domainDetection": "enabled" }