Skip to content

Commit 140a666

Browse files
adinauerclaude
andcommitted
test(core): Clarify Data Collection resolver scenarios
Separate legacy sendDefaultPii fallback coverage from configured Data Collection behavior. Give each resolver test a name that describes one configuration state. Refs #5666 Co-Authored-By: Claude <noreply@anthropic.com>
1 parent e9df1c2 commit 140a666

1 file changed

Lines changed: 53 additions & 11 deletions

File tree

‎sentry/src/test/java/io/sentry/DataCollectionResolverTest.kt‎

Lines changed: 53 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ class DataCollectionResolverTest {
4242
}
4343

4444
@Test
45-
fun `user info override takes precedence over sendDefaultPii`() {
45+
fun `user info uses configured Data Collection value`() {
4646
val options = SentryOptions().apply { isSendDefaultPii = true }
4747

4848
options.dataCollection.setUserInfo(false)
@@ -68,25 +68,53 @@ class DataCollectionResolverTest {
6868
}
6969

7070
@Test
71-
fun `database query data falls back to sendDefaultPii and override takes precedence`() {
72-
val options = SentryOptions().apply { isSendDefaultPii = true }
71+
fun `database query data uses sendDefaultPii when Data Collection is absent`() {
72+
val options = SentryOptions()
73+
74+
assertThat(options.dataCollectionResolver.isDatabaseQueryData).isFalse()
75+
76+
options.isSendDefaultPii = true
7377

7478
assertThat(options.dataCollectionResolver.isDatabaseQueryData).isTrue()
79+
}
80+
81+
@Test
82+
fun `database query data uses configured Data Collection value`() {
83+
val options = SentryOptions().apply { isSendDefaultPii = true }
7584

7685
options.dataCollection.setDatabaseQueryData(false)
7786

7887
assertThat(options.dataCollectionResolver.isDatabaseQueryData).isFalse()
88+
89+
options.isSendDefaultPii = false
90+
options.dataCollection.setDatabaseQueryData(true)
91+
92+
assertThat(options.dataCollectionResolver.isDatabaseQueryData).isTrue()
7993
}
8094

8195
@Test
82-
fun `GraphQL document falls back to sendDefaultPii and override takes precedence`() {
83-
val options = SentryOptions().apply { isSendDefaultPii = true }
96+
fun `GraphQL document uses sendDefaultPii when Data Collection is absent`() {
97+
val options = SentryOptions()
98+
99+
assertThat(options.dataCollectionResolver.isGraphqlDocument).isFalse()
100+
101+
options.isSendDefaultPii = true
84102

85103
assertThat(options.dataCollectionResolver.isGraphqlDocument).isTrue()
104+
}
105+
106+
@Test
107+
fun `GraphQL document uses configured Data Collection value`() {
108+
val options = SentryOptions().apply { isSendDefaultPii = true }
86109

87110
options.dataCollection.graphql.setDocument(false)
88111

89112
assertThat(options.dataCollectionResolver.isGraphqlDocument).isFalse()
113+
114+
options.isSendDefaultPii = false
115+
options.dataCollection.graphql.setDocument(true)
116+
117+
assertThat(options.dataCollectionResolver.isGraphqlDocument).isTrue()
90118
}
91119

92120
@Test
@@ -115,7 +143,7 @@ class DataCollectionResolverTest {
115143
}
116144

117145
@Test
118-
fun `cookies override takes precedence over sendDefaultPii`() {
146+
fun `cookies use configured Data Collection behavior`() {
119147
val options = SentryOptions().apply { isSendDefaultPii = false }
120148
val behavior = KeyValueCollectionBehavior.allowList("language", "theme")
121149

@@ -133,7 +161,7 @@ class DataCollectionResolverTest {
133161
}
134162

135163
@Test
136-
fun `URL query params override takes precedence`() {
164+
fun `URL query params use configured Data Collection behavior`() {
137165
val options = SentryOptions()
138166
val behavior = KeyValueCollectionBehavior.allowList("language", "theme")
139167

@@ -151,7 +179,7 @@ class DataCollectionResolverTest {
151179
}
152180

153181
@Test
154-
fun `HTTP request headers override takes precedence`() {
182+
fun `HTTP request headers use configured Data Collection behavior`() {
155183
val options = SentryOptions()
156184
val behavior = KeyValueCollectionBehavior.allowList("content-type")
157185

@@ -169,7 +197,7 @@ class DataCollectionResolverTest {
169197
}
170198

171199
@Test
172-
fun `HTTP response headers override takes precedence`() {
200+
fun `HTTP response headers use configured Data Collection behavior`() {
173201
val options = SentryOptions()
174202
val behavior = KeyValueCollectionBehavior.off()
175203

@@ -219,13 +247,27 @@ class DataCollectionResolverTest {
219247
}
220248

221249
@Test
222-
fun `GraphQL variables fall back to sendDefaultPii and override takes precedence`() {
223-
val options = SentryOptions().apply { isSendDefaultPii = true }
250+
fun `GraphQL variables use sendDefaultPii when Data Collection is absent`() {
251+
val options = SentryOptions()
252+
253+
assertThat(options.dataCollectionResolver.isGraphqlVariables).isFalse()
254+
255+
options.isSendDefaultPii = true
224256

225257
assertThat(options.dataCollectionResolver.isGraphqlVariables).isTrue()
258+
}
259+
260+
@Test
261+
fun `GraphQL variables use configured Data Collection value`() {
262+
val options = SentryOptions().apply { isSendDefaultPii = true }
226263

227264
options.dataCollection.graphql.setVariables(false)
228265

229266
assertThat(options.dataCollectionResolver.isGraphqlVariables).isFalse()
267+
268+
options.isSendDefaultPii = false
269+
options.dataCollection.graphql.setVariables(true)
270+
271+
assertThat(options.dataCollectionResolver.isGraphqlVariables).isTrue()
230272
}
231273
}

0 commit comments

Comments
 (0)