All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.googlenative.testing.v1.inputs.IosTestSetupArgs Maven / Gradle / Ivy

// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.googlenative.testing.v1.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.googlenative.testing.v1.inputs.FileReferenceArgs;
import com.pulumi.googlenative.testing.v1.inputs.IosDeviceFileArgs;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * A description of how to set up an iOS device prior to running the test.
 * 
 */
public final class IosTestSetupArgs extends com.pulumi.resources.ResourceArgs {

    public static final IosTestSetupArgs Empty = new IosTestSetupArgs();

    /**
     * iOS apps to install in addition to those being directly tested.
     * 
     */
    @Import(name="additionalIpas")
    private @Nullable Output> additionalIpas;

    /**
     * @return iOS apps to install in addition to those being directly tested.
     * 
     */
    public Optional>> additionalIpas() {
        return Optional.ofNullable(this.additionalIpas);
    }

    /**
     * The network traffic profile used for running the test. Available network profiles can be queried by using the NETWORK_CONFIGURATION environment type when calling TestEnvironmentDiscoveryService.GetTestEnvironmentCatalog.
     * 
     */
    @Import(name="networkProfile")
    private @Nullable Output networkProfile;

    /**
     * @return The network traffic profile used for running the test. Available network profiles can be queried by using the NETWORK_CONFIGURATION environment type when calling TestEnvironmentDiscoveryService.GetTestEnvironmentCatalog.
     * 
     */
    public Optional> networkProfile() {
        return Optional.ofNullable(this.networkProfile);
    }

    /**
     * List of directories on the device to upload to Cloud Storage at the end of the test. Directories should either be in a shared directory (such as /private/var/mobile/Media) or within an accessible directory inside the app's filesystem (such as /Documents) by specifying the bundle ID.
     * 
     */
    @Import(name="pullDirectories")
    private @Nullable Output> pullDirectories;

    /**
     * @return List of directories on the device to upload to Cloud Storage at the end of the test. Directories should either be in a shared directory (such as /private/var/mobile/Media) or within an accessible directory inside the app's filesystem (such as /Documents) by specifying the bundle ID.
     * 
     */
    public Optional>> pullDirectories() {
        return Optional.ofNullable(this.pullDirectories);
    }

    /**
     * List of files to push to the device before starting the test.
     * 
     */
    @Import(name="pushFiles")
    private @Nullable Output> pushFiles;

    /**
     * @return List of files to push to the device before starting the test.
     * 
     */
    public Optional>> pushFiles() {
        return Optional.ofNullable(this.pushFiles);
    }

    private IosTestSetupArgs() {}

    private IosTestSetupArgs(IosTestSetupArgs $) {
        this.additionalIpas = $.additionalIpas;
        this.networkProfile = $.networkProfile;
        this.pullDirectories = $.pullDirectories;
        this.pushFiles = $.pushFiles;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(IosTestSetupArgs defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private IosTestSetupArgs $;

        public Builder() {
            $ = new IosTestSetupArgs();
        }

        public Builder(IosTestSetupArgs defaults) {
            $ = new IosTestSetupArgs(Objects.requireNonNull(defaults));
        }

        /**
         * @param additionalIpas iOS apps to install in addition to those being directly tested.
         * 
         * @return builder
         * 
         */
        public Builder additionalIpas(@Nullable Output> additionalIpas) {
            $.additionalIpas = additionalIpas;
            return this;
        }

        /**
         * @param additionalIpas iOS apps to install in addition to those being directly tested.
         * 
         * @return builder
         * 
         */
        public Builder additionalIpas(List additionalIpas) {
            return additionalIpas(Output.of(additionalIpas));
        }

        /**
         * @param additionalIpas iOS apps to install in addition to those being directly tested.
         * 
         * @return builder
         * 
         */
        public Builder additionalIpas(FileReferenceArgs... additionalIpas) {
            return additionalIpas(List.of(additionalIpas));
        }

        /**
         * @param networkProfile The network traffic profile used for running the test. Available network profiles can be queried by using the NETWORK_CONFIGURATION environment type when calling TestEnvironmentDiscoveryService.GetTestEnvironmentCatalog.
         * 
         * @return builder
         * 
         */
        public Builder networkProfile(@Nullable Output networkProfile) {
            $.networkProfile = networkProfile;
            return this;
        }

        /**
         * @param networkProfile The network traffic profile used for running the test. Available network profiles can be queried by using the NETWORK_CONFIGURATION environment type when calling TestEnvironmentDiscoveryService.GetTestEnvironmentCatalog.
         * 
         * @return builder
         * 
         */
        public Builder networkProfile(String networkProfile) {
            return networkProfile(Output.of(networkProfile));
        }

        /**
         * @param pullDirectories List of directories on the device to upload to Cloud Storage at the end of the test. Directories should either be in a shared directory (such as /private/var/mobile/Media) or within an accessible directory inside the app's filesystem (such as /Documents) by specifying the bundle ID.
         * 
         * @return builder
         * 
         */
        public Builder pullDirectories(@Nullable Output> pullDirectories) {
            $.pullDirectories = pullDirectories;
            return this;
        }

        /**
         * @param pullDirectories List of directories on the device to upload to Cloud Storage at the end of the test. Directories should either be in a shared directory (such as /private/var/mobile/Media) or within an accessible directory inside the app's filesystem (such as /Documents) by specifying the bundle ID.
         * 
         * @return builder
         * 
         */
        public Builder pullDirectories(List pullDirectories) {
            return pullDirectories(Output.of(pullDirectories));
        }

        /**
         * @param pullDirectories List of directories on the device to upload to Cloud Storage at the end of the test. Directories should either be in a shared directory (such as /private/var/mobile/Media) or within an accessible directory inside the app's filesystem (such as /Documents) by specifying the bundle ID.
         * 
         * @return builder
         * 
         */
        public Builder pullDirectories(IosDeviceFileArgs... pullDirectories) {
            return pullDirectories(List.of(pullDirectories));
        }

        /**
         * @param pushFiles List of files to push to the device before starting the test.
         * 
         * @return builder
         * 
         */
        public Builder pushFiles(@Nullable Output> pushFiles) {
            $.pushFiles = pushFiles;
            return this;
        }

        /**
         * @param pushFiles List of files to push to the device before starting the test.
         * 
         * @return builder
         * 
         */
        public Builder pushFiles(List pushFiles) {
            return pushFiles(Output.of(pushFiles));
        }

        /**
         * @param pushFiles List of files to push to the device before starting the test.
         * 
         * @return builder
         * 
         */
        public Builder pushFiles(IosDeviceFileArgs... pushFiles) {
            return pushFiles(List.of(pushFiles));
        }

        public IosTestSetupArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy