         networkAdapter.get(url, completionHandler: completionHandler)
     }
 
+    func lastGetURLSatisfies(_ predicate: (URL) -> Bool) -> Bool {
+        guard let url = getURLs.last else { return false }
+        return predicate(url)
+    }
+
 }
 
 class InkbunnyAPITests: XCTestCase {

        let capturingHomepageHandler = CapturingInkbunnyHomepageHandler()
        inkbunnyAPI.loadHomepage(completionHandler: capturingHomepageHandler.verify)

        XCTAssertEqual(false, journallingNetworkAdapter.getURLs.last?.absoluteString.contains("api_search.php"))
    }

}

        let capturingHomepageHandler = CapturingInkbunnyHomepageHandler()
        inkbunnyAPI.loadHomepage(completionHandler: capturingHomepageHandler.verify)

        XCTAssertTrue(journallingNetworkAdapter.lastGetURLSatisfies({ $0.absoluteString.contains(expectedSearchEndpoint.absoluteString) }))
    }

    func testLoginRequestReturnsValidResponseDoesNotNotifyHandlerAboutFailure() {
