public RssDownloaderTests() { _feedReader = Substitute.For <IFeedReader>(); _articleReader = Substitute.For <IArticleReader>(); _repository = Substitute.For <ISyndicationItemRepository>(); _downloader = new RssDownloader(_feedReader, _articleReader, _repository); }
public DefaultModule(IArticleReader articleReader, IRouteLocatorProvider routeLocatorProvider, IViewLocationProvider viewLocationProvider) { _articleReader = articleReader; _routeLocatorProvider = routeLocatorProvider; _viewLocationProvider = viewLocationProvider; SetupDateRoutes(); SetupStaticRoutes(); }
public Program(ProgramArguments args, ILogger logger, IArticleReader reader, IArticleRenderer renderer, IDeCorrespondentResources decorrespondent, ILastDatasource lastDs, IEReaderSender kindle, INotificationSender summarySender, int maxAantalArticles) { this.args = args; this.logger = logger; this.reader = reader; this.renderer = renderer; this.decorrespondent = decorrespondent; this.lastDs = lastDs; this.kindle = kindle; this.summarySender = summarySender; this.maxAantalArticles = maxAantalArticles; }
public BlogModule(IArticleReader articleReader) : base("/blog") { Get["/{firstname}-{surname}"] = parameters => { string author = string.Concat(parameters.firstname, " ", parameters.surname); PageModel.Meta.Articles = articleReader.ArticlesByAuthor(author).Where( b => b.ResourceName.Contains(@"blog") ); PageModel.Meta.Author = author; return Negotiate .WithView("_layout/bloggare") .WithModel(PageModel) .WithMediaRangeModel("application/json", PageModel); }; }
public HomeModule(IArticleReader articleReader) { Get["/"] = parameters => { PageModel.Meta.HomeArticle = articleReader.ArticleById("home"); PageModel.Meta.AboutArticle = articleReader.ArticleById("about"); PageModel.Meta.CultureArticle = articleReader.ArticleById("culture"); PageModel.Meta.CultureArticles = articleReader.ArticlesByCategory("culture").Where( a => a.ResourceName.Count( r => r == '/' ) > 0); PageModel.Meta.ServicesArticle = articleReader.ArticleById("services"); PageModel.Meta.ServicesArticles = articleReader.ArticlesByCategory("services").Where( a => a.ResourceName.Count( r => r == '/' ) > 0); PageModel.Meta.SalesArticle = articleReader.ArticleById("sales"); PageModel.Meta.SalesArticles = articleReader.ArticlesByCategory("sales").Where(a => a.ResourceName.Count(r => r == '/') > 0); PageModel.Meta.ContactArticle = articleReader.ArticleById("contact"); PageModel.Meta.CrewArticle = articleReader.ArticleById("crew"); PageModel.Meta.LatestNews = articleReader.ArticlesByCategory("nyheter").Take(2); return Negotiate .WithView("_layout/home") .WithModel(PageModel) .WithMediaRangeModel("application/json", PageModel); }; }
public TagsModule(IArticleReader articleReader) : base("/api") { _articleReader = articleReader; Get["/tags"] = o => { if (Request.Query.q.HasValue) { string query = HttpUtility.UrlDecode(Request.Query.q); var baked = query.Split(','); var result = _articleReader.ArticlesByTags(baked); if (!result.Any()) return HttpStatusCode.NotFound; return Negotiate .WithStatusCode(HttpStatusCode.OK) .WithModel(result); } return _articleReader.TagCloud(); }; }
public SearchModule(IArticleReader articleReader) { Get["/search"] = o => { PageModel.Meta.QueryResult = default(IEnumerable<ArticleModel>); PageModel.Meta.Query = string.Empty; if (Request.Query.q.HasValue && !string.IsNullOrEmpty(Request.Query.q)) { string query = HttpUtility.UrlDecode(Request.Query.q); PageModel.Meta.QueryResult = articleReader.ArticlesByFreeText(query); PageModel.Meta.Query = query; } PageModel.Meta.TagCloud = articleReader.TagCloud(); return Negotiate .WithView("_layout/search") .WithModel(PageModel) .WithMediaRangeModel("application/json", PageModel); }; }
public RssDownloader(IFeedReader feedReader, IArticleReader articleReader, ISyndicationItemRepository itemRepository) { _feedReader = feedReader; _articleReader = articleReader; _itemRepository = itemRepository; }
public ProgramWrapper(LogWrapper logger, WrappedResources resources, IArticleReader articleReader, IArticleRenderer articleRenderer, IDeCorrespondentResources reader, IEReaderSender sender, INotificationSender summarySender, DateTime? last) { this.logger = logger; wrappedResources = resources; LastDs = new MemoryLastDatasource(last); Program = new DeCorrespondent.Program(new DeCorrespondent.Program.ProgramArguments(true), logger, articleReader, articleRenderer, reader, LastDs, sender, summarySender, 20); }