// // OrderNumberParserTests.swift // suixinkanTests // // Created by Codex on 2026/6/22. // import XCTest @testable import suixinkan_ios /// 订单号解析器测试,覆盖扫码内容中的常见订单号格式。 final class OrderNumberParserTests: XCTestCase { /// 测试从 URL query 中解析 order_number。 func testParseOrderNumberFromURLQuery() { XCTAssertEqual( OrderNumberParser.parse("https://example.com/check?foo=1&order_number=ORD123456"), "ORD123456" ) } /// 测试从 key-value 文本中解析订单号。 func testParseOrderNumberFromKeyValueText() { XCTAssertEqual(OrderNumberParser.parse("order_number=ORD123456"), "ORD123456") XCTAssertEqual(OrderNumberParser.parse("order-number:ORD654321"), "ORD654321") } /// 测试从纯文本中解析订单号。 func testParsePlainOrderNumberText() { XCTAssertEqual(OrderNumberParser.parse(" VERIFY001 "), "VERIFY001") } /// 测试无效内容不会返回订单号。 func testParseInvalidTextReturnsNil() { XCTAssertNil(OrderNumberParser.parse("")) XCTAssertNil(OrderNumberParser.parse("abc def")) XCTAssertNil(OrderNumberParser.parse("12345")) } }