From c65237a777f34fb56726f002d3595b928d967d04 Mon Sep 17 00:00:00 2001
From: Diamond Lewis <findlewis@gmail.com>
Date: Tue, 28 Jan 2025 11:02:41 -0600
Subject: [PATCH] fix: `Parse.serServer` doesn't handle url validation

---
 .../Parse.xcodeproj/xcshareddata/xcschemes/Parse-iOS.xcscheme  | 3 ---
 Parse/Parse/Source/ParseClientConfiguration.m                  | 3 ++-
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/Parse/Parse.xcodeproj/xcshareddata/xcschemes/Parse-iOS.xcscheme b/Parse/Parse.xcodeproj/xcshareddata/xcschemes/Parse-iOS.xcscheme
index 9e5527268..cec359cae 100644
--- a/Parse/Parse.xcodeproj/xcshareddata/xcschemes/Parse-iOS.xcscheme
+++ b/Parse/Parse.xcodeproj/xcshareddata/xcschemes/Parse-iOS.xcscheme
@@ -96,9 +96,6 @@
                <Test
                   Identifier = "ParseClientConfigurationTests/testExtensionDataSharing">
                </Test>
-               <Test
-                  Identifier = "ParseClientConfigurationTests/testServerValidation">
-               </Test>
             </SkippedTests>
          </TestableReference>
       </Testables>
diff --git a/Parse/Parse/Source/ParseClientConfiguration.m b/Parse/Parse/Source/ParseClientConfiguration.m
index 8420224b4..bda644903 100644
--- a/Parse/Parse/Source/ParseClientConfiguration.m
+++ b/Parse/Parse/Source/ParseClientConfiguration.m
@@ -69,8 +69,9 @@ - (void)setClientKey:(NSString *)clientKey {
 }
 
 - (void)setServer:(NSString *)server {
+    NSURL *url = [NSURL URLWithString:server];
     PFParameterAssert(server.length, @"Server should not be `nil`.");
-    PFParameterAssert([NSURL URLWithString:server], @"Server should be a valid URL.");
+    PFParameterAssert(url && url.scheme && url.host, @"Server should be a valid URL.");
     _server = [server copy];
 }