@@ -148,4 +148,31 @@ final class MParticleEventTests: MParticleTestBase {
148148 XCTAssertEqual ( backendController. eventWithNameEventNameParam, event. name)
149149 XCTAssertNil ( result)
150150 }
151+
152+ func test_logEvent_usesExistingEvent_andUpdatesTypeAndAttributes( ) {
153+ backendController. eventWithNameReturnValue = event
154+
155+ mparticle. logEvent ( event. name, eventType: event. type, eventInfo: event. customAttributes)
156+
157+ XCTAssertTrue ( backendController. eventWithNameCalled)
158+ XCTAssertEqual ( backendController. eventWithNameEventNameParam, event. name)
159+
160+ XCTAssertTrue ( listenerController. onAPICalledCalled)
161+ XCTAssertTrue ( listenerController. onAPICalledParameter1 === event)
162+ }
163+
164+ func test_logEvent_createsNewEvent_whenNotFound( ) {
165+ backendController. eventWithNameReturnValue = nil
166+
167+ mparticle. logEvent ( event. name, eventType: event. type, eventInfo: event. customAttributes)
168+
169+ XCTAssertTrue ( backendController. eventWithNameCalled)
170+ XCTAssertEqual ( backendController. eventWithNameEventNameParam, event. name)
171+
172+ XCTAssertTrue ( listenerController. onAPICalledCalled)
173+ let createdEvent : MPEvent = ( listenerController. onAPICalledParameter1 as? MPBaseEvent ) ! as! MPEvent
174+ XCTAssertEqual ( createdEvent. name, event. name)
175+ XCTAssertEqual ( createdEvent. type, event. type)
176+ XCTAssertEqual ( createdEvent. customAttributes as! [ String : String ] , event. customAttributes as! [ String : String ] )
177+ }
151178}
0 commit comments