in FBAEMKit/FBAEMKitTests/AEMInvocationTests.swift [1046:1131]
func testEncoding() {
let coder = TestCoder()
let invocation: _AEMInvocation = validInvocation
invocation.encode(with: coder)
XCTAssertEqual(
coder.encodedObject[Keys.campaignID] as? String,
invocation.campaignID,
"Should encode the expected campaignID with the correct key"
)
XCTAssertEqual(
coder.encodedObject[Keys.ACSToken] as? String,
invocation.acsToken,
"Should encode the expected acsToken with the correct key"
)
XCTAssertEqual(
coder.encodedObject[Keys.ACSSharedSecret] as? String,
invocation.acsSharedSecret,
"Should encode the expected ACSSharedSecret with the correct key"
)
XCTAssertEqual(
coder.encodedObject[Keys.ACSConfigID] as? String,
invocation.acsConfigID,
"Should encode the expected acsConfigID with the correct key"
)
XCTAssertEqual(
coder.encodedObject[Keys.catalogID] as? String,
invocation.catalogID,
"Should encode the expected catalogID with the correct key"
)
XCTAssertEqual(
coder.encodedObject[Keys.timestamp] as? Date,
invocation.timestamp,
"Should encode the expected timestamp with the correct key"
)
XCTAssertEqual(
coder.encodedObject[Keys.configMode] as? String,
invocation.configMode,
"Should encode the expected configMode with the correct key"
)
let configID = coder.encodedObject[Keys.configID] as? NSNumber
XCTAssertEqual(
configID?.intValue,
invocation.configID,
"Should encode the expected configID with the correct key"
)
XCTAssertEqual(
coder.encodedObject[Keys.recordedEvents] as? NSSet,
invocation.recordedEvents,
"Should encode the expected recordedEvents with the correct key"
)
XCTAssertEqual(
coder.encodedObject[Keys.recordedValues] as? NSDictionary,
invocation.recordedValues,
"Should encode the expected recordedValues with the correct key"
)
let conversionValue = coder.encodedObject[Keys.conversionValue] as? NSNumber
XCTAssertEqual(
conversionValue?.intValue,
invocation.conversionValue,
"Should encode the expected conversionValue with the correct key"
)
let priority = coder.encodedObject[Keys.priority] as? NSNumber
XCTAssertEqual(
priority?.intValue,
invocation.priority,
"Should encode the expected priority with the correct key"
)
XCTAssertEqual(
coder.encodedObject[Keys.conversionTimestamp] as? Date,
invocation.conversionTimestamp,
"Should encode the expected conversionTimestamp with the correct key"
)
let isAggregated = coder.encodedObject[Keys.isAggregated] as? NSNumber
XCTAssertEqual(
isAggregated?.boolValue,
invocation.isAggregated,
"Should encode the expected isAggregated with the correct key"
)
let hasSKAN = coder.encodedObject[Keys.hasSKAN] as? NSNumber
XCTAssertEqual(
hasSKAN?.boolValue,
invocation.hasSKAN,
"Should encode the expected hasSKAN with the correct key"
)
}