public ThreadSettings GetForumThreadSettings()
        {
            var            settings       = Awful.Services.SettingsService.Instance;
            ThreadSettings threadSettings = new ThreadSettings();

            threadSettings.InfinitePageScrolling = settings.InfinitePageScrolling;
            threadSettings.ShowEmbeddedGifv      = settings.ShowEmbeddedGifv;
            threadSettings.ShowEmbeddedVideo     = settings.ShowEmbeddedVideo;
            threadSettings.ShowEmbeddedTweets    = settings.ShowEmbeddedTweets;
            threadSettings.AutoplayGif           = settings.AutoplayGif;
            threadSettings.Theme = GetTheme();
            return(threadSettings);
        }
        public void builds_a_schedule_by_threads()
        {
            var settings = new ThreadSettings
            {
                Count = 7
            };

            var channelNode = new ChannelNode();
            new ByThreadScheduleMaker<ThreadSettings>(x => x.Count)
                .As<ISettingsAware>()
                .ApplySettings(settings, channelNode);

            channelNode.Scheduler.ShouldBeOfType<ThreadScheduler>()
                .ThreadCount.ShouldEqual(7);
        }
        public void builds_a_schedule_by_task()
        {
            var settings = new ThreadSettings
            {
                Count = 5
            };

            var channelNode = new ChannelNode();
            new ByTaskScheduleMaker<ThreadSettings>(x => x.Count)
                .As<ISettingsAware>()
                .ApplySettings(settings, channelNode);

            channelNode.Scheduler.ShouldBeOfType<TaskScheduler>()
                .TaskCount.ShouldBe(5);
        }
        public void builds_a_schedule_by_threads()
        {
            var settings = new ThreadSettings
            {
                Count = 7
            };

            var channelNode = new ChannelNode();

            new ByThreadScheduleMaker <ThreadSettings>(x => x.Count)
            .As <ISettingsAware>()
            .ApplySettings(settings, channelNode);

            channelNode.Scheduler.ShouldBeOfType <ThreadScheduler>()
            .ThreadCount.ShouldBe(7);
        }
        public void builds_a_schedule_by_task()
        {
            var settings = new ThreadSettings
            {
                Count = 5
            };

            var channelNode = new ChannelNode();

            new ByTaskScheduleMaker <ThreadSettings>(x => x.Count)
            .As <ISettingsAware>()
            .ApplySettings(settings, channelNode);

            channelNode.Scheduler.ShouldBeOfType <TaskScheduler>()
            .TaskCount.ShouldEqual(5);
        }