func testCrashlyticsOutputStream()

in TwitterLoggingServiceTests/TLSLoggingSwiftTests.swift [250:285]


    func testCrashlyticsOutputStream()
    {
        var longMessage = "This is a long message that will exceed 16KB so that we can test that it will be discarded."
        while (longMessage.count < 16 * 1024) {
            longMessage += longMessage
        }
        let crashlyticsOutputStream = TLSLoggingSwiftTestCrashlyticsOutputStream()
        let messageInfo = self.dummyLogMessageInfo()
        let longMessageInfo = self.dummyLogMessageInfo(longMessage)

        crashlyticsOutputStream.tls_outputLogInfo(messageInfo)
        XCTAssertTrue(messageInfo.didGetMessage)
        XCTAssertTrue(crashlyticsOutputStream.didOutputLogMessageToCrashlytics)
        crashlyticsOutputStream.reset()
        messageInfo.reset()

        crashlyticsOutputStream.discardLargeLogMessagesOverride = true
        crashlyticsOutputStream.tls_outputLogInfo(messageInfo)
        XCTAssertFalse(messageInfo.didGetMessage) // cached
        XCTAssertTrue(crashlyticsOutputStream.didOutputLogMessageToCrashlytics)
        crashlyticsOutputStream.reset()
        messageInfo.reset()

        crashlyticsOutputStream.tls_outputLogInfo(longMessageInfo)
        XCTAssertTrue(longMessageInfo.didGetMessage)
        XCTAssertTrue(crashlyticsOutputStream.didOutputLogMessageToCrashlytics)
        crashlyticsOutputStream.reset()
        longMessageInfo.reset()

        crashlyticsOutputStream.discardLargeLogMessagesOverride = true
        crashlyticsOutputStream.tls_outputLogInfo(longMessageInfo)
        XCTAssertFalse(longMessageInfo.didGetMessage) // cached
        XCTAssertFalse(crashlyticsOutputStream.didOutputLogMessageToCrashlytics)
        crashlyticsOutputStream.reset()
        longMessageInfo.reset()
    }