Skip to content

Commit f4fe95f

Browse files
committed
Add test cases back
1 parent b3357f6 commit f4fe95f

File tree

1 file changed

+69
-0
lines changed
  • components/ide/jetbrains/backend-plugin/src/test/kotlin/io/gitpod/jetbrains/remote/util

1 file changed

+69
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
// Copyright (c) 2022 Gitpod GmbH. All rights reserved.
2+
// Licensed under the GNU Affero General Public License (AGPL).
3+
// See License.AGPL.txt in the project root for license information.
4+
5+
package io.gitpod.jetbrains.remote.util
6+
7+
import io.gitpod.jetbrains.remote.utils.LocalHostUri
8+
import io.gitpod.jetbrains.remote.utils.LocalHostUri.LocalHostUriMetadata
9+
import java.net.URI
10+
import kotlin.test.Test
11+
import kotlin.test.assertEquals
12+
import kotlin.test.assertTrue
13+
14+
internal class LocalHostUriTest {
15+
@Test
16+
fun testExtractLocalHostUriMetaDataForPortMapping() {
17+
val urlToMetadataMap = mapOf(
18+
"https://localhost:80" to object: LocalHostUriMetadata {
19+
override val address = "localhost"
20+
override val port = 80
21+
},
22+
"https://localhost" to object: LocalHostUriMetadata {
23+
override val address = "localhost"
24+
override val port = 443
25+
},
26+
"http://localhost:12354" to object: LocalHostUriMetadata {
27+
override val address = "localhost"
28+
override val port = 12354
29+
},
30+
"https://127.0.0.1:3000" to object: LocalHostUriMetadata {
31+
override val address = "127.0.0.1"
32+
override val port = 3000
33+
},
34+
"http://127.0.0.1:5000" to object: LocalHostUriMetadata {
35+
override val address = "127.0.0.1"
36+
override val port = 5000
37+
},
38+
"http://[::1]:8080" to object: LocalHostUriMetadata {
39+
override val address = "::"
40+
override val port = 8080
41+
},
42+
)
43+
44+
urlToMetadataMap.forEach { (url, expected) ->
45+
val uri = URI.create(url)
46+
val actualLocalHostUriMetadataOptional = LocalHostUri.extractLocalHostUriMetaDataForPortMapping(uri)
47+
val actual = actualLocalHostUriMetadataOptional.get()
48+
49+
assertEquals(expected.address, actual.address)
50+
assertEquals(expected.port, actual.port)
51+
}
52+
53+
val urlsThatShouldReturnEmpty = listOf(
54+
"https://localhost:123b",
55+
"http://192.168.0.1:4000",
56+
"https://example.com?cb=localhost",
57+
"https://example.com?cb=http://localhost",
58+
"https://example.com?cb=https://localhost:8080",
59+
"https://example.com?cb=https://127.0.0.1:8080"
60+
)
61+
62+
urlsThatShouldReturnEmpty.forEach { url ->
63+
val uri = URI.create(url)
64+
val localHostUriMetaDataForPort = LocalHostUri.extractLocalHostUriMetaDataForPortMapping(uri)
65+
66+
assertTrue(localHostUriMetaDataForPort.isEmpty)
67+
}
68+
}
69+
}

0 commit comments

Comments
 (0)