@testable import KSPlayer
import XCTest
class SubtitleTest: XCTestCase {
func testSrt() {
let string = """
1
00:00:00,050 --> 00:00:11,000
本字幕仅供学习交流,严禁用于商业用途
2
00:00:13,000 --> 00:00:18,000
-=破烂熊字幕组=-
翻译:风铃
校对&时间轴:小白
3
00:01:00,840 --> 00:01:02,435
你现在必须走了吗?
4
00:01:02,680 --> 00:01:04,318
我说过我会去找他的
5
00:01:07,194 --> 00:01:08,239
- 很多事情我们都说过
- 我承诺过他
907
00:59:47,520 --> 00:59:49,720
有两个人在我们镇上
There were two men in my hometown
908
00:59:51,370 --> 00:59:55,170
被判4F不合格,他们就自杀了,因为不能服役
Declared 4-F unfit, they killed themselves cause they couldn't serve.
909
00:59:55,750 --> 00:59:58,360
注:4-F,二战服役有关的物理,心理,或道德标准。
https://en.wikipedia.org/wiki/Selective_Service_System
http://www.apd.army.mil/pdffiles/r40_501.pdf
910
00:59:59,220 --> 01:00:01,140
为何?我在国防工厂有份工作
Why, I had a job in a defense plant.
"""
let scanner = Scanner(string: string)
let parse = SrtParse()
XCTAssertEqual(parse.canParse(scanner: scanner), true)
let parts = parse.parse(scanner: scanner)
XCTAssertEqual(parts.count, 9)
XCTAssertEqual(parts[8].end, 3601.14)
}
func testVtt() {
let string = """
WEBVTT
1
00:00:00,050 --> 00:00:11,000
本字幕仅供学习交流,严禁用于商业用途
2
00:00:13,000 --> 00:00:18,000
-=破烂熊字幕组=-
翻译:风铃
校对&时间轴:小白
3
00:01:00,840 --> 00:01:02,435
你现在必须走了吗?
4
00:01:02,680 --> 00:01:04,318
我说过我会去找他的
5
00:01:07,194 --> 00:01:08,239
- 很多事情我们都说过
- 我承诺过他
6
00:01:08,280 --> 00:01:10,661
我希望你明白
7
00:01:12,814 --> 00:01:14,702
等等! 你是不可能活着回来的!
"""
let scanner = Scanner(string: string)
let parse = VTTParse()
XCTAssertEqual(parse.canParse(scanner: scanner), true)
let parts = parse.parse(scanner: scanner)
XCTAssertEqual(parts.count, 7)
}
}