Skip to content

Commit 2e695d6

Browse files
liufengyunmichelou
authored andcommitted
Add test
1 parent d487e26 commit 2e695d6

File tree

1 file changed

+75
-0
lines changed

1 file changed

+75
-0
lines changed

tests/patmat/i12241.scala

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
sealed trait EndpointInput[T]
2+
3+
object EndpointInput {
4+
case class Pair[T]() extends EndpointInput[T]
5+
case class MappedPair[T]() extends EndpointInput[T]
6+
case class Pair2[T]() extends EndpointInput[T]
7+
case class MappedPair2[T]() extends EndpointInput[T]
8+
case class FixedMethod[T]() extends EndpointInput[T]
9+
case class FixedPath[T]() extends EndpointInput[T]
10+
case class PathCapture[T]() extends EndpointInput[T]
11+
case class PathsCapture[T]() extends EndpointInput[T]
12+
case class Query[T]() extends EndpointInput[T]
13+
case class QueryParams[T]() extends EndpointInput[T]
14+
case class Cookie[T]() extends EndpointInput[T]
15+
case class ExtractFromRequest[T]() extends EndpointInput[T]
16+
case class ApiKey[T]() extends EndpointInput[T]
17+
case class Http[T]() extends EndpointInput[T]
18+
case class Body[R, T]() extends EndpointInput[T]
19+
case class FixedHeader[T]() extends EndpointInput[T]
20+
case class Header[T]() extends EndpointInput[T]
21+
case class Headers[T]() extends EndpointInput[T]
22+
case class StatusCode[T]() extends EndpointInput[T]
23+
case class Empty[T]() extends EndpointInput[T]
24+
}
25+
26+
object Test extends App {
27+
import EndpointInput._
28+
29+
def compare(left: EndpointInput[_], right: EndpointInput[_]): Boolean =
30+
(left, right) match {
31+
case (Pair(), Pair()) => true
32+
case (MappedPair(), MappedPair()) => true
33+
case (Pair2(), Pair2()) => true
34+
case (MappedPair2(), MappedPair2()) => true
35+
case (FixedMethod(), FixedMethod()) => true
36+
case (FixedPath(), FixedPath()) => true
37+
case (PathCapture(), PathCapture()) => true
38+
case (PathsCapture(), PathsCapture()) => true
39+
case (Query(), Query()) => true
40+
case (QueryParams(), QueryParams()) => true
41+
case (Cookie(), Cookie()) => true
42+
case (ExtractFromRequest(), ExtractFromRequest()) => true
43+
case (ApiKey(), ApiKey()) => true
44+
case (Http(), Http()) => true
45+
case (Body(), Body()) => true
46+
case (FixedHeader(), FixedHeader()) => true
47+
case (Header(), Header()) => true
48+
case (Headers(), Headers()) => true
49+
case (StatusCode(), StatusCode()) => true
50+
case (_, _) => false
51+
}
52+
53+
def compare2(left: EndpointInput[_], right: EndpointInput[_]): Boolean =
54+
(left, right) match {
55+
case (Pair(), Pair()) => true
56+
case (MappedPair(), MappedPair()) => true
57+
case (Pair2(), Pair2()) => true
58+
case (MappedPair2(), MappedPair2()) => true
59+
case (FixedMethod(), FixedMethod()) => true
60+
case (FixedPath(), FixedPath()) => true
61+
case (PathCapture(), PathCapture()) => true
62+
case (PathsCapture(), PathsCapture()) => true
63+
case (Query(), Query()) => true
64+
case (QueryParams(), QueryParams()) => true
65+
case (Cookie(), Cookie()) => true
66+
case (ExtractFromRequest(), ExtractFromRequest()) => true
67+
case (ApiKey(), ApiKey()) => true
68+
case (Http(), Http()) => true
69+
case (Body(), Body()) => true
70+
case (FixedHeader(), FixedHeader()) => true
71+
case (Header(), Header()) => true
72+
case (Headers(), Headers()) => true
73+
case (StatusCode(), StatusCode()) => true
74+
}
75+
}

0 commit comments

Comments
 (0)