public static void SetupExecuteSqlFromFileWithListParameter <T, U>(
     this Mock <IDatabaseService> mockDatabaseService,
     string script,
     string parameterPropertyName,
     IEnumerable <U> parameterPropertyValue,
     IEnumerable <T> returnValue)
 {
     mockDatabaseService
     .Setup(
         p => p.ExecuteSqlFromFile <T>(
             script,
             It.Is <object>(
                 objectToCheck => ObjectHelpers.ObjectHasPropertyWithExpectedValue(objectToCheck, parameterPropertyName, parameterPropertyValue)
                 )
             )
         )
     .Returns(returnValue);
 }
 public static void SetupExecuteSqlFromFileGenericWithListParameter <T>(
     this Mock <IDatabaseService> mockDatabaseService,
     string script,
     IDictionary <string, string> literalReplacements,
     string parameterPropertyName,
     IEnumerable <T> parameterPropertyValue,
     IEnumerable <IDictionary <string, object> > returnValue)
 {
     mockDatabaseService
     .Setup(
         p => p.ExecuteSqlFromFileGeneric(
             script,
             literalReplacements,
             It.Is <object>(
                 objectToCheck => ObjectHelpers.ObjectHasPropertyWithExpectedValue(objectToCheck, parameterPropertyName, parameterPropertyValue)
                 )
             )
         )
     .Returns(returnValue);
 }