feat: update app workflows and permissions

This commit is contained in:
2026-07-09 17:34:00 +08:00
parent 43e6133c21
commit 8e356973bd
44 changed files with 2944 additions and 307 deletions

View File

@ -0,0 +1,42 @@
//
// MainTabItemTests.swift
// suixinkanTests
//
import UIKit
import XCTest
@testable import suixinkan
/// TabBar 访
@MainActor
final class MainTabItemTests: XCTestCase {
func testAppTabsUseRestoredAssetIconsAndBuildImages() {
XCTAssertEqual(AppTab.home.unselectedImageName, "tab_home_unselected")
XCTAssertEqual(AppTab.home.selectedImageName, "tab_home_selected")
XCTAssertEqual(AppTab.orders.unselectedImageName, "tab_order_unselected")
XCTAssertEqual(AppTab.statistics.selectedImageName, "tab_data_selected")
XCTAssertEqual(AppTab.profile.unselectedImageName, "tab_profile_unselected")
for tab in AppTab.allCases {
let item = tab.makeTabBarItem()
XCTAssertEqual(item.title, tab.title)
XCTAssertEqual(item.accessibilityIdentifier, "main.tab.\(tab.rawValue)")
XCTAssertNotNil(item.image)
XCTAssertNotNil(item.selectedImage)
XCTAssertEqual(item.image?.renderingMode, .alwaysOriginal)
XCTAssertEqual(item.selectedImage?.renderingMode, .alwaysOriginal)
}
}
func testScanTabItemBuildsGeneratedImageAndKeepsAccessibility() {
let item = MainScanTabItem.makeTabBarItem()
XCTAssertNil(item.title)
XCTAssertEqual(item.accessibilityLabel, "扫码核销")
XCTAssertEqual(item.accessibilityIdentifier, "main.scan")
XCTAssertNotNil(item.image)
XCTAssertNotNil(item.selectedImage)
XCTAssertEqual(item.image?.renderingMode, .alwaysOriginal)
}
}