         run(config: config, expectedError: nil)
         
         XCTAssertEqual(db.count, 1)
-        
-        let savedDoc = db.document(withID: "doc")!
-        
-        let exp: [String: Any] = ["species": "Tiger", "pattern": "striped"]
-        XCTAssertEqual(resolver.winner!, savedDoc)
-        XCTAssertEqual(savedDoc.toDictionary().count, 2)
-        XCTAssertEqual(savedDoc.toDictionary().keys, exp.keys)
-    }
-    
-    func testConflictHandlerLocalWins() throws {
-        let doc = MutableDocument(id: "doc")
-        doc.setString("Tiger", forKey: "species")
-        try db.saveDocument(doc)
-        
-        let target = DatabaseEndpoint(database: otherDB)
-        var config = self.config(target: target, type: .push, continuous: false)
-        run(config: config, expectedError: nil)
-        
-        // make changes to both documents from db and otherDB
-        let doc1 = db.document(withID: "doc")!.toMutable()
-        doc1.setString("Hobbes", forKey: "name")
-        try db.saveDocument(doc1)
-        
-        let doc2 = otherDB.document(withID: "doc")!.toMutable()
-        doc2.setString("striped", forKey: "pattern")
-        try otherDB.saveDocument(doc2)
-        
-        // Pull:
-        config = self.config(target: target, type: .pull, continuous: false)
+        XCTAssertEqual(resolver.winner!, db.document(withID: "doc")!)
+        XCTAssert(db.document(withID: "doc")!.toDictionary() == remoteData)
+    }
+    
+    func testConflictResolverLocalWins() throws {
+        let localData = ["name": "Hobbes"]
+        let remoteData = ["pattern": "striped"]
+        try makeConflict(forID: "doc", withLocal: localData, withRemote: remoteData)
+        
+        let config = getConfig(.pull)
         let resolver = TestConflictResolver() { (conflict) -> Document? in
             return conflict.localDocument
         }

        config.conflictResolver = resolver
        var token: ListenerToken!
        var replicator: Replicator!
        var error: NSError?
        
        ignoreException {

        let docID = "doc"
        let content = "I am a blob".data(using: .utf8)!
        var blob = Blob(contentType: "text/plain", data: content)
        
        let config = getConfig(.pull)
        var resolver: TestConflictResolver!
        
        // RESOLVE WITH REMOTE and BLOB data in LOCAL
        var localData: [String: Any] = ["key1": "value1", "blob": blob]
        var remoteData: [String: Any] = ["key2": "value2"]
        try makeConflict(forID: docID, withLocal: localData, withRemote: remoteData)
        resolver = TestConflictResolver() { (conflict) -> Document? in
            return conflict.remoteDocument
