forked from lukakerr/Pine
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathStringTests.swift
87 lines (60 loc) · 1.46 KB
/
StringTests.swift
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
//
// StringTests.swift
// PineTests
//
// Created by Luka Kerr on 10/2/19.
// Copyright © 2019 Luka Kerr. All rights reserved.
//
import XCTest
@testable import Pine
class StringTexts: XCTestCase {
func testIsMarkdown() {
let str = "MyFile.md"
XCTAssertTrue(str.isMarkdown)
}
func testIsNotMarkdown() {
let str = "MyFile.mda"
XCTAssertFalse(str.isMarkdown)
}
func testIsBaseFile() {
let file = "file:///"
XCTAssertTrue(file.isBaseFile)
}
func testIsAlternativeBaseFile() {
let file = "file://"
XCTAssertTrue(file.isBaseFile)
}
func testIsNotBaseFile() {
let file = "file:/"
XCTAssertFalse(file.isBaseFile)
}
func testIsNotAlternativeBaseFile() {
let file = "/"
XCTAssertFalse(file.isBaseFile)
}
func testIsHttpsWebLink() {
let link = "https://google.com"
XCTAssertTrue(link.isWebLink)
}
func testIsHttpWebLink() {
let link = "http://google.com"
XCTAssertTrue(link.isWebLink)
}
func testIsNotWebLink() {
let link = "ftp://google.com"
XCTAssertFalse(link.isWebLink)
}
func testIsWhiteSpace() {
let str = " \t\r\n \n\n\t\r"
XCTAssertTrue(str.isWhiteSpace)
}
func testIsNotWhiteSpace() {
let str = " abc"
XCTAssertFalse(str.isWhiteSpace)
}
func testIsDecoded() {
let str = "%E6%B5%8B%E8%AF%95%E8%A7%A3%E7%A0%81%EF%BC%9A123.456"
let expected = "测试解码:123.456"
XCTAssertEqual(str.decoded, expected)
}
}