Пример #1
0
        public override void Execute()
        {
            AzureResourceManagerClientOptions options1 = new AzureResourceManagerClientOptions();
            AzureResourceManagerClientOptions options2 = new AzureResourceManagerClientOptions();
            var dummyPolicy1 = new dummyPolicy();
            var dummyPolicy2 = new dummyPolicy2();

            options1.AddPolicy(dummyPolicy1, HttpPipelinePosition.PerCall);
            options2.AddPolicy(dummyPolicy2, HttpPipelinePosition.PerCall);
            var client1 = new AzureResourceManagerClient(options1);
            var client2 = new AzureResourceManagerClient(options2);

            Console.WriteLine("-----Client 1-----");
            foreach (var sub in client1.GetSubscriptionContainer().List())
            {
                Console.WriteLine($"Found {sub.Data.DisplayName}");
            }

            Console.WriteLine("-----Client 2-----");
            foreach (var sub in client2.GetSubscriptionContainer().List())
            {
                Console.WriteLine($"Found {sub.Data.DisplayName}");
            }

            Debug.Assert(dummyPolicy1.numMsgGot * 2 == dummyPolicy2.numMsgGot);
            Console.WriteLine("\nPASSED\n");
        }
        public async Task TestClientContextPolicy()
        {
            ArmClientOptions options1 = new ArmClientOptions();
            var dummyPolicy1          = new dummyPolicy();
            var dummyPolicy2          = new dummyPolicy2();

            options1.AddPolicy(dummyPolicy1, HttpPipelinePosition.PerCall);
            var client1 = GetArmClient(options1);

            Console.WriteLine("-----Client 1-----");
            _ = await(await client1.GetDefaultSubscriptionAsync().ConfigureAwait(false)).GetResourceGroups().Construct(AzureLocation.WestUS2).CreateOrUpdateAsync(Recording.GenerateAssetName("testrg"));
            Assert.AreEqual(2, dummyPolicy1.numMsgGot);

            options1.AddPolicy(dummyPolicy2, HttpPipelinePosition.PerCall);

            _ = await(await client1.GetDefaultSubscriptionAsync().ConfigureAwait(false)).GetResourceGroups().Construct(AzureLocation.WestUS2).CreateOrUpdateAsync(Recording.GenerateAssetName("test2Rg-"));

            Assert.AreEqual(3, dummyPolicy1.numMsgGot);
            Assert.AreEqual(0, dummyPolicy2.numMsgGot);
        }