public async Task <int> CloneVirtualMachineAsync(int vmID, CloneVirtualMachineRequest req) { if (vmID < 1) { throw new Client.Exception.UKFastClientValidationException("Invalid virtual machine id"); } return((await this.Client.PostAsync <VirtualMachine>($"/ecloud/v1/vms/{vmID}/clone", req)).ID); }
public async Task CloneVirtualMachineAsync_ExpectedResult() { CloneVirtualMachineRequest req = new CloneVirtualMachineRequest() { Name = "testvm" }; IUKFastECloudClient client = Substitute.For <IUKFastECloudClient>(); client.PostAsync <VirtualMachine>("/ecloud/v1/vms/123/clone", req).Returns(new VirtualMachine() { ID = 123 }); var ops = new VirtualMachineOperations <VirtualMachine>(client); int vmID = await ops.CloneVirtualMachineAsync(123, req); Assert.AreEqual(123, vmID); }