public void ToDependencySets_EmptySet()
        {
            var results = PackageDependencySetConverter.Parse(new[] { "::net40" }).ToList();

            Assert.AreEqual(1, results.Count());
            Assert.AreEqual("net40", VersionUtility.GetShortFrameworkName(results[0].TargetFramework));
            Assert.AreEqual(0, results[0].Dependencies.Count());
        }
        public void ToDependencySets()
        {
            var results = PackageDependencySetConverter.Parse(new[] { "id1", "id3::net35", "id2:1.0", "id4:[1.1,2.0):net20" }).ToList();

            Assert.AreEqual(3, results.Count());

            results.Sort((a, b) => System.String.Compare(a.TargetFramework.FullNameOrBlank(), b.TargetFramework.FullNameOrBlank(), System.StringComparison.Ordinal));

            Assert.Null(results[0].TargetFramework);
            Assert.AreEqual(new[] { "id1", "id2" }, results[0].Dependencies.Select(d => d.Id));
            Assert.That(results[0].Dependencies.Select(d => d.VersionSpec != null ? d.VersionSpec.ToString() : null), Is.EqualTo(new[] { null, "1.0" }));

            Assert.AreEqual("net20", VersionUtility.GetShortFrameworkName(results[1].TargetFramework));
            Assert.AreEqual(new[] { "id4" }, results[1].Dependencies.Select(d => d.Id));
            Assert.That(results[1].Dependencies.Select(d => d.VersionSpec != null ? d.VersionSpec.ToString() : null), Is.EqualTo(new[] { "[1.1, 2.0)" }));

            Assert.AreEqual("net35", VersionUtility.GetShortFrameworkName(results[2].TargetFramework));
            Assert.AreEqual(new[] { "id3" }, results[2].Dependencies.Select(d => d.Id));
            Assert.AreEqual(new IVersionSpec[] { null }, results[2].Dependencies.Select(d => d.VersionSpec));
        }