func testAPI_presignPublicURLWithPathStyleConfig()

in OSSSwiftDemo/OSSSwiftDemoTests/OSSNormalObjectTests.swift [663:716]


    func testAPI_presignPublicURLWithPathStyleConfig() {
        var config = OSSClientConfiguration()
        config.isPathStyleAccessEnable = true
        var authProv = OSSAuthCredentialProvider(authServerUrl: OSS_STSTOKEN_URL)
        var client = OSSClient(endpoint: ENDPOINT, credentialProvider: authProv, clientConfiguration: config)
        var tk = client.presignPublicURL(withBucketName: BUCKET_NAME,
                                         withObjectKey: OBJECT_KEY)
        var urlString = "\(SCHEME)\(BUCKET_NAME).\(ENDPOINT)/\(OBJECT_KEY)"
        if let result = tk.result as? String {
            XCTAssertTrue(result.hasPrefix(urlString))
        } else {
            XCTAssertTrue(false)
        }
        
        config = OSSClientConfiguration()
        config.isPathStyleAccessEnable = true
        authProv = OSSAuthCredentialProvider(authServerUrl: OSS_STSTOKEN_URL)
        client = OSSClient(endpoint: CNAME_ENDPOINT, credentialProvider: authProv, clientConfiguration: config)
        tk = client.presignPublicURL(withBucketName: BUCKET_NAME,
                                     withObjectKey: OBJECT_KEY)
        urlString = "\(SCHEME)\(CNAME_ENDPOINT)/\(OBJECT_KEY)"
        if let result = tk.result as? String {
            XCTAssertTrue(result.hasPrefix(urlString))
        } else {
            XCTAssertTrue(false)
        }
        
        config = OSSClientConfiguration()
        config.isPathStyleAccessEnable = true
        config.cnameExcludeList = [CNAME_ENDPOINT]
        authProv = OSSAuthCredentialProvider(authServerUrl: OSS_STSTOKEN_URL)
        client = OSSClient(endpoint: CNAME_ENDPOINT, credentialProvider: authProv, clientConfiguration: config)
        tk = client.presignPublicURL(withBucketName: BUCKET_NAME,
                                     withObjectKey: OBJECT_KEY)
        urlString = "\(SCHEME)\(CNAME_ENDPOINT)/\(BUCKET_NAME)/\(OBJECT_KEY)"
        if let result = tk.result as? String {
            XCTAssertTrue(result.hasPrefix(urlString))
        } else {
            XCTAssertTrue(false)
        }
        
        config = OSSClientConfiguration()
        config.isPathStyleAccessEnable = true
        authProv = OSSAuthCredentialProvider(authServerUrl: OSS_STSTOKEN_URL)
        client = OSSClient(endpoint: CNAME_ENDPOINT, credentialProvider: authProv, clientConfiguration: config)
        tk = client.presignPublicURL(withBucketName: BUCKET_NAME,
                                     withObjectKey: OBJECT_KEY)
        urlString = "\(SCHEME)\(CNAME_ENDPOINT)/\(OBJECT_KEY)"
        if let result = tk.result as? String {
            XCTAssertTrue(result.hasPrefix(urlString))
        } else {
            XCTAssertTrue(false)
        }
    }