/
aprogrammer
/
dotnet-docs
Обзор
Документация
Войти
/
aprogrammer
/
dotnet-docs
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
docs/azure/sdk/snippets/unit-testing/ResourceManager/NonLibrary/MockMockableComputeResourceGroupResource.cs
46 строк
2 KB
Dapeng Zhang
Add instructions to mock extension methods for resource manager SDKs (#36962)
04 дек 2023, 18:23
Не верифицирован
04 дек 2023, 18:23
a3f0c13
Код
Авторство
О чём код?
using Azure.Core; namespace UnitTestingSampleApp.ResourceManager.NonLibrary; public sealed class MockMockableComputeResourceGroupResource : MockableComputeResourceGroupResource { private VirtualMachineCollection _virtualMachineCollection; public MockMockableComputeResourceGroupResource(VirtualMachineCollection virtualMachineCollection) { _virtualMachineCollection = virtualMachineCollection; } public override VirtualMachineCollection GetVirtualMachines() { return _virtualMachineCollection; } } public sealed class MockResourceGroupResource : ResourceGroupResource { private readonly MockableComputeResourceGroupResource _mockableComputeResourceGroupResource; public MockResourceGroupResource(VirtualMachineCollection virtualMachineCollection) { _mockableComputeResourceGroupResource = new MockMockableComputeResourceGroupResource(virtualMachineCollection); } internal MockResourceGroupResource(ArmClient client, ResourceIdentifier id) : base(client, id) {} public override T GetCachedClient<T>(Func<ArmClient, T> factory) where T : class { if (typeof(T) == typeof(MockableComputeResourceGroupResource)) return _mockableComputeResourceGroupResource as T; return base.GetCachedClient(factory); } } public sealed class MockVirtualMachineCollection : VirtualMachineCollection { public MockVirtualMachineCollection() {} internal MockVirtualMachineCollection(ArmClient client, ResourceIdentifier id) : base(client, id) {} }