private static PluginListingsProvider PluginListingsProvider(
            IDataDirectoryProvider dataDirectory,
            IGameReleaseContext gameContext,
            IPluginListingsPathProvider listingsPathProvider,
            bool throwOnMissingMods,
            IFileSystem fs)
        {
            var pluginListingParser = new PluginListingsParser(
                new ModListingParser(
                    new HasEnabledMarkersProvider(gameContext)));
            var provider = new PluginListingsProvider(
                gameContext,
                new TimestampedPluginListingsProvider(
                    new TimestampAligner(fs),
                    new TimestampedPluginListingsPreferences()
            {
                ThrowOnMissingMods = throwOnMissingMods
            },
                    new PluginRawListingsReader(
                        fs,
                        pluginListingParser),
                    dataDirectory,
                    listingsPathProvider),
                new EnabledPluginListingsProvider(
                    new PluginRawListingsReader(
                        fs,
                        pluginListingParser),
                    listingsPathProvider));

            return(provider);
        }
        public void CommentsWithNoEntry()
        {
            var parser = new PluginListingsParser(
                new ModListingParser(
                    new HasEnabledMarkersInjection(true)));
            var result = parser.Parse(GetStream(@"*ModA.esm
#ModB.esp
*ModC.esp"))
                         .ToList();

            result.Should().Equal(
                new ModListing("ModA.esm", true),
                new ModListing("ModC.esp", true));
        }