// Copyright 2019 Google // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. #import "Crashlytics/Shared/FIRCLSNetworking/FIRCLSURLBuilder.h" #import #import @interface FIRCLSURLBuilder (Testing) - (NSString *)escapeString:(NSString *)string; @end @interface FABURLBuilderTests : XCTestCase @end @implementation FABURLBuilderTests - (void)setUp { [super setUp]; } - (void)tearDown { [super tearDown]; } - (void)testTheRightUrlEncodingIsUsed { NSString *actual = @"https://settings.crashlytics.com/spi/v2/platforms/ios/apps/" @"com.dogs.testingappforfunandprofit/" @"settings?icon_hash=277530e7595e8ff02a163905942a24dd14747fcb&display_version=1.0 " @"#1234&source=1&instance=d8b2e102647d9cbdc67a650d23bcefd445874a2c&build_version=1"; NSString *expected = @"https://settings.crashlytics.com/spi/v2/platforms/ios/apps/" @"com.dogs.testingappforfunandprofit/" @"settings?icon_hash=277530e7595e8ff02a163905942a24dd14747fcb&display_version=1.0%20%231234&" @"source=1&instance=d8b2e102647d9cbdc67a650d23bcefd445874a2c&build_version=1"; FIRCLSURLBuilder *urlBuilder = [FIRCLSURLBuilder new]; NSString *encoded = [urlBuilder escapeString:actual]; XCTAssertEqualObjects(encoded, expected); } @end