     }
 }
 
-class FetchRecordsOperationTests: CloudKitOperationTests<TestFetchRecordsOperation> {
+class FetchRecordsOperationTests: CloudKitOperationTests {
+
+    var target: TestFetchRecordsOperation!
+    var operation: CloudKitOperation<TestFetchRecordsOperation>!
+
+    override func setUp() {
+        super.setUp()
+        target = TestFetchRecordsOperation()
+        operation = CloudKitOperation(operation: target, reachability: reachability)
+    }
 
     func test__get_record_ids() {
         let IDs = [ "an-id", "another-id" ]

    }
}

class MarkNotificationsReadOperationTests: CloudKitOperationTests<TestMarkNotificationsReadOperation> {

    var toMark: [TestMarkNotificationsReadOperation.NotificationID]!

    override func setUp() {
        super.setUp()
        toMark = [ "this-is-an-id", "this-is-another-id" ]
        target = TestMarkNotificationsReadOperation(markIDsToRead: toMark)
        operation = CloudKitOperation(target)
    }

    func test__get_notification_id() {

    }
}

class ModifyRecordZonesOperationTests: CloudKitOperationTests {

    var target: TestModifyRecordZonesOperation!
    var operation: CloudKitOperation<TestModifyRecordZonesOperation>!

    override func setUp() {
        super.setUp()
        target = TestModifyRecordZonesOperation()
        operation = CloudKitOperation(operation: target, reachability: reachability)
    }

    func test__get_zones_to_save() {
        let zones = [ "a-zone", "another-zone" ]
