       XCTAssertFalse(persons.isEmpty)
       return
     }
-
+    
     // Then
-
+    
     /// Car exception
     XCTAssertNoThrow(try Car.deleteAll(in: context, except: [car]))
     let cars = try Car.fetch(in: context)
     XCTAssertNotNil(cars.filter { $0.numberPlate == "5" }.first)
     XCTAssertTrue(cars.filter { $0.numberPlate != "5" }.isEmpty)
-
+    
     /// exceptions
     var exceptions = persons
     exceptions.append(person)
     XCTAssertNoThrow(try Person.deleteAll(in: context, except: exceptions))
     XCTAssertFalse(try Person.fetch(in: context).filter { ($0.firstName == "Theodora" && $0.lastName == "Stone") || ($0.lastName == "Moreton") }.isEmpty)
-
+    
     /// no exceptions
     XCTAssertNoThrow(try Person.deleteAll(in: context, except: []))
     XCTAssertTrue(try Person.fetch(in: context).isEmpty)
-
+    
   }
-
+  
   func testDeleteAllWithSubentitiesExcludingExceptions() throws {
     // Given
     let context = container.viewContext
     context.fillWithSampleData()
-
+    
     // When, Then
     let predicate = NSPredicate(format: "%K >= %@ && %K <= %@", #keyPath(Car.numberPlate), "202", #keyPath(Car.numberPlate), "204")
     let sportCars = try SportCar.fetch(in: context, with: { $0.predicate = predicate })

    let carsAfterDelete = try Car.fetch(in: context)
    XCTAssertTrue(carsAfterDelete.count == 3)
  }

}

    // Then
    XCTAssertTrue(try SportCar.fetch(in: context).filter { $0.numberPlate == "302" }.isEmpty)
    XCTAssertTrue(try ExpensiveSportCar.fetch(in: context).filter { $0.numberPlate == "302" }.isEmpty)
    
    // When
    XCTAssertNoThrow(try ExpensiveSportCar.deleteAll(in: context, where: NSPredicate(format: "%K == %@", #keyPath(SportCar.numberPlate), "301")))
    // Then
    XCTAssertTrue(try SportCar.fetch(in: context).filter { $0.numberPlate == "301" }.isEmpty)
    XCTAssertTrue(try ExpensiveSportCar.fetch(in: context).filter { $0.numberPlate == "301" }.isEmpty)
    
    // When
    XCTAssertNoThrow(try SportCar.deleteAll(in: context, where: NSPredicate(value: true)))
    // Then
    XCTAssertTrue(try SportCar.fetch(in: context).isEmpty)
    XCTAssertTrue(try ExpensiveSportCar.fetch(in: context).isEmpty)
    XCTAssertTrue(try !Car.fetch(in: context).isEmpty)
    
    // When
    XCTAssertNoThrow(try Car.deleteAll(in: context))
    // Then
    XCTAssertTrue(try Car.fetch(in: context).isEmpty)
    
  }
  
  func testDeleteAllExcludingSubentities() {
    let context = container.viewContext
    
    // Given
    context.fillWithSampleData()
    // When
