public void TestValidateInputsSpecificToExportByResourceGroup() { var resourceGroupName = TestUtilities.GenerateName("SdkRg"); var sourceAccountsList = GetSourceAccountsList(); var dataExportDetails = new List <DataExportDetails>(); TransferConfiguration transferCofiguration = new TransferConfiguration { TransferConfigurationType = TransferConfigurationType.TransferAll, TransferAllDetails = new TransferConfigurationTransferAllDetails { Include = new TransferAllDetails { DataAccountType = DataAccountType.StorageAccount, TransferAllBlobs = true, TransferAllFiles = true } } }; dataExportDetails.Add(new DataExportDetails(transferCofiguration, sourceAccountsList.FirstOrDefault())); var validateInput = new CreateJobValidations { IndividualRequestDetails = new List <ValidationInputRequest>() { new DataTransferDetailsValidationRequest() { TransferType = TransferType.ExportFromAzure, DataExportDetails = dataExportDetails }, new SkuAvailabilityValidationRequest() { DeviceType = SkuName.DataBox, TransferType = TransferType.ExportFromAzure, Country = "US", Location = "westus" }, } }; var validateResponse = this.Client.Service.ValidateInputsByResourceGroup(resourceGroupName, TestConstants.DefaultResourceLocation, validateInput); Assert.True(validateResponse != null, "Call for ValidateInputs is successful."); Assert.True(validateResponse.Status == OverallValidationStatus.AllValidToProceed); ValidateIndividualValidateResponse(validateResponse.IndividualResponseDetails); }
public void TestExportJobCRUDOperations() { var resourceGroupName = TestUtilities.GenerateName("SdkRg"); var jobName = TestUtilities.GenerateName("SdkJob"); ContactDetails contactDetails = GetDefaultContactDetails(); ShippingAddress shippingAddress = GetDefaultShippingAddress(); Sku sku = GetDefaultSku(); var sourceAccountsList = GetSourceAccountsList(); JobDetails jobDetails = new DataBoxJobDetails { ContactDetails = contactDetails, ShippingAddress = shippingAddress }; jobDetails.DataExportDetails = new List <DataExportDetails>(); TransferConfiguration transferCofiguration = new TransferConfiguration { TransferConfigurationType = TransferConfigurationType.TransferAll, TransferAllDetails = new TransferConfigurationTransferAllDetails { Include = new TransferAllDetails { DataAccountType = DataAccountType.StorageAccount, TransferAllBlobs = true, TransferAllFiles = true } } }; jobDetails.DataExportDetails.Add(new DataExportDetails(transferCofiguration, sourceAccountsList.FirstOrDefault())); var jobResource = new JobResource { Sku = sku, Location = TestConstants.DefaultResourceLocation, Details = jobDetails, TransferType = TransferType.ExportFromAzure }; this.RMClient.ResourceGroups.CreateOrUpdate( resourceGroupName, new ResourceGroup { Location = TestConstants.DefaultResourceLocation }); var job = this.Client.Jobs.Create(resourceGroupName, jobName, jobResource); ValidateJobWithoutDetails(jobName, sku, job); Assert.Equal(StageName.DeviceOrdered, job.Status); var getJob = this.Client.Jobs.Get(resourceGroupName, jobName, TestConstants.Details); ValidateJobWithoutDetails(jobName, sku, getJob); ValidateJobDetails(contactDetails, shippingAddress, getJob, JobDeliveryType.NonScheduled); Assert.Equal(StageName.DeviceOrdered, job.Status); contactDetails.ContactName = "Update Job"; getJob.Details.ContactDetails = contactDetails; var Details = new UpdateJobDetails { ContactDetails = getJob.Details.ContactDetails, ShippingAddress = getJob.Details.ShippingAddress }; var updateParams = new JobResourceUpdateParameter { Details = Details }; var updateJob = this.Client.Jobs.Update(resourceGroupName, jobName, updateParams); ValidateJobWithoutDetails(jobName, sku, updateJob); Assert.Equal(StageName.DeviceOrdered, updateJob.Status); getJob = this.Client.Jobs.Get(resourceGroupName, jobName, TestConstants.Details); ValidateJobWithoutDetails(jobName, sku, getJob); ValidateJobDetails(contactDetails, shippingAddress, getJob, JobDeliveryType.NonScheduled); Assert.Equal(StageName.DeviceOrdered, getJob.Status); var jobList = this.Client.Jobs.List(); Assert.NotNull(jobList); jobList = this.Client.Jobs.ListByResourceGroup(resourceGroupName); Assert.NotNull(jobList); this.Client.Jobs.Cancel(resourceGroupName, jobName, "CancelTest"); getJob = this.Client.Jobs.Get(resourceGroupName, jobName, TestConstants.Details); Assert.Equal(StageName.Cancelled, getJob.Status); while (!string.IsNullOrWhiteSpace(getJob.Details.ContactDetails.ContactName)) { Wait(TimeSpan.FromMinutes(5)); getJob = this.Client.Jobs.Get(resourceGroupName, jobName, TestConstants.Details); } this.Client.Jobs.Delete(resourceGroupName, jobName); }