public async Task CreateAndDelete()
        {
            using MockContext context = MockContext.Start(GetType());
            Initialize(context);
            var           testName = "unitTestingDPSCertificatesCreateAndDelete";
            ResourceGroup rg       = await GetResourceGroupAsync(testName).ConfigureAwait(false);

            ProvisioningServiceDescription service = await GetServiceAsync(testName, rg.Name).ConfigureAwait(false);

            //add a cert
            await _provisioningClient.DpsCertificate
            .CreateOrUpdateAsync(
                rg.Name,
                testName,
                Constants.Certificate.Name,
                null,
                Constants.Certificate.Content)
            .ConfigureAwait(false);

            CertificateListDescription certificateList = await _provisioningClient.DpsCertificate
                                                         .ListAsync(rg.Name, testName)
                                                         .ConfigureAwait(false);

            certificateList.Value.Should().Contain(x => x.Name == Constants.Certificate.Name);

            // verify certificate details
            CertificateResponse certificateDetails = certificateList.Value.FirstOrDefault(x => x.Name == Constants.Certificate.Name);

            certificateDetails.Should().NotBeNull();
            certificateDetails.Properties.Subject.Should().Be(Constants.Certificate.Subject);
            certificateDetails.Properties.Thumbprint.Should().Be(Constants.Certificate.Thumbprint);

            // can get a verification code
            VerificationCodeResponse verificationCodeResponse = await _provisioningClient.DpsCertificate
                                                                .GenerateVerificationCodeAsync(
                certificateDetails.Name,
                certificateDetails.Etag,
                rg.Name,
                service.Name)
                                                                .ConfigureAwait(false);

            verificationCodeResponse.Properties.Should().NotBeNull();
            verificationCodeResponse.Properties.VerificationCode.Should().NotBeNullOrEmpty();

            // delete certificate
            await _provisioningClient.DpsCertificate
            .DeleteAsync(
                rg.Name,
                verificationCodeResponse.Etag,
                service.Name,
                Constants.Certificate.Name)
            .ConfigureAwait(false);

            certificateList = await _provisioningClient.DpsCertificate
                              .ListAsync(rg.Name, testName)
                              .ConfigureAwait(false);

            certificateList.Value.Should().NotContain(x => x.Name == Constants.Certificate.Name);
        }
        private void GetIotDpsCertificateVerificationCode()
        {
            VerificationCodeResponse verificationCodeResponse = this.IotDpsClient.DpsCertificate.GenerateVerificationCode(this.CertificateName, this.Etag, this.ResourceGroupName, this.Name);

            this.WriteObject(IotDpsUtils.ToPSVerificationCodeResponse(verificationCodeResponse));
        }
Пример #3
0
 public static PSVerificationCodeResponse ToPSVerificationCodeResponse(VerificationCodeResponse verificationCodeResponse)
 {
     return(ConvertObject <VerificationCodeResponse, PSVerificationCodeResponse>(verificationCodeResponse));
 }