         case let messageString as String where messageString == lastSectionAppearedMessageString && message.name == lastSectionAppearanceMessageHandlerString:
             lastSectionAppearedMessageReceivedExpectation?.fulfill()
         case let messageDict as Dictionary<String, Any>:
-            testValue = messageDict["value"]
+            testValue = messageDict[testValueKeyString]
             testValueReceivedExpectation?.fulfill()
         default:
             return

    
    func evaluateJavaScript(js: String, then: (Any?) -> ()) {
        webVCConfiguredToEmitLastSectionAppearanceEvent.webView?.evaluateJavaScript("""
            window.webkit.messageHandlers.\(self.testValueMessageHandlerString).postMessage({"value": (() => {\(js)})()})
        """) { (result, error) in
            guard let error = error else {
                return

    let lastSectionAppearanceMessageHandlerString = "lastSectionAppearanceHandler"
    let lastSectionAppearedMessageString = "lastSectionAppeared"
    let testValueMessageHandlerString = "testValueReceivedHandler"
    let testValueKeyString = "value"
    var testValueReceivedExpectation: XCTestExpectation?
    var testValue: Any? = nil
    
