public void ExtractIdsFromInvalidLinkThrowsContractException()
        {
            var rel = "invalid-rel";

            var vdcId  = 42;
            var vappId = 8;
            var vmId   = 15;

            var href = string.Format(AbiquoUriSuffixes.VIRTUALMACHINE_BY_VIRTUALDATACENTER_ID_AND_VIRTUALAPLLIANCE_ID_AND_VIRTUALMACHINE_ID, vdcId, vappId, vmId);

            var link = new LinkBuilder()
                       .BuildRel(rel)
                       .BuildHref(ABIQUO_API_BASE_URI + href)
                       .BuildTitle("ABQ_a81a8033-eb56-4cf1-8d7d-6355bb3b5157")
                       .BuildType("application/vnd.abiquo.virtualmachine+json")
                       .GetLink();

            VirtualMachineExtensions.ExtractIds(link);
        }
        public void ExtractIdsFromEditLinksSucceed()
        {
            var vdcId  = 42;
            var vappId = 8;
            var vmId   = 15;

            var href = string.Format(AbiquoUriSuffixes.VIRTUALMACHINE_BY_VIRTUALDATACENTER_ID_AND_VIRTUALAPLLIANCE_ID_AND_VIRTUALMACHINE_ID, vdcId, vappId, vmId);

            var link = new LinkBuilder()
                       .BuildRel(AbiquoRelations.EDIT)
                       .BuildHref(ABIQUO_API_BASE_URI + href)
                       .BuildTitle("ABQ_a81a8033-eb56-4cf1-8d7d-6355bb3b5157")
                       .BuildType("application/vnd.abiquo.virtualmachine+json")
                       .GetLink();

            var result = VirtualMachineExtensions.ExtractIds(link);

            Assert.IsNotNull(result);
            Assert.AreEqual(vdcId, result.Item1);
            Assert.AreEqual(vappId, result.Item2);
            Assert.AreEqual(vmId, result.Item3);
        }
        public void ExtractIdsFromNullLinkThrowsContractException()
        {
            var link = default(Link);

            VirtualMachineExtensions.ExtractIds(link);
        }
        public void ExtractIdsFromNullVirtualMachineThrowsContractException()
        {
            var virtualMachine = default(VirtualMachine);

            VirtualMachineExtensions.ExtractIds(virtualMachine);
        }