Пример #1
0
        public void AttachNullSource()
        {
            var factory = new NewsApiEventFactory(new[]
            {
                new NewsApiSource("source A", "", "", "", "", "lang A", ""),
            });

            var article1 = new NewsApiArticle(new NewsApiSourceShort("source B", ""), "", "", "", "", "", null);
            var event1   = factory.MakeEvent(article1, "");

            Assert.AreEqual(null, event1.Language);
        }
Пример #2
0
        public void AttachId()
        {
            var factory = new NewsApiEventFactory(new[]
            {
                new NewsApiSource("", "source A", "", "", "", "", ""),
            });

            var article1 = new NewsApiArticle(new NewsApiSourceShort("", "source A"), "", "", "", "", "", null);
            var article2 = new NewsApiArticle(new NewsApiSourceShort("", "source A"), "", "", "", "", "", null);
            var event1   = factory.MakeEvent(article1, "");
            var event2   = factory.MakeEvent(article2, "");

            Assert.AreEqual(0, event1.Id);
            Assert.AreEqual(1, event2.Id);
        }
Пример #3
0
        public override void InstallBindings()
        {
            var io      = new NewsApiOfflineCopy("tmp");
            var factory = new NewsApiEventFactory(io.ReadSources());
            var source  = new NewsApiEventSource(factory).AddTo(_disposables);

            // Load offline news into source
            var countries = (NewsApiCountry[])Enum.GetValues(typeof(NewsApiCountry));

            foreach (var country in countries)
            {
                var countryStr      = country.ToString();
                var countryArticles = io.ReadArticles(countryStr);
                source.SetArticles(countryStr, countryArticles);
            }

            var filter     = new EventThumbnailFilter();
            var repository = new FilteredEventRepository(source, filter);

            Container.Bind <IEventRepository>().FromInstance(repository);
        }