mirror of
https://github.com/yattee/yattee.git
synced 2025-08-05 02:04:07 +00:00
Improve URL handling
This commit is contained in:
@@ -1,17 +0,0 @@
|
||||
import XCTest
|
||||
|
||||
final class InstancesModelTests: XCTestCase {
|
||||
func testStandardizedURL() throws {
|
||||
let samples: [String: String] = [
|
||||
"https://www.youtube.com/": "https://www.youtube.com",
|
||||
"https://www.youtube.com": "https://www.youtube.com",
|
||||
]
|
||||
|
||||
samples.forEach { url, standardized in
|
||||
XCTAssertEqual(
|
||||
InstancesModel.standardizedURL(url),
|
||||
standardized
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
@@ -1,39 +0,0 @@
|
||||
import XCTest
|
||||
|
||||
final class VideoURLParserTests: XCTestCase {
|
||||
func testIDParsing() throws {
|
||||
let samples: [String: String] = [
|
||||
"https://www.youtube.com/watch?v=_E0PWQvW-14&list=WL&index=4&t=155s": "_E0PWQvW-14",
|
||||
"https://youtu.be/IRsc57nK8mg?t=20": "IRsc57nK8mg",
|
||||
"https://www.youtube-nocookie.com/watch?index=4&v=cE1PSQrWc11&list=WL&t=155s": "cE1PSQrWc11",
|
||||
"https://invidious.snopyta.org/watch?v=XpowfENlJAw" : "XpowfENlJAw",
|
||||
"/watch?v=VQ_f5RymW70" : "VQ_f5RymW70",
|
||||
"watch?v=IUTGFQpKaPU&t=30s": "IUTGFQpKaPU"
|
||||
]
|
||||
|
||||
samples.forEach { url, id in
|
||||
XCTAssertEqual(
|
||||
VideoURLParser(url: URL(string: url)!).id,
|
||||
id
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
func testTimeParsing() throws {
|
||||
let samples: [String: TimeInterval?] = [
|
||||
"https://www.youtube.com/watch?v=_E0PWQvW-14&list=WL&index=4&t=155s": 155,
|
||||
"https://youtu.be/IRsc57nK8mg?t=20m10s": 1210,
|
||||
"https://youtu.be/IRsc57nK8mg?t=3x4z": nil,
|
||||
"https://www.youtube-nocookie.com/watch?index=4&v=cE1PSQrWc11&list=WL&t=2H3m5s": 7385,
|
||||
"https://youtu.be/VQ_f5RymW70?t=378": 378,
|
||||
"watch?v=IUTGFQpKaPU&t=30s": 30
|
||||
]
|
||||
|
||||
samples.forEach { url, time in
|
||||
XCTAssertEqual(
|
||||
VideoURLParser(url: URL(string: url)!).time,
|
||||
time
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user