Build Logs
softwaremill/sttp-model • 3.8.0:2026-01-13
Errors
23
Warnings
371
Total Lines
995
1##################################
2Clonning https://github.com/softwaremill/sttp-model.git into /build/repo using revision v1.7.17
3##################################
4Note: switching to '99b8b1eddbd17a877c50f10769bd62ee338f8ba7'.
5
6You are in 'detached HEAD' state. You can look around, make experimental
7changes and commit them, and you can discard any commits you make in this
8state without impacting any branches by switching back to a branch.
9
10If you want to create a new branch to retain commits you create, you may
11do so (now or later) by using -c with the switch command. Example:
12
13 git switch -c <new-branch-name>
14
15Or undo this operation with:
16
17 git switch -
18
19Turn off this advice by setting config variable advice.detachedHead to false
20
21----
22Preparing build for 3.8.0
23Scala binary version found: 3.8
24Implicitly using source version 3.8
25Scala binary version found: 3.8
26Implicitly using source version 3.8
27Would try to apply common scalacOption (best-effort, sbt/mill only):
28Append: ,REQUIRE:-source:3.8
29Remove: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
30
31Try apply source patch:
32Path: build.sbt
33Pattern: val scala3 = List("3.3.7")
34Replacement: val scala3 = List("3.8.0")
35Starting compilation server
36Compiling project (Scala 3.7.3, JVM (17))
37Compiled project (Scala 3.7.3, JVM (17))
38Successfully applied pattern 'val scala3 = List("3.3.7")' in build.sbt
39----
40Starting build for 3.8.0
41Execute tests: true
42sbt project found:
43No prepare script found for project softwaremill/sttp-model
44##################################
45Scala version: 3.8.0
46Targets: com.softwaremill.sttp.model%core
47Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3 = List(\"3.3.7\")","replaceWith":"val scala3 = List(\"<SCALA_VERSION>\")"}]}
48##################################
49Using extra scalacOptions: ,REQUIRE:-source:3.8
50Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
51[sbt_options] declare -a sbt_options=()
52[process_args] java_version = '17'
53[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
54# Executing command line:
55java
56-Dfile.encoding=UTF-8
57-Dcommunitybuild.scala=3.8.0
58-Dcommunitybuild.project.dependencies.add=
59-Xmx7G
60-Xms4G
61-Xss8M
62-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
63-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8
64-jar
65/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
66"setCrossScalaVersions 3.8.0"
67"++3.8.0 -v"
68"mapScalacOptions ",REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
69"set every credentials := Nil"
70"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
71"removeScalacOptionsStartingWith -P:wartremover"
72
73moduleMappings
74"runBuild 3.8.0 """{"projects":{"exclude":[],"overrides":{}},"java":{},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3 = List(\"3.3.7\")","replaceWith":"val scala3 = List(\"<SCALA_VERSION>\")"}]}""" com.softwaremill.sttp.model%core"
75
76[info] [launcher] getting org.scala-sbt sbt 1.11.7 (this may take some time)...
77[info] welcome to sbt 1.11.7 (Eclipse Adoptium Java 17.0.8)
78[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
79[info] loading project definition from /build/repo/project
80[info] compiling 2 Scala sources to /build/repo/project/target/scala-2.12/sbt-1.0/classes ...
81[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.20. Compiling...
82[info] Compilation completed in 8.734s.
83[info] done compiling
84[info] STTP_NATIVE *not* defined, *not* including native in the aggregate projects
85[info] loading settings for project rootProject from build.sbt...
86[info] resolving key references (12042 settings) ...
87[info] set current project to sttp-model (in build file:/build/repo/)
88Execute setCrossScalaVersions: 3.8.0
89OpenCB::Changing crossVersion 3.8.0 -> 3.8.0 in core3/crossScalaVersions
90OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0) in core3/crossScalaVersions
91OpenCB::Changing crossVersion 3.8.0 -> 3.8.0 in coreNative3/crossScalaVersions
92OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0) in coreNative3/crossScalaVersions
93OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(2.13.16) in coreJS/crossScalaVersions
94OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(2.13.16) in coreNative/crossScalaVersions
95OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(2.13.16) in rootProject/crossScalaVersions
96OpenCB::Changing crossVersion 3.8.0 -> 3.8.0 in coreJS3/crossScalaVersions
97OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0) in coreJS3/crossScalaVersions
98OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(2.13.16) in core/crossScalaVersions
99OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(2.13.16) in benchmark/crossScalaVersions
100[info] set current project to sttp-model (in build file:/build/repo/)
101[info] Setting Scala version to 3.8.0 on 3 projects.
102[info] Switching Scala version on:
103[info] coreNative3 (3.8.0)
104[info] core3 (3.8.0)
105[info] coreJS3 (3.8.0)
106[info] Excluding projects:
107[info] coreNative2_12 (2.12.20)
108[info] core2_12 (2.12.20)
109[info] benchmark2_12 (2.12.20)
110[info] coreNative (2.13.16)
111[info] coreJS (2.13.16)
112[info] * rootProject (2.13.16)
113[info] coreJS2_12 (2.12.20)
114[info] core (2.13.16)
115[info] benchmark (2.13.16)
116[info] Reapplying settings...
117[info] set current project to sttp-model (in build file:/build/repo/)
118Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
119[info] Reapplying settings...
120[info] set current project to sttp-model (in build file:/build/repo/)
121[info] Defining Global / credentials, benchmark / credentials and 10 others.
122[info] The new values will be used by Compile / scalafmtOnly, Global / pgpSelectPassphrase and 95 others.
123[info] Run `last` for details.
124[info] Reapplying settings...
125[info] set current project to sttp-model (in build file:/build/repo/)
126Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
127[info] Reapplying settings...
128OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
129
130 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
131 Did you mean benchmark2_12 / allExcludeDependencies ?
132 , retry without global scopes
133[info] Reapplying settings...
134[info] set current project to sttp-model (in build file:/build/repo/)
135Execute removeScalacOptionsStartingWith: -P:wartremover
136[info] Reapplying settings...
137[info] set current project to sttp-model (in build file:/build/repo/)
138[success] Total time: 0 s, completed Jan 13, 2026, 3:16:05 PM
139Build config: {"projects":{"exclude":[],"overrides":{}},"java":{},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3 = List(\"3.3.7\")","replaceWith":"val scala3 = List(\"<SCALA_VERSION>\")"}]}
140Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
141Starting build...
142Projects: Set(core3)
143Starting build for ProjectRef(file:/build/repo/,core3) (core)... [0/1]
144OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
145OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
146OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
147Compile scalacOptions: -encoding, utf8, -unchecked, -language:experimental.macros, -language:higherKinds, -language:implicitConversions, -Xkind-projector, -Wvalue-discard, -Wnonunit-statement, -Wunused:implicits, -Wunused:explicits, -Wunused:imports, -Wunused:locals, -Wunused:params, -Wunused:privates, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
148[info] compiling 41 Scala sources to /build/repo/core/target/jvm-3/classes ...
149[warn] -- [E175] Potential Issue Warning: /build/repo/core/src/main/scala/sttp/model/ContentTypeRange.scala:28:59
150[warn] 28 | if (charset != Wildcard) sb.append("; charset=").append(charset)
151[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
152[warn] |discarded non-Unit value of type StringBuilder. Add `: Unit` to discard silently.
153[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/main/scala/sttp/model/Uri.scala:322:47
154[warn] 322 | sb.append(kEnc(k)).append("=").append(if (sensitiveQueryParams(k)) "***" else vEnc(v))
155[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
156[warn] | unused value of type (sb : StringBuilder)
157[warn] -- [E175] Potential Issue Warning: /build/repo/core/src/main/scala/sttp/model/internal/ArrayView.scala:158:20
158[warn] 158 | foreach(list.add(_))
159[warn] | ^^^^^^^^^^^
160[warn] |discarded non-Unit value of type Boolean. Add `: Unit` to discard silently.
161[warn] there was 1 deprecation warning; re-run with -deprecation for details
162[warn] four warnings found
163[info] done compiling
164[info] compiling 23 Scala sources to /build/repo/core/target/jvm-3/test-classes ...
165[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:8:4
166[warn] 8 | ContentTypeRange.AnyRange.toString shouldBe "*/*"
167[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
168[warn] | unused value of type org.scalatest.Assertion
169[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:9:4
170[warn] 9 | ContentTypeRange.AnyText.toString shouldBe "text/*"
171[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
172[warn] | unused value of type org.scalatest.Assertion
173[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:10:4
174[warn] 10 | ContentTypeRange.exact(MediaType.TextPlainUtf8).toString shouldBe "text/plain; charset=utf-8"
175[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
176[warn] | unused value of type org.scalatest.Assertion
177[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:15:4
178[warn] 15 | ContentTypeRange.exact(MediaType.TextPlainUtf8).anySubType.toString shouldBe "text/*; charset=utf-8"
179[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
180[warn] | unused value of type org.scalatest.Assertion
181[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:24:4
182[warn] 24 | ContentTypeRange.AnyRange.equals(ContentTypeRange.AnyRange) shouldBe true
183[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
184[warn] | unused value of type org.scalatest.Assertion
185[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:26:4
186[warn] 26 | ContentTypeRange
187[warn] | ^
188[warn] | unused value of type org.scalatest.Assertion
189[warn] 27 | .exact(MediaType.TextPlainUtf8)
190[warn] 28 | .equals(ContentTypeRange.exact(MediaType.TextPlainUtf8).copy(mainType = "TEXT")) shouldBe true
191[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:29:4
192[warn] 29 | ContentTypeRange
193[warn] | ^
194[warn] | unused value of type org.scalatest.Assertion
195[warn] 30 | .exact(MediaType.TextPlainUtf8)
196[warn] 31 | .equals(ContentTypeRange.exact(MediaType.TextPlainUtf8).copy(subType = "PLAIN")) shouldBe true
197[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:33:4
198[warn] 33 | ContentTypeRange.exact(MediaType.TextPlain).equals(ContentTypeRange.exact(MediaType.TextHtml)) shouldBe false
199[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
200[warn] | unused value of type org.scalatest.Assertion
201[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:51:4
202[warn] 51 | MediaType.safeApply("text", "p=lain") should matchPattern { case Left(_) => }
203[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
204[warn] | unused value of type org.scalatest.Assertion
205[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:52:4
206[warn] 52 | MediaType.safeApply("text", "plain", Some("UTF=8")) should matchPattern { case Left(_) => }
207[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
208[warn] | unused value of type org.scalatest.Assertion
209[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:53:4
210[warn] 53 | MediaType.safeApply("text", "plain") shouldBe Right(MediaType.TextPlain)
211[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
212[warn] | unused value of type org.scalatest.Assertion
213[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:54:4
214[warn] 54 | MediaType.safeApply("text", "plain", None, Map("a" -> "{1}")) should matchPattern { case Left(_) => }
215[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
216[warn] | unused value of type org.scalatest.Assertion
217[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:64:4
218[warn] 64 | mt.toString shouldBe "application/gzip"
219[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
220[warn] | unused value of type org.scalatest.Assertion
221[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:227:4
222[warn] 227 | MediaType.TextPlain.equals(MediaType.TextPlain) shouldBe true
223[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
224[warn] | unused value of type org.scalatest.Assertion
225[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:228:4
226[warn] 228 | MediaType.TextPlain.equals(MediaType.TextPlain.copy(mainType = "TEXT")) shouldBe true
227[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
228[warn] | unused value of type org.scalatest.Assertion
229[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:229:4
230[warn] 229 | MediaType.TextPlain.equals(MediaType.TextPlain.copy(subType = "PLAIN")) shouldBe true
231[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
232[warn] | unused value of type org.scalatest.Assertion
233[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:231:4
234[warn] 231 | MediaType.TextPlain.equals(MediaType.TextPlainUtf8) shouldBe false
235[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
236[warn] | unused value of type org.scalatest.Assertion
237[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:236:4
238[warn] 236 | MediaType.TextPlain.equalsIgnoreParameters(MediaType.TextPlain) shouldBe true
239[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
240[warn] | unused value of type org.scalatest.Assertion
241[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:237:4
242[warn] 237 | MediaType.TextPlain.equalsIgnoreParameters(MediaType.TextPlainUtf8) shouldBe true
243[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
244[warn] | unused value of type org.scalatest.Assertion
245[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:238:4
246[warn] 238 | MediaType.TextPlainUtf8.equalsIgnoreParameters(MediaType.TextPlain) shouldBe true
247[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
248[warn] | unused value of type org.scalatest.Assertion
249[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:8:4
250[warn] 8 | Method.unsafeApply("get") shouldBe Method.unsafeApply("GET")
251[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
252[warn] | unused value of type org.scalatest.Assertion
253[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:9:4
254[warn] 9 | Method.unsafeApply("head") shouldBe Method.unsafeApply("HEAD")
255[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
256[warn] | unused value of type org.scalatest.Assertion
257[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:10:4
258[warn] 10 | Method.unsafeApply("post") shouldBe Method.unsafeApply("POST")
259[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
260[warn] | unused value of type org.scalatest.Assertion
261[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:11:4
262[warn] 11 | Method.unsafeApply("put") shouldBe Method.unsafeApply("PUT")
263[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
264[warn] | unused value of type org.scalatest.Assertion
265[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:12:4
266[warn] 12 | Method.unsafeApply("delete") shouldBe Method.unsafeApply("DELETE")
267[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
268[warn] | unused value of type org.scalatest.Assertion
269[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:13:4
270[warn] 13 | Method.unsafeApply("options") shouldBe Method.unsafeApply("OPTIONS")
271[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
272[warn] | unused value of type org.scalatest.Assertion
273[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:14:4
274[warn] 14 | Method.unsafeApply("patch") shouldBe Method.unsafeApply("PATCH")
275[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
276[warn] | unused value of type org.scalatest.Assertion
277[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:15:4
278[warn] 15 | Method.unsafeApply("connect") shouldBe Method.unsafeApply("CONNECT")
279[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
280[warn] | unused value of type org.scalatest.Assertion
281[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/PartTest.scala:20:4
282[warn] 20 | part.contentDispositionHeaderValue shouldBe s"""form-data; name="name"; filename*="$expectedFileName"; filename="f1.txt""""
283[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
284[warn] | unused value of type org.scalatest.Assertion
285[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/PartTest.scala:26:4
286[warn] 26 | part.contentDispositionHeaderValue shouldBe s"""form-data; name="name"; filename="f1.txt""""
287[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
288[warn] | unused value of type org.scalatest.Assertion
289[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/QueryParamsTests.scala:9:4
290[warn] 9 | qp.getMulti("p") shouldBe Some(Nil)
291[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
292[warn] | unused value of type org.scalatest.Assertion
293[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/QueryParamsTests.scala:10:4
294[warn] 10 | qp.getMulti("q") shouldBe Some(List("1"))
295[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
296[warn] | unused value of type org.scalatest.Assertion
297[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/QueryParamsTests.scala:11:4
298[warn] 11 | qp.getMulti("r") shouldBe Some(List("1", "2"))
299[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
300[warn] | unused value of type org.scalatest.Assertion
301[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/StatusCodeTests.scala:12:4
302[warn] 12 | StatusCode.safeApply(8) should matchPattern { case Left(_) => }
303[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
304[warn] | unused value of type org.scalatest.Assertion
305[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:176:4
306[warn] 176 | Uri.parse(uriAsString).right.map(_.toString) shouldBe Right(uriAsString)
307[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
308[warn] | unused value of type org.scalatest.Assertion
309[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:213:4
310[warn] 213 | uri"http://example.org/x/y".addPath("z").path shouldBe List("x", "y", "z")
311[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
312[warn] | unused value of type org.scalatest.Assertion
313[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:218:4
314[warn] 218 | uri"http://example.org?x=1".addParam("y", "2").paramsMap shouldBe Map("x" -> "1", "y" -> "2")
315[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
316[warn] | unused value of type org.scalatest.Assertion
317[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:224:4
318[warn] 224 | uri"$uriAsString".params.getMulti("p1") shouldBe Some(Nil)
319[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
320[warn] | unused value of type org.scalatest.Assertion
321[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:225:4
322[warn] 225 | uri"$uriAsString".params.getMulti("p2") shouldBe Some(List("v"))
323[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
324[warn] | unused value of type org.scalatest.Assertion
325[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:247:4
326[warn] 247 | uri"http://x.com".addPath("a").toString shouldBe "http://x.com/a"
327[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
328[warn] | unused value of type org.scalatest.Assertion
329[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:248:4
330[warn] 248 | uri"http://x.com/".addPath("a").toString shouldBe "http://x.com/a"
331[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
332[warn] | unused value of type org.scalatest.Assertion
333[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:249:4
334[warn] 249 | uri"http://x.com/a".addPath("b").toString shouldBe "http://x.com/a/b"
335[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
336[warn] | unused value of type org.scalatest.Assertion
337[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:250:4
338[warn] 250 | uri"http://x.com".addPath("a", "b").toString shouldBe "http://x.com/a/b"
339[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
340[warn] | unused value of type org.scalatest.Assertion
341[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:251:4
342[warn] 251 | uri"http://x.com/".addPath("a", "b").toString shouldBe "http://x.com/a/b"
343[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
344[warn] | unused value of type org.scalatest.Assertion
345[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:252:4
346[warn] 252 | uri"/".addPath("a").toString shouldBe "/a"
347[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
348[warn] | unused value of type org.scalatest.Assertion
349[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:253:4
350[warn] 253 | uri"/a".addPath("b").toString shouldBe "/a/b"
351[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
352[warn] | unused value of type org.scalatest.Assertion
353[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:254:4
354[warn] 254 | uri"a".addPath("b").toString shouldBe "a/b"
355[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
356[warn] | unused value of type org.scalatest.Assertion
357[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:260:4
358[warn] 260 | uri"/x/y".pathSegments shouldBe Uri.AbsolutePath(List(pathSegment("x"), pathSegment("y")))
359[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
360[warn] | unused value of type org.scalatest.Assertion
361[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:265:4
362[warn] 265 | uri"http://x.com/a/b/c".pathToString shouldBe "/a/b/c"
363[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
364[warn] | unused value of type org.scalatest.Assertion
365[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:266:4
366[warn] 266 | uri"http://x.com".pathToString shouldBe ""
367[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
368[warn] | unused value of type org.scalatest.Assertion
369[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:267:4
370[warn] 267 | uri"http://x.com/".pathToString shouldBe "/"
371[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
372[warn] | unused value of type org.scalatest.Assertion
373[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:272:4
374[warn] 272 | uri"http://x.com/a/b/c".queryToString shouldBe ""
375[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
376[warn] | unused value of type org.scalatest.Assertion
377[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:273:4
378[warn] 273 | uri"http://x.com?a=b&c=d".queryToString shouldBe "a=b&c=d"
379[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
380[warn] | unused value of type org.scalatest.Assertion
381[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:278:4
382[warn] 278 | uri"http://x.com/a/b/c".fragmentToString shouldBe ""
383[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
384[warn] | unused value of type org.scalatest.Assertion
385[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:287:4
386[warn] 287 | uri"http://x.com?a=b&c=d".toStringSafe(Set("c")) shouldBe "http://x.com?a=b&c=***"
387[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
388[warn] | unused value of type org.scalatest.Assertion
389[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/headers/CacheDirectiveTest.scala:10:4
390[warn] 10 | CacheDirective.parse("no-cache") shouldBe List(Right(CacheDirective.NoCache))
391[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
392[warn] | unused value of type org.scalatest.Assertion
393[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/headers/CacheDirectiveTest.scala:11:4
394[warn] 11 | CacheDirective.parse("max-age=10") shouldBe List(Right(CacheDirective.MaxAge(10.seconds)))
395[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
396[warn] | unused value of type org.scalatest.Assertion
397[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/headers/CacheDirectiveTest.scala:12:4
398[warn] 12 | CacheDirective.parse("public, NO-STORE, stale-while-revalidate=2") shouldBe List(
399[warn] | ^
400[warn] | unused value of type org.scalatest.Assertion
401[warn] 13 | Right(CacheDirective.Public),
402[warn] 14 | Right(CacheDirective.NoStore),
403[warn] 15 | Right(CacheDirective.StaleWhileRevalidate(2.seconds))
404[warn] 16 | )
405[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/headers/CacheDirectiveTest.scala:17:4
406[warn] 17 | CacheDirective.parse("max-stale, max-stale=10") shouldBe List(
407[warn] | ^
408[warn] | unused value of type org.scalatest.Assertion
409[warn] 18 | Right(CacheDirective.MaxStale(None)),
410[warn] 19 | Right(CacheDirective.MaxStale(Some(10.seconds)))
411[warn] 20 | )
412[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/headers/CacheDirectiveTest.scala:21:4
413[warn] 21 | CacheDirective.parse("x") should matchPattern { case List(Left(_)) => }
414[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
415[warn] | unused value of type org.scalatest.Assertion
416[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:22:4
417[warn] 22 | Header.safeApply("Aut ho", "a bc") should matchPattern { case Left(_) => }
418[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
419[warn] | unused value of type org.scalatest.Assertion
420[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:23:4
421[warn] 23 | Header.safeApply(HeaderNames.Authorization, "Я ЛЮБЛЮ БОРЩ") should matchPattern { case Left(_) => }
422[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
423[warn] | unused value of type org.scalatest.Assertion
424[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:24:4
425[warn] 24 | Header.safeApply(HeaderNames.Authorization, " Я ЛЮБЛЮ БОРЩ") should matchPattern { case Left(_) => }
426[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
427[warn] | unused value of type org.scalatest.Assertion
428[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:25:4
429[warn] 25 | Header.safeApply(HeaderNames.Authorization, " xy z") should matchPattern { case Left(_) => }
430[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
431[warn] | unused value of type org.scalatest.Assertion
432[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:26:4
433[warn] 26 | Header.safeApply(HeaderNames.Authorization, "xy z\t") should matchPattern { case Left(_) => }
434[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
435[warn] | unused value of type org.scalatest.Assertion
436[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:27:4
437[warn] 27 | Header.safeApply(HeaderNames.Authorization, "xy \n z") should matchPattern { case Left(_) => }
438[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
439[warn] | unused value of type org.scalatest.Assertion
440[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:28:4
441[warn] 28 | Header.safeApply(HeaderNames.Authorization, " ") should matchPattern { case Left(_) => }
442[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
443[warn] | unused value of type org.scalatest.Assertion
444[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:29:4
445[warn] 29 | Header.safeApply(HeaderNames.Authorization, "") should matchPattern { case Right(_) => }
446[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
447[warn] | unused value of type org.scalatest.Assertion
448[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:30:4
449[warn] 30 | Header.safeApply(HeaderNames.Authorization, "xy z") should matchPattern { case Right(_) => }
450[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
451[warn] | unused value of type org.scalatest.Assertion
452[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:35:4
453[warn] 35 | an[IllegalArgumentException] shouldBe thrownBy(Header.unsafeApply("Aut ho", "a bc"))
454[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
455[warn] | unused value of type org.scalatest.Assertion
456[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:45:4
457[warn] 45 | h.toString shouldBe "Authorization: bearer 123"
458[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
459[warn] | unused value of type org.scalatest.Assertion
460[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:107:6
461[warn] 107 | Accepts.unsafeParse(headers) shouldBe result
462[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
463[warn] | unused value of type org.scalatest.Assertion
464[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:132:4
465[warn] 132 | Accepts.parse(Seq(invalidAccept)) shouldBe Left(
466[warn] | ^
467[warn] | unused value of type org.scalatest.Assertion
468[warn] 133 | """Parameter is not formatted correctly: "=q=1" for: "text/html;=q=1""""
469[warn] 134 | )
470[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:137:4
471[warn] 137 | Accepts.parse(Seq(invalidAcceptCharset)) shouldBe Left(
472[warn] | ^
473[warn] | unused value of type org.scalatest.Assertion
474[warn] 138 | """Parameter is not formatted correctly: "=a=1" for: "utf-8;=a=1""""
475[warn] 139 | )
476[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:141:4
477[warn] 141 | Accepts.parse(Seq(invalidAccept, invalidAcceptCharset)) shouldBe Left(
478[warn] | ^
479[warn] | unused value of type org.scalatest.Assertion
480[warn] 142 | """Parameter is not formatted correctly: "=q=1" for: "text/html;=q=1"
481[warn] 143 | |Parameter is not formatted correctly: "=a=1" for: "utf-8;=a=1"""".stripMargin
482[warn] 144 | )
483[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:147:4
484[warn] 147 | Accepts.parse(Seq(invalidAcceptCharset2)) shouldBe Left(
485[warn] | ^
486[warn] | unused value of type org.scalatest.Assertion
487[warn] 148 | """No charset found for: "@@@""""
488[warn] 149 | )
489[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:161:4
490[warn] 161 | Accepts.parse(Seq(Header(HeaderNames.Accept, "text/html;q=xxx"))) shouldBe Left(errorMsg("xxx"))
491[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
492[warn] | unused value of type org.scalatest.Assertion
493[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:162:4
494[warn] 162 | Accepts.parse(Seq(Header(HeaderNames.Accept, "text/html;q=."))) shouldBe Left(errorMsg("."))
495[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
496[warn] | unused value of type org.scalatest.Assertion
497[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:163:4
498[warn] 163 | Accepts.parse(Seq(Header(HeaderNames.Accept, "text/html;q=.1234"))) shouldBe Left(errorMsg(".1234"))
499[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
500[warn] | unused value of type org.scalatest.Assertion
501[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:164:4
502[warn] 164 | Accepts.parse(Seq(Header(HeaderNames.Accept, "text/html;q=1.123"))) shouldBe Left(errorMsg("1.123"))
503[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
504[warn] | unused value of type org.scalatest.Assertion
505[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:165:4
506[warn] 165 | Accepts.parse(Seq(Header(HeaderNames.Accept, "text/html;q=1."))) shouldBe Left(errorMsg("1."))
507[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
508[warn] | unused value of type org.scalatest.Assertion
509[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:166:4
510[warn] 166 | Accepts.parse(Seq(Header(HeaderNames.Accept, "text/html;q=123"))) shouldBe Left(errorMsg("123"))
511[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
512[warn] | unused value of type org.scalatest.Assertion
513[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:167:4
514[warn] 167 | Accepts.parse(Seq(Header(HeaderNames.Accept, "text/html;q=0.1234"))) shouldBe Left(errorMsg("0.1234"))
515[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
516[warn] | unused value of type org.scalatest.Assertion
517[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/CookieTest.scala:121:4
518[warn] 121 | CookieWithMeta("a", "b").value shouldBe "b"
519[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
520[warn] | unused value of type org.scalatest.Assertion
521[warn] there was 1 deprecation warning; re-run with -deprecation for details
522[warn] 85 warnings found
523[info] done compiling
524[info] ContentRangeTest:
525[info] - should properly parse simplest ContentRange header
526[info] - should properly parse ContentRange without size
527[info] - should properly parse ContentRange without range
528[info] - should fail parsing random string
529[info] - should fail parsing ContentRange without range and size
530[info] - should fail parsing ContentRange with invalid range end
531[info] - should fail parsing ContentRange with invalid range start
532[info] - should fail parsing ContentRange with missing range start
533[info] - should fail parsing ContentRange with missing range end
534[info] - should fail parsing ContentRange with incorrect range
535[info] - should fail parsing ContentRange with incorrect range end
536[info] - should fail parsing ContentRange with incorrect range start
537[info] AcceptEncodingTest:
538[info] - should properly parse simplest Accept-Encoding header
539[info] - should properly parse Accept-Encoding with wildcard
540[info] - should properly parse Accept-Encoding header with multiple encodings
541[info] - should properly parse Accept-Encoding header with multiple encodings and wildcard
542[info] - should properly parse Accept-Encoding header with weight
543[info] - should properly parse complex Accept-Encoding header
544[info] - should properly parse complex Accept-Encoding header with spaces
545[info] - should properly parse strange header
546[info] - should properly parse custom encoding
547[info] - should properly parse custom encoding with weight
548[info] - should fail while validating header with q more then 1
549[info] - should fail while validating empty header
550[info] - should fail while parsing header with incorrect q
551[info] - should fail while parsing incorrect header
552[info] - should fail while validating header without algorithm
553[info] - should display correct header string
554[info] ServerSentEventTest:
555[info] - should parse 1 lines starting with : this is a test stream
556[info] - should parse 1 lines starting with data: some text
557[info] - should parse 1 lines starting with data: some text
558[info] - should parse 2 lines starting with data: another message
559[info] - should parse 2 lines starting with event: userconnect
560[info] - should parse 2 lines starting with data:second event
561[info] - should parse 2 lines starting with data:x
562[info] - should parse 4 lines starting with data: event1 data
563[info] composeSSE
564[info] - should successfully serialise Server Sent Event with all fields set
565[info] composeSSE
566[info] - should omit fields that are not set
567[info] composeSSE
568[info] - should successfully serialise multiline data event
569[info] WWWAuthenticateChallengeTest:
570[info] - should properly serialise a basic header value
571[info] - should properly serialise a basic header value with realm
572[info] - should properly serialise a bearer header value with realm
573[info] - should properly serialise a header value with params
574[info] - should properly parse a basic header value
575[info] - should properly parse a basic header value with realm
576[info] - should properly parse a basic header value with realm and charset
577[info] - should properly parse a basic header value with charset
578[info] - should fail to parse string with multiple challenges
579[info] - should properly parse a bearer header value with realm
580[info] - should properly parse a header value with params
581[info] - should properly parse a Digest challenge
582[info] - should fail while parsing a Digest challenge without nonce
583[info] - should fail while parsing a Digest with incorrect qop
584[info] StatusCodeTests:
585[info] - should return a string description of the status code
586[info] - should validate status codes
587[info] - should throw exceptions on invalid status codes
588[info] UriResolveTests:
589[info] - should resolve relative uris
590[info] MediaTypeTests:
591[info] - should parse or error: text/html
592[info] - should parse or error: text/html; charset=UTF-8
593[info] - should parse or error: text/plain;a=1;b=2;charset=utf-8;c=3
594[info] - should parse or error: text/html;
595[info] - should parse or error: multipart/form-data
596[info] - should parse or error: application/atom+xml
597[info] - should parse or error: te<t/plain
598[info] - should parse or error: text/plain; a=1; b=
599[info] - should parse or error: text/plain;a=1;b=2;charset=utf-8;b=5
600[info] - should parse or error: text/plain;a=1;b=2;charset=utf-8;charset=iso-8859-1
601[info] - should serialize text/html to text/html
602[info] - should serialize text/html; charset=utf-8 to text/html; charset=utf-8
603[info] - should serialize multipart/form-data to multipart/form-data
604[info] - should serialize application/atom+xml to application/atom+xml
605[info] - should serialize text/html; charset=utf-8; a=1 to text/html; charset=utf-8; a=1
606[info] - should validate media types
607[info] - should throw exceptions on invalid media types
608[info] - should have a regular toString
609[info] - should check match of application/json to */*
610[info] - should check match of */html to */json
611[info] - should check match of text/* to text/*
612[info] - should check match of application/json to application/*
613[info] - should check match of application/json to application/json
614[info] - should check match of application/json to application/json; q=0.5
615[info] - should check match of application/json; a=1 to application/json; q=0.5
616[info] - should check match of application/json to application/json; a=1
617[info] - should check match of application/json; a=1 to application/json; A=1; b=2
618[info] - should check match of application/json; a=1; b=2 to application/json; A=1
619[info] - should check match of application/json; a=truE to application/json; A=TrUe
620[info] - should check match of application/json; a=1; b=2 to application/json; B=2; A=1
621[info] - should check match of application/json; a=1 to application/json; A=1; q=0.5
622[info] - should check match of application/json; a=1 to application/json; b=2
623[info] - should check match of application/json; a=1 to */*
624[info] - should check match of application/json; a=1 to application/*
625[info] - should check match of application/json; charset=utf-8 to */*; charset=utf-16
626[info] - should check match of */html; charset=utf-8 to */json; charset=utf-16
627[info] - should check match of text/*; charset=utf-8 to text/*; charset=utf-16
628[info] - should check match of application/json; charset=utf-8 to application/*; charset=utf-16
629[info] - should check match of application/json; charset=utf-8 to application/json; charset=utf-16
630[info] - should check match of application/json; charset=utf-8 to application/json
631[info] - should check match of application/octet-stream to */*; charset=utf-8
632[info] - should select Some(application/json; charset=utf-8) for ranges List(*/*)
633[info] - should select Some(application/json; charset=utf-8) for ranges List(application/json)
634[info] - should select Some(application/xml; charset=utf-8) for ranges List(application/xml)
635[info] - should select Some(application/xml; charset=utf-8) for ranges List(application/xml, application/json)
636[info] - should select Some(application/json; charset=utf-8) for ranges List(application/json, application/xml)
637[info] - should select Some(application/xml; charset=utf-8) for ranges List(application/xml, application/json, text/html)
638[info] - should select Some(text/html; charset=utf-8) for ranges List(text/*, application/*)
639[info] - should select Some(text/html; charset=iso-8859-1) for ranges List(*/*; charset=iso-8859-1)
640[info] - should select Some(text/html; charset=iso-8859-1) for ranges List(text/html; charset=iso-8859-1, text/html; charset=utf-8)
641[info] - should select None for ranges List(text/csv)
642[info] - should select None for ranges List(text/html; charset=utf-16)
643[info] - should be case-insensitive when comparing instances
644[info] - should compare if media types are equal ignoring parameters
645[info] CacheDirectiveTest:
646[info] - should parse cache directives
647[info] RangeTest:
648[info] - should properly parse the Range header of length one
649[info] - should properly parse simplest Range header
650[info] - should properly parse Range without start
651[info] - should properly parse Range without end
652[info] - should properly parse Range simple multirange
653[info] - should properly parse Range mutltirange without end
654[info] - should properly parse Range mutltirange without start
655[info] - should properly parse Range mutltirange(3) without end
656[info] - should properly parse Range mutltirange(3) without start
657[info] - should fail parsing random string
658[info] - should fail parsing header with incorrect range
659[info] - should fail parsing header when the range start is not a number
660[info] - should fail parsing header when the range end is not a number
661[info] - should fail parsing header without correct range
662[info] - should fail for partially correct multiheader
663[info] - should return true for valid range
664[info] - should return false for invalid range
665[info] - should return true for range with only start
666[info] - should return false for incorrect range with only start
667[info] - should return true for range with only end
668[info] - should return false for incorrect range with only end
669[info] - should return false for range without start and end
670[info] - should calculate content length
671[info] - should map RangeValue to content type
672[info] CookieTest:
673[info] - should parse or error: user_id=5; Expires=Fri, 05 Oct 2018 14:28:00 GMT; Secure; HttpOnly
674[info] - should parse or error: _myapp_session={"user_id": "5"}
675[info] - should parse or error: x=y; Max-Age=123; Domain=example.com; Path=/x/z/y
676[info] - should parse or error:
677[info] - should parse or error: x=y; Max-Age=z
678[info] - should parse or error: x=y; Expires=Thu, 01-Jan-2114 00:00:10 GMT
679[info] - should parse or error: x=y; Expires=Mon, 27-Jan-2020 16:10:25 GMT
680[info] - should parse or error: x=y; Version=1; Something-Else
681[info] - should parse or error: x=y; SameSite= Strict
682[info] - should serialize: x=y; Max-Age=123; Domain=example.com; Path=/x/z/y
683[info] - should serialize: x="a"
684[info] - should serialize: user_id=5; Expires=Fri, 05 Oct 2018 14:28:00 GMT; Secure; HttpOnly; SameSite=Strict
685[info] - should serialize: x=y; Version=1; Something-Else
686[info] - should parse single cookie pair
687[info] - should parse multiple cookie pairs
688[info] - should serialize cookie pair
689[info] - should create a cookie with meta
690[info] - should not create a cookie containing control characters
691[info] AcceptsTest:
692[info] - should parse Accept: application/json Accept-Charset: *
693[info] - should parse Accept: application/json;q=.8 Accept-Charset: *
694[info] - should parse Accept: application/json;q=.88 Accept-Charset: *
695[info] - should parse Accept: application/json;q=.888 Accept-Charset: *
696[info] - should parse Accept: application/json Accept-Charset: utf-8
697[info] - should parse Accept: application/json Accept-Charset: utf-8;a=1;b=2;c=3
698[info] - should parse Accept: text/plain Accept-Charset: utf-8, iso-8559-1
699[info] - should parse Accept: text/plain Accept-Charset: utf-8;q=0.99, iso-8559-1
700[info] - should parse Accept: text/plain Accept-Charset: utf-8;q=0.55, iso-8559-1;q=0.66, utf-16;q=0.77
701[info] - should parse Accept: text/csv, text/plain Accept-Charset: utf-8, utf-16;q=0.5
702[info] - should parse Accept: text/csv, text/plain;q=0.1 Accept-Charset: utf-8, utf-16;q=0.5
703[info] - should parse Accept: text/*, application/json;q=0.9 Accept-Charset: utf-8
704[info] - should parse Accept: */* Accept-Charset: *
705[info] - should parse Accept: text/plain;q=1.000 Accept-Charset: *
706[info] - should parse Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Accept-Charset: *
707[info] - should parse to any when no accept headers
708[info] - should parse when only Accept-Charset specified
709[info] - should parse when only Accept specified
710[info] - should return errors when invalid accept headers
711[info] - should return error for invalid q
712[info] UriTests:
713[info] - List(KeyValue(k,v1~v2,[keyEncoding],[valueEncoding])) should serialize tok=v1%7Ev2
714[info] - http://example.com should serialize to http://example.com
715[info] - http://example.com/ should serialize to http://example.com/
716[info] - https://sub.example.com:8080/a/b/xyz?p1=v1&p2=v2#f should serialize to https://sub.example.com:8080/a/b/xyz?p1=v1&p2=v2#f
717[info] - http://example.com/?p=v&p=v should serialize to http://example.com/?p=v&p=v
718[info] - http://exa%20mple.com/a%20b/z/%C4%85:%C4%99?p:1=v%26v&p2=v+v should serialize to http://exa%20mple.com/a%20b/z/%C4%85:%C4%99?p:1=v%26v&p2=v+v
719[info] - http://us&e%2Fr:pa%20ss@example.com should serialize to http://us&e%2Fr:pa%20ss@example.com
720[info] - http://example.com#f:g/h%20i should serialize to http://example.com#f:g/h%20i
721[info] - http://example.com/key=value should serialize to http://example.com/key=value
722[info] - http://[2001:db8::ff00:42:8329]:8080 should serialize to http://[2001:db8::ff00:42:8329]:8080
723[info] - http://example.com/a b should serialize to http://example.com/a b
724[info] - http: should serialize to http:
725[info] - mailto:user@example.com should serialize to mailto:user@example.com
726[info] - http://sub..domain should serialize to http://sub..domain
727[info] - /x/y should serialize to /x/y
728[info] - /x/y/ should serialize to /x/y/
729[info] - / should serialize to /
730[info] - /x#a should serialize to /x#a
731[info] - /x?p1=v1#a should serialize to /x?p1=v1#a
732[info] - x/y should serialize to x/y
733[info] - ../x/y should serialize to ../x/y
734[info] - whole path: a/b/c, should parse as: List(a, b, c)
735[info] - whole path: /a/b/c, should parse as: List(a, b, c)
736[info] - whole path: /, should parse as: List()
737[info] - whole path: , should parse as: List()
738[info] - List(KeyValue(k1,v1,[keyEncoding],[valueEncoding]), KeyValue(k2,v2,[keyEncoding],[valueEncoding]), KeyValue(k3,v3,[keyEncoding],[valueEncoding]), KeyValue(k4,v4,[keyEncoding],[valueEncoding])) should serialize to k1=v1&k2=v2&k3=v3&k4=v4
739[info] - List(KeyValue(k1,v1,[keyEncoding],[valueEncoding]), KeyValue(k2,v2,[keyEncoding],[valueEncoding]), Plain(-abc-,[encoding]), KeyValue(k3,v3,[keyEncoding],[valueEncoding]), KeyValue(k4,v4,[keyEncoding],[valueEncoding])) should serialize to k1=v1&k2=v2-abc-k3=v3&k4=v4
740[info] - List(KeyValue(k1,v1,[keyEncoding],[valueEncoding]), Plain(&abc&,[encoding]), KeyValue(k2,v2,[keyEncoding],[valueEncoding])) should serialize to k1=v1%26abc%26k2=v2
741[info] - List(KeyValue(k1,v1,[keyEncoding],[valueEncoding]), Plain(&abc&,[encoding])) should serialize to k1=v1&abc&
742[info] - List(KeyValue(k1&,v1&,[keyEncoding],[valueEncoding])) should serialize to k1&=v1%26
743[info] - List(KeyValue(k1&,v1&,[keyEncoding],[valueEncoding])) should serialize to k1%26=v1&
744[info] - List(Plain(Ä…/Ä™&+;?,[encoding])) should serialize to %C4%85/%C4%99&+;?
745[info] - List(KeyValue(k,v1,v2,[keyEncoding],[valueEncoding])) should serialize to k=v1%2Cv2
746[info] - List(KeyValue(k,v1-v2,[keyEncoding],[valueEncoding])) should serialize to k=v1-v2
747[info] - List(KeyValue(k,v1_v2,[keyEncoding],[valueEncoding])) should serialize to k=v1_v2
748[info] - List(KeyValue(k,v1.v2,[keyEncoding],[valueEncoding])) should serialize to k=v1.v2
749[info] - List(KeyValue(k,v1,v2,[keyEncoding],[valueEncoding])) should serialize to k=v1,v2
750[info] - List(KeyValue(k,+1234,[keyEncoding],[valueEncoding])) should serialize to k=%2B1234
751[info] - List(KeyValue(k,[],[keyEncoding],[valueEncoding])) should serialize to k=%5B%5D
752[info] - List(KeyValue(k,[],[keyEncoding],[valueEncoding])) should serialize to k=[]
753[info] - v1,v2 should serialize to v1%2Cv2
754[info] - v1-v2 should serialize to v1-v2
755[info] - v1~v2 should serialize to v1~v2
756[info] - v1_v2 should serialize to v1_v2
757[info] - v1.v2 should serialize to v1.v2
758[info] - host www.mikołak.net should serialize to http://www.xn--mikoak-6db.net
759[info] - host 192.168.1.0 should serialize to http://192.168.1.0
760[info] - host ::1 should serialize to http://[::1]
761[info] - host 2001:db8::ff00:42:8329 should serialize to http://[2001:db8::ff00:42:8329]
762[info] - host 2001:0db8:0000:0000:0000:ff00:0042:8329 should serialize to http://[2001:0db8:0000:0000:0000:ff00:0042:8329]
763[info] - should convert from java URI
764[info] - should parse raw string
765[info] - should convert to java URI
766[info] - should have multi params
767[info] - should have no multi params
768[info] - should have non-empty multi params
769[info] - should have multi params with empty string values
770[info] - should have multi params with only values
771[info] - should replace or append path
772[info] - should replace or append query parameter
773[info] - should parse no-value parameters
774[info] - should validate and throw "host cannot be empty" if not valid
775[info] - should validate and throw "scheme" if not valid
776[info] - should add path ignoring the trailing empty segment if necessary
777[info] - should parse a relative uri with an absolute path
778[info] - should serialize path
779[info] - should serialize query
780[info] - should serialize fragment
781[info] - should serialize scheme
782[info] - should serialize query safe
783[info] HostTest:
784[info] - should parse host and port
785[info] - should parse host without port
786[info] - should parse IPv4 address with port
787[info] - should parse IPv4 address without port
788[info] - should parse IPv6 address with port
789[info] - should parse IPv6 address without port
790[info] HeaderTests:
791[info] - should return a string description of the header
792[info] - should validate status codes
793[info] - should throw exceptions on invalid headers
794[info] - should create unvalidated instances
795[info] - should return a safe string description of a sensitive header
796[info] - should properly create a cache-control header
797[info] Instant
798[info] - should be formatted according to rfc1123-date1 with a leading zero for single-digit dates
799[info] rfc1123-date1
800[info] - should be parsed correctly
801[info] rfc850-2-digit-year-after-70
802[info] - should be parsed as 19xx
803[info] rfc850-2-digit-year-before-69
804[info] - should be parsed as 20xx
805[info] rfc850-4-digit-year
806[info] - should be parsed correctly
807[info] ForwardedTest:
808[info] - should parse a single header correctly
809[info] - should parse a single header correctly, regardless of case of the directives
810[info] - should parse multiple headers correctly, when given as separate headers
811[info] - should parse multiple headers correctly, when given as a single header
812[info] - should handle missing fields
813[info] - should return an error for invalid headers
814[info] - should return an error for invalid key-value pairs
815[info] - should serialize the header to a string
816[info] - should serialize multiple headers to a string
817[info] - should serialize IPv6 addresses to a string
818[info] - should parse ipv6 addresses in 'for', removing the apostrophes
819[info] - should parse multiple ipv4 addresses
820[info] HeaderJvmTests:
821[info] - should properly format expires date
822[info] ContentTypeRangeTests:
823[info] - should serialize using toString
824[info] - should modify the range to any sub type
825[info] - should modify the range to any charset
826[info] - should be case-insensitive when comparing instances
827[info] MethodTest:
828[info] unsafeApply
829[info] - should not be case sensitive
830[info] UriInterpolatorTests:
831[info] - [basic] should interpolate to http://example.com (1)
832[info] - [basic] should interpolate to http://example.com/ (2)
833[info] - [basic] should interpolate to http://example.com?x=y (3)
834[info] - [basic] should interpolate to http://example.com/a/b/c (4)
835[info] - [basic] should interpolate to http://example.com/a/b/c/ (5)
836[info] - [basic] should interpolate to http://example.com/a/b/c?x=y&h=j (6)
837[info] - [scheme] should interpolate to https://example.com (1)
838[info] - [scheme] should interpolate to http://example.com (2)
839[info] - [user info] should interpolate to http://user:pass@example.com (1)
840[info] - [user info] should interpolate to http://a%20c@example.com (2)
841[info] - [user info] should interpolate to http://a%3Ab@example.com (3)
842[info] - [user info] should interpolate to http://y:a%20c@example.com (4)
843[info] - [authority] should interpolate to http://y.com (1)
844[info] - [authority] should interpolate to http://a%20c.com (2)
845[info] - [authority] should interpolate to http://y.a%20c.com (3)
846[info] - [authority] should interpolate to http://ya%20c.com (4)
847[info] - [authority] should interpolate to http://zy.com (5)
848[info] - [authority] should interpolate to http://example.com (6)
849[info] - [authority] should interpolate to http://example.com (7)
850[info] - [authority] should interpolate to http://sub.example.com (8)
851[info] - [authority] should interpolate to http://sub1.sub2.example.com (9)
852[info] - [authority] should interpolate to http://sub1.sub2.example.com (10)
853[info] - [authority] should interpolate to http://sub.example.com (11)
854[info] - [authority with parameters] should interpolate to http://y.com?x=a+c (1)
855[info] - [ipv4] should interpolate to http://192.168.1.2/x (1)
856[info] - [ipv4] should interpolate to http://192.168.1.2/x (2)
857[info] - [ipv4] should interpolate to http://abc/x (3)
858[info] - [ipv4] should interpolate to http://abc/x (4)
859[info] - [ipv6] should interpolate to http://[::1]/x (1)
860[info] - [ipv6] should interpolate to http://[1::3:4:5:6:7:8]/x (2)
861[info] - [ipv6] should interpolate to http://[2001:0abcd:1bcde:2cdef::9f2e:0690:6969]/x (3)
862[info] - [ipv6] should interpolate to http://[::1]/x (4)
863[info] - [ipv6] should interpolate to http://[::1]:8080/x (5)
864[info] - [ipv6] should interpolate to http://[2001:0abcd:1bcde:2cdef::9f2e:0690:6969]/x (6)
865[info] - [ipv6] should interpolate to http://[2001:0db8:85a3:0000:0000:8a2e:0370:7334]:8080 (7)
866[info] - [ipv6] should interpolate to http://[2001:0db8:85a3:0000:0000:8a2e:0370:7334]:8080 (8)
867[info] - [ports] should interpolate to http://example.com:8080 (1)
868[info] - [ports] should interpolate to http://example.com:8080 (2)
869[info] - [ports] should interpolate to http://example.com:8080/x (3)
870[info] - [ports] should interpolate to http://example.com:8080/x (4)
871[info] - [ports] should interpolate to http://example.com/x (5)
872[info] - [ports] should interpolate to http://example.com:8080 (6)
873[info] - [path] should interpolate to http://example.com/y (1)
874[info] - [path] should interpolate to http://example.com/y/ (2)
875[info] - [path] should interpolate to http://example.com/a%20c (3)
876[info] - [path] should interpolate to http://example.com/a%20c/y (4)
877[info] - [path] should interpolate to http://example.com/y/p/f%2Fg (5)
878[info] - [path] should interpolate to http://example.com/a/a%20c/c/f%2Fg/b (6)
879[info] - [path] should interpolate to http://example.com/a/b/c (7)
880[info] - [path] should interpolate to http://example.com/a+b (8)
881[info] - [path] should interpolate to http://example.com/a%20b (9)
882[info] - [path with parameters] should interpolate to http://example.com/y?x=a+c (1)
883[info] - [path with parameters] should interpolate to http://example.com/y/a%20c?x=a+c (2)
884[info] - [query parameter values] should interpolate to http://example.com?x=y (1)
885[info] - [query parameter values] should interpolate to http://example.com/?x=y (2)
886[info] - [query parameter values] should interpolate to http://example.com?x=a+c (3)
887[info] - [query parameter values] should interpolate to http://example.com?x=a?%3D%26c (4)
888[info] - [query parameter values] should interpolate to http://example.com?x=yy (5)
889[info] - [query parameter values] should interpolate to http://example.com?x=zy (6)
890[info] - [query parameter values] should interpolate to http://example.com?x=a+b (7)
891[info] - [query parameter values] should interpolate to http://example.com?x=a%3Db (8)
892[info] - [query parameter values] should interpolate to http://example.com?x=a=b (9)
893[info] - [query parameter values] should interpolate to http://example.com?x=a%3Db (10)
894[info] - [query parameter values] should interpolate to http://example.com?x=a%3Db&y=c%3Dd (11)
895[info] - [query parameter without value] should interpolate to http://example.com?y (1)
896[info] - [query parameter without value] should interpolate to http://example.com?y&a+c (2)
897[info] - [optional query parameters] should interpolate to http://example.com (1)
898[info] - [optional query parameters] should interpolate to http://example.com?a=b (2)
899[info] - [optional query parameters] should interpolate to http://example.com?a=b&e=f (3)
900[info] - [optional query parameters] should interpolate to http://example.com?a=y (4)
901[info] - [optional query parameters] should interpolate to http://example.com?a=y&c=d (5)
902[info] - [parameter collections] should interpolate to http://example.com?a=b&a+c=y&y=a+c (1)
903[info] - [parameter collections] should interpolate to http://example.com?a=b&a=c (2)
904[info] - [parameter collections] should interpolate to http://example.com?a=b (3)
905[info] - [parameter collections] should interpolate to http://example.com?x=y&a=b (4)
906[info] - [parameter collections] should interpolate to http://example.com?x=y (5)
907[info] - [parameter collections] should interpolate to http://example.com?x=y&a=b (6)
908[info] - [parameter collections] should interpolate to http://example.com?x=y (7)
909[info] - [parameter collections] should interpolate to http://example.com?x=1&x=2&y (8)
910[info] - [fragments] should interpolate to http://example.com#y (1)
911[info] - [fragments] should interpolate to http://example.com (2)
912[info] - [everything] should interpolate to http://y.a%20c.com/y/a%20c?y=a+c&a?%3D%26c=f/g#y (1)
913[info] - [embed whole url] should interpolate to http://example.com:123/a/b/c (1)
914[info] - [embed whole url] should interpolate to http://example.com/y?p=a+c (2)
915[info] - [embed whole url with trailing slash + path] should interpolate to http://example.com/y (1)
916[info] - [embed whole url with trailing slash + path] should interpolate to http://example.com/y/ (2)
917[info] - [embed whole url with trailing slash + path] should interpolate to http://example.com/y/y (3)
918[info] - [embed whole url with trailing slash + path] should interpolate to http://example.com/y/y/ (4)
919[info] - [embed whole url with trailing slash + path] should interpolate to http://example.com:123/a/b/c (5)
920[info] - [encode unicode characters that are encoded as 3+ UTF-8 bytes] should interpolate to http://example.com/we/have/%F0%9F%8D%AA (1)
921[info] - [encode unicode characters that are encoded as 3+ UTF-8 bytes] should interpolate to http://example.com/dont/run/with/%E2%9C%82 (2)
922[info] - [encode unicode characters that are encoded as 3+ UTF-8 bytes] should interpolate to http://example.com/in/query?key=%F0%9F%8D%AA (3)
923[info] - [encode unicode characters that are encoded as 3+ UTF-8 bytes] should interpolate to http://example.com/in/query?%F0%9F%8D%AA=value (4)
924[info] - [no authority] should interpolate to mailto:user@example.com (1)
925[info] - [no authority] should interpolate to mailto:user@example.com?x=y (2)
926[info] - [no authority] should interpolate to mailto:user@example.com (3)
927[info] - [no authority] should interpolate to mailto:y@example.com (4)
928[info] - [no authority] should interpolate to mailto:y@example.com?x=y (5)
929[info] - [no authority] should interpolate to mailto:user@example.com (6)
930[info] - [relative urls - paths] should interpolate to /a/b/c (1)
931[info] - [relative urls - paths] should interpolate to /a/b/c?x=y (2)
932[info] - [relative urls - paths] should interpolate to /a/b/c (3)
933[info] - [relative urls - paths] should interpolate to /y/b/c (4)
934[info] - [relative urls - paths] should interpolate to /y/a%20c/c (5)
935[info] - [relative urls - paths] should interpolate to a (6)
936[info] - [relative urls - paths] should interpolate to y (7)
937[info] - [relative urls - paths] should interpolate to a/b/c (8)
938[info] - [relative urls - paths] should interpolate to y/b/c (9)
939[info] - [relative urls - paths] should interpolate to y/a%20c/c (10)
940[info] - [relative urls - paths] should interpolate to ../a (11)
941[info] - [scheme relative] should interpolate to //example.com (1)
942[info] - [scheme relative] should interpolate to //y.com (2)
943[info] - [scheme relative] should interpolate to //example.com/a/b/c (3)
944[info] - [scheme relative] should interpolate to //example.com/y/b/c (4)
945[info] - [relative - embedded] should interpolate to a/b/c (1)
946[info] - [relative - embedded] should interpolate to a/b/c/d (2)
947[info] - [relative - embedded] should interpolate to a/b%2Fc (3)
948[info] - uri with two ports should validate and throw "port specified multiple times" if not valid
949[info] - uri with a non-numerical port should validate and throw "invalid port" if not valid
950[info] - uri with embedded host+port and port should validate and throw "port specified multiple times" if not valid
951[info] - uri with missing subdomain in hostname should validate and throw "incorrect hostname" if not valid
952[info] - uri with incorrect hostname should validate and throw "incorrect hostname" if not valid
953[info] - empty string as uri should validate and throw "empty string is not valid uri" if not valid
954[info] - empty uri should validate and throw "empty string is not valid uri" if not valid
955[info] QueryParamsTests:
956[info] - should support no-value parameters
957[info] - should serialize to string
958[info] - should serialize to string, encoding special character
959[info] - should serialize to string with a boundary if there are query params
960[info] - should serialize to string without boundary if there are no query params
961[info] PartTest:
962[info] - should encode content-disposition header correctly
963[info] - should retain non-ascii characters in filename
964[info] - should retain non-ascii characters in filename*
965[info] - should fallback to basic filename if filename* is not present
966[info] - should escape double quote and backslash in filename
967[info] ETagTest:
968[info] - should properly quote an etag
969[info] - should properly quote a list of etags
970[info] - should properly quote a weak etag
971[info] - should parse an etag
972[info] - should parse a list of etags
973[info] - should parse a list of etags with weak etags
974[info] - should parse a weak etag
975[info] - should not parse an invalid etag
976
977************************
978Build summary:
979[{
980 "module": "core",
981 "compile": {"status": "ok", "tookMs": 13675, "warnings": 3, "errors": 0, "sourceVersion": "3.8"},
982 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
983 "test-compile": {"status": "ok", "tookMs": 9415, "warnings": 84, "errors": 0, "sourceVersion": "3.8"},
984 "test": {"status": "ok", "tookMs": 1135, "passed": 421, "failed": 0, "ignored": 0, "skipped": 0, "total": 421, "byFramework": [{"framework": "unknown", "stats": {"passed": 421, "failed": 0, "ignored": 0, "skipped": 0, "total": 421}}]},
985 "publish": {"status": "skipped", "tookMs": 0},
986 "metadata": {
987 "crossScalaVersions": ["2.12.20"]
988}
989}]
990************************
991[success] Total time: 26 s, completed Jan 13, 2026, 3:16:31 PM
992[0JChecking patch project/plugins.sbt...
993Checking patch build.sbt...
994Applied patch project/plugins.sbt cleanly.
995Applied patch build.sbt cleanly.