コード例 #1
0
        public async Task DnsUpdateARecord()
        {
            var namespaceName = Recording.GenerateAssetName("sdk-RecordSet");
            var aRecords      = new ChangeTrackingList <ARecord>
            {
                new ARecord {
                    Ipv4Address = "123.32.1.0"
                }
            };
            var recordName     = "a_update_record";
            var testARecordSet = new RecordSet("test_id", recordName, "A", null, this.metadata, 60, null, null, null, aRecords, this.dummyAaaaRecords, this.dummyMxRecords,
                                               this.dummyNsRecords, this.dummyPtrRecords, this.dummySrvRecords, this.dummyTxtRecords, null, null, this.dummyCaaRecords);

            var createRecordSetResponse = await RecordSetsOperations.CreateOrUpdateAsync(resourceGroup, this.zoneNameForList, recordName, RecordType.A, testARecordSet);

            Assert.True(Helper.AreEqual(createRecordSetResponse, testARecordSet, ignoreEtag: true));
            var getResponseARecord = await RecordSetsOperations.GetAsync(this.resourceGroup, this.zoneNameForList, recordName, RecordType.A);

            var aRecord = getResponseARecord.Value;

            aRecord.TTL = 120; //update TTL from 60 to 120
            var updateResponse = await RecordSetsOperations.CreateOrUpdateAsync(this.resourceGroup, this.zoneNameForList, recordName, RecordType.A, aRecord);

            Assert.AreEqual(updateResponse.Value.TTL, 120);
            var deleteRecordSetResponse = await RecordSetsOperations.DeleteAsync(resourceGroup, this.zoneNameForList, recordName, RecordType.A);

            Assert.NotNull(deleteRecordSetResponse);
        }
コード例 #2
0
        public async Task DnsRecordSetUpdateSoa()
        {
            var namespaceName = Recording.GenerateAssetName("sdk-RecordSet");
            var ipv6Addr      = "1:1:1:1:1:ffff:783f:e6dc";
            var AaaaRecords   = new ChangeTrackingList <AaaaRecord>
            {
                new AaaaRecord {
                    Ipv6Address = ipv6Addr
                },
            };
            var recordName     = "soa_record";
            var testARecordSet = new RecordSet("test_id", recordName, "Aaaa", null, this.metadata, 3600, null, null, null, this.dummyARecords, AaaaRecords, this.dummyMxRecords,
                                               this.dummyNsRecords, this.dummyPtrRecords, this.dummySrvRecords, this.dummyTxtRecords, null, null, this.dummyCaaRecords);

            var createRecordSetResponse = await RecordSetsOperations.CreateOrUpdateAsync(resourceGroup, this.zoneNameForList, recordName, RecordType.Aaaa, testARecordSet);

            Assert.NotNull(createRecordSetResponse);
            var getResponseSoa = await RecordSetsOperations.GetAsync(this.resourceGroup, this.zoneNameForList, "@", RecordType.SOA);

            var soaRecord = getResponseSoa.Value;

            soaRecord.SoaRecord.ExpireTime  = 123;
            soaRecord.SoaRecord.MinimumTtl  = 1234;
            soaRecord.SoaRecord.RefreshTime = 12345;
            soaRecord.SoaRecord.RetryTime   = 123456;
            var updateResponse = await RecordSetsOperations.CreateOrUpdateAsync(this.resourceGroup, this.zoneNameForList, "@", RecordType.SOA, soaRecord);

            Assert.True(Helper.AreEqual(updateResponse, soaRecord, ignoreEtag: true));
            var deleteRecordSetResponse = await RecordSetsOperations.DeleteAsync(resourceGroup, this.zoneNameForList, recordName, RecordType.A);
        }
コード例 #3
0
        public async Task DnsUpdateARecordMultiRecord()
        {
            var namespaceName = Recording.GenerateAssetName("sdk-RecordSet");
            var aRecords      = new ChangeTrackingList <ARecord>
            {
                new ARecord {
                    Ipv4Address = "123.32.1.0"
                }
            };
            var recordName     = "a_multi_record";
            var testARecordSet = new RecordSet("test_id", recordName, "A", null, this.metadata, 60, null, null, null, aRecords, this.dummyAaaaRecords, this.dummyMxRecords,
                                               this.dummyNsRecords, this.dummyPtrRecords, this.dummySrvRecords, this.dummyTxtRecords, null, null, this.dummyCaaRecords);

            var createRecordSetResponse = await RecordSetsOperations.CreateOrUpdateAsync(resourceGroup, this.zoneNameForList, recordName, RecordType.A, testARecordSet);

            Assert.True(Helper.AreEqual(createRecordSetResponse, testARecordSet, ignoreEtag: true));
            var getResponseARecord = await RecordSetsOperations.GetAsync(this.resourceGroup, this.zoneNameForList, recordName, RecordType.A);

            var aRecord = getResponseARecord.Value;

            aRecord.TTL = 120; //update TTL from 60 to 120
            aRecord.ARecords.Clear();
            var aList = new List <ARecord>
            {
                new ARecord {
                    Ipv4Address = "123.32.1.0"
                },
                new ARecord {
                    Ipv4Address = "101.10.0.1"
                },
                new ARecord {
                    Ipv4Address = "22.33.44.55"
                },
            };

            ((List <ARecord>)aRecord.ARecords).AddRange(aList);
            var updateResponse = await RecordSetsOperations.CreateOrUpdateAsync(this.resourceGroup, this.zoneNameForList, recordName, RecordType.A, aRecord);

            var updatedRecords = updateResponse.Value;

            Assert.AreEqual(updatedRecords.TTL, 120);
            for (int i = 0; i < aList.Count; i++)
            {
                Assert.True(updatedRecords.ARecords[i].Ipv4Address == aList[i].Ipv4Address);
            }
            Assert.False(string.IsNullOrWhiteSpace(updatedRecords.Etag));
            var deleteRecordSetResponse = await RecordSetsOperations.DeleteAsync(resourceGroup, this.zoneNameForList, recordName, RecordType.A);

            Assert.NotNull(deleteRecordSetResponse);
        }