public void ExcludesListedVersions()
            {
                var versions = new[]
                {
                    new FilteredVersionProperties("1.0.0", listed: true),
                    new FilteredVersionProperties("1.0.1", listed: false),
                };

                var list = new FilteredVersionList(versions);

                Assert.Equal(new[] { "1.0.0" }, list.GetLatestVersionInfo().ListedFullVersions);
            }
            public void UnlistedIsNotLatest()
            {
                var versions = new[]
                {
                    new FilteredVersionProperties("1.0.0", listed: true),
                    new FilteredVersionProperties("1.0.1", listed: false),
                };

                var list = new FilteredVersionList(versions);

                Assert.Equal("1.0.0", list.GetLatestVersionInfo().FullVersion);
            }
            public void OrdersBySemVer()
            {
                var versions = new[]
                {
                    new FilteredVersionProperties("10.0.0", listed: true),
                    new FilteredVersionProperties("10.0.0-alpha", listed: true),
                    new FilteredVersionProperties("10.0.0-beta.10", listed: true),
                    new FilteredVersionProperties("10.0.0-beta.2", listed: true),
                    new FilteredVersionProperties("10.0.1", listed: true),
                    new FilteredVersionProperties("2.0.0", listed: true),
                };

                var list = new FilteredVersionList(versions);

                Assert.Equal(
                    new[] { "2.0.0", "10.0.0-alpha", "10.0.0-beta.2", "10.0.0-beta.10", "10.0.0", "10.0.1" },
                    list.GetLatestVersionInfo().ListedFullVersions);
            }