Skip to content

Commit

Permalink
NFCReader<NDEFMessage> のテストを追加 (#95)
Browse files Browse the repository at this point in the history
* NDEFMessageTests モジュールを追加

* Create NDEFMessageTests.swift
  • Loading branch information
treastrain authored Nov 19, 2022
1 parent 30d0417 commit fb63cb8
Show file tree
Hide file tree
Showing 2 changed files with 45 additions and 1 deletion.
2 changes: 1 addition & 1 deletion Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ func add(moduleName: String, dependencies: [Target.Dependency] = [], includesTes
// MARK: - Modules
let core = add(moduleName: "Core", includesTest: true)
add(moduleName: "NativeTag", dependencies: [core], includesTest: true)
add(moduleName: "NDEFMessage", dependencies: [core], includesTest: false)
add(moduleName: "NDEFMessage", dependencies: [core], includesTest: true)
add(moduleName: "NDEFTag", dependencies: [core], includesTest: true)

// MARK: - Package
Expand Down
44 changes: 44 additions & 0 deletions Tests/NDEFMessageTests/NDEFMessageTests.swift
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

0 comments on commit fb63cb8

Please sign in to comment.