-
Notifications
You must be signed in to change notification settings - Fork 34
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
NFCReader<NDEFMessage>
のテストを追加 (#95)
* NDEFMessageTests モジュールを追加 * Create NDEFMessageTests.swift
- Loading branch information
1 parent
30d0417
commit fb63cb8
Showing
2 changed files
with
45 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
// | ||
// NDEFMessageTests.swift | ||
// NDEFMessageTests | ||
// | ||
// Created by treastrain on 2022/11/19. | ||
// | ||
|
||
import XCTest | ||
#if canImport(CoreNFC) | ||
import CoreNFC | ||
#endif | ||
|
||
@testable import TRETNFCKit_Core | ||
@testable import TRETNFCKit_NDEFMessage | ||
|
||
final class NDEFMessageTests: XCTestCase { | ||
func testNDEFMessageNFCReaderReadInvalidateAfterFirstReadDetectingAlertMessageDidBecomeActiveDidInvalidateDidDetectNDEFs() async throws { | ||
#if canImport(CoreNFC) && !targetEnvironment(macCatalyst) | ||
let alertMessage = "Detecting Alert Message" | ||
|
||
let reader = NFCReader<NDEFMessage>() | ||
try await reader.read( | ||
invalidateAfterFirstRead: false, | ||
detectingAlertMessage: alertMessage, | ||
didBecomeActive: { _ in }, | ||
didInvalidate: { _ in }, | ||
didDetectNDEFs: { session, tags in .continue } | ||
) | ||
let readerSessionOrNil = await reader.sessionAndDelegate?.session | ||
let readerSession = try XCTUnwrap(readerSessionOrNil) | ||
XCTAssertEqual(readerSession.alertMessage, alertMessage) | ||
let readerSessionDelegate = await reader.sessionAndDelegate?.delegate | ||
XCTAssertNotNil(readerSessionDelegate) | ||
#else | ||
throw XCTSkip("Support for this platform is not considered.") | ||
#endif | ||
} | ||
} | ||
|
||
#if canImport(CoreNFC) && DEBUG | ||
extension NDEFMessage.ReaderSession { | ||
open override class var readingAvailable: Bool { true } | ||
} | ||
#endif |