Add scenic selection and cooperation order flows aligned with Android.

Upgrade scenic picker with search, location sorting, permission apply/status, and blocking home dialog; add cooperation order module and order source picker improvements with unit tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-07 10:48:43 +08:00
parent 3c4ca7eefb
commit 2bea05b1d9
50 changed files with 5603 additions and 191 deletions

View File

@ -0,0 +1,28 @@
//
// ScenicDistanceCalculatorTests.swift
// suixinkanTests
//
import XCTest
@testable import suixinkan
///
final class ScenicDistanceCalculatorTests: XCTestCase {
func testDistanceKilometersBetweenKnownPoints() {
// ~ 0.9km
let km = ScenicDistanceCalculator.distanceKilometers(
fromLat: 39.9087,
fromLng: 116.3975,
toLat: 39.9163,
toLng: 116.3972
)
XCTAssertGreaterThan(km, 0.5)
XCTAssertLessThan(km, 1.5)
}
func testFormatDistanceKilometers() {
XCTAssertEqual(ScenicDistanceCalculator.formatDistanceKilometers(1.234), "1.23")
XCTAssertEqual(ScenicDistanceCalculator.formatDistanceKilometers(0), "0")
}
}