@@ -151,16 +151,46 @@ class EventDispatcherTests: XCTestCase {
151151 // Use XCTAssert and related functions to verify your tests produce the correct results.
152152 }
153153
154- func testDispatcherCustom ( ) {
154+ func testDispatcherCustomUrl ( ) {
155155 let dispatcher = MockEventDispatcher ( )
156156
157+ let originalUrl = " https://logx.optimizely.com/v1/events "
158+ let customUrl = " https://google.com "
159+ let overrideUrl = " https://apple.com "
160+
161+ // default end-point
162+
157163 dispatcher. dispatchEvent ( event: EventForDispatch ( body: Data ( ) ) , completionHandler: nil )
158164
159165 XCTAssert ( dispatcher. events. count == 1 )
166+ XCTAssert ( dispatcher. events. first? . url. absoluteString == originalUrl)
167+ dispatcher. flushEvents ( )
168+ XCTAssert ( dispatcher. events. count == 0 )
169+
170+ // customize end-point
160171
172+ EventForDispatch . eventEndpoint = customUrl
173+ dispatcher. dispatchEvent ( event: EventForDispatch ( body: Data ( ) ) , completionHandler: nil )
174+
175+ XCTAssert ( dispatcher. events. count == 1 )
176+ XCTAssert ( dispatcher. events. first? . url. absoluteString == customUrl)
161177 dispatcher. flushEvents ( )
162178
163- XCTAssert ( dispatcher. events. count == 0 )
179+ // override end-point
180+
181+ dispatcher. dispatchEvent ( event: EventForDispatch ( url: URL ( string: overrideUrl) , body: Data ( ) ) , completionHandler: nil )
182+
183+ XCTAssert ( dispatcher. events. count == 1 )
184+ XCTAssert ( dispatcher. events. first? . url. absoluteString == overrideUrl)
185+ dispatcher. flushEvents ( )
186+
187+ // saved custom end-point
188+
189+ dispatcher. dispatchEvent ( event: EventForDispatch ( body: Data ( ) ) , completionHandler: nil )
190+
191+ XCTAssert ( dispatcher. events. count == 1 )
192+ XCTAssert ( dispatcher. events. first? . url. absoluteString == customUrl)
193+ dispatcher. flushEvents ( )
164194 }
165195
166196 func testDispatcherMethods( ) {
0 commit comments