blob: 3a87a69756e182b9e554b6010e7bea858473050e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
package com.pitchedapps.frost.facebook
import org.junit.Test
import kotlin.test.assertEquals
/**
* Created by Allan Wang on 2017-07-07.
*/
class FbUrlTest {
fun assertFbFormat(expected: String, url: String) {
val fbUrl = FbUrlFormatter(url)
assertEquals(expected, fbUrl.toString(), "FbUrl Mismatch:\n${fbUrl.toLogList().joinToString("\n\t")}")
}
@Test
fun base() {
val url = "https://touch.facebook.com/relative/?asdf=1234&hjkl=7890"
assertFbFormat(url, url)
}
@Test
fun relative() {
val url = "/relative/?asdf=1234&hjkl=7890"
assertFbFormat("$FB_URL_BASE${url.substring(1)}", url)
}
@Test
fun redirect() {
assertFbFormat("${FB_URL_BASE}relative/?asdf=1234&hjkl=7890", "https://touch.facebook.com/l.php?u=${FB_URL_BASE}relative/&asdf=1234&hjkl=7890")
}
@Test
fun discard() {
val prefix = "$FB_URL_BASE?test=1234"
val suffix = "&apple=notorange"
assertFbFormat("$prefix$suffix", "$prefix&ref=hello$suffix")
}
@Test
fun doubleDash() {
assertFbFormat("${FB_URL_BASE}relative", "$FB_URL_BASE/relative")
}
@Test
fun css() {
val expected = "https://test.com?efg=hi&oh=bye&oe=apple%3Fornot"
val orig = "https\\3a //test.com?efg=hi&oh=bye&oe=apple\\3F ornot"
assertFbFormat(expected, orig)
}
}
|