public async Task SecurityGroupRuleTest()
        {
            Trace.WriteLine("Creating security group...");
            var securityGroup = await _testData.CreateSecurityGroup();
            
            Trace.WriteLine("Adding a rule...");
            var ruleDefinition = new SecurityGroupRuleDefinition(IPProtocol.TCP, 22, 22, "0.0.0.0/24");
            var rule = await securityGroup.AddRuleAsync(ruleDefinition);

            Trace.WriteLine("Verifying rule matches requested definition...");
            Assert.NotNull(rule);
            Assert.Equal(ruleDefinition.Protocol, rule.Protocol);
            Assert.Equal(ruleDefinition.ToPort, rule.ToPort);
            Assert.Equal(ruleDefinition.FromPort, rule.FromPort);
            Assert.Equal(ruleDefinition.CIDR, rule.CIDR);
            Assert.Equal(securityGroup.Id, rule.GroupId);

            Trace.WriteLine("Deleting the rule...");
            await rule.DeleteAsync();

            securityGroup = await _compute.GetSecurityGroupAsync(securityGroup.Id);
            Assert.DoesNotContain(securityGroup.Rules, x => x.Id == rule.Id);
        }
Exemple #2
0
 /// <inheritdoc cref="SecurityGroup.AddRuleAsync"/>
 public static SecurityGroupRule AddRule(this SecurityGroup securityGroup, SecurityGroupRuleDefinition rule)
 {
     return(securityGroup.AddRuleAsync(rule).ForceSynchronous());
 }
 /// <inheritdoc cref="SecurityGroup.AddRuleAsync"/>
 public static SecurityGroupRule AddRule(this SecurityGroup securityGroup, SecurityGroupRuleDefinition rule)
 {
     return securityGroup.AddRuleAsync(rule).ForceSynchronous();
 }