Пример #1
0
        public void LoadBadURL()
        {
            var ds = new dummyScreen();
            var t  = new StartPageViewModel(ds);

            object newPage = null;

            ds.Router.Navigate.Subscribe(o => newPage = o);

            t.MeetingAddress = "http://www.nytimes.com";
            t.SwitchPages.Execute(null);

            Assert.IsNull(newPage);
        }
Пример #2
0
        public void LoadCategory()
        {
            var ds = new dummyScreen();
            var t  = new OpenURLControlViewModel(ds);

            object newPage = null;

            ds.Router.Navigate.Subscribe(o => newPage = o);

            t.MeetingAddress = "https://indico.cern.ch/export/categ/1l12.ics?from=-7d";
            t.SwitchPages.Execute(null);

            Assert.IsNotNull(newPage);
            Assert.IsInstanceOfType(newPage, typeof(CategoryPageViewModel));
        }
Пример #3
0
        public void LoadNormalMeeting()
        {
            var ds = new dummyScreen();
            var t  = new OpenURLControlViewModel(ds);

            object newPage = null;

            ds.Router.Navigate.Subscribe(o => newPage = o);

            t.MeetingAddress = "https://indico.cern.ch/event/377091/";
            t.SwitchPages.Execute(null);

            Assert.IsNotNull(newPage);
            Assert.IsInstanceOfType(newPage, typeof(MeetingPageViewModel));
        }
Пример #4
0
        public async Task FetchOnce()
        {
            // When not in cache, make sure it is fetched and updated in the cache.
            var ds = new dummyScreen();
            var ms = new myMeetingListRef();
            var dc = new dummyCache();
            var t  = new CategoryPageViewModel(ds, ms, dc);

            await TestUtils.SpinWait(() => dc.NumberTimesInsertCalled >= 1, 1000);

            var item = await dc.GetObject <IMeetingRefExtended[]>(ms.UniqueString);

            Assert.IsNotNull(item);
            Assert.AreEqual(2, item.Length);
            Assert.AreEqual("meeting1", item[0].Title);
            Assert.AreEqual("meeting2", item[1].Title);
        }
Пример #5
0
        public async Task SkipIntroFeedsFirstRunVM()
        {
            var dumbScreen = new dummyScreen();
            var x          = new FirstRunViewModel(dumbScreen);

            x.SkipDefaultCategories.Execute(null);

            // Make sure that we make it to the proper place
            await TestUtils.SpinWaitAreEqual(typeof(StartPageViewModel), () => dumbScreen.CurrentVM == null?null : dumbScreen.CurrentVM.GetType(), 1000);

            // Make sure no categories have been loaded up.
            Assert.AreEqual(0, CategoryDB.LoadCategories().Count);

            // Make sure nothign got cached.
            var keys = await Blobs.LocalStorage.GetAllKeys();

            Assert.AreEqual(0, keys.Count());
        }
Пример #6
0
        public async Task WantSampleFeedsFirstRunVM()
        {
            // Say yes.
            var dumbScreen = new dummyScreen();
            var x          = new FirstRunViewModel(dumbScreen);

            x.AddDefaultCategories.Execute(null);

            // Make sure that we make it to the proper place
            await TestUtils.SpinWaitAreEqual(typeof(StartPageViewModel), () => dumbScreen.CurrentVM == null?null : dumbScreen.CurrentVM.GetType(), 1000);

            // Make sure no categories have been loaded up.
            Assert.AreNotEqual(1, CategoryDB.LoadCategories().Count);

            // Next, check that the cache db has these guys in there already.
            var keys = await Blobs.LocalStorage.GetAllKeys();

            Assert.AreNotEqual(0, keys.Count());
        }
Пример #7
0
 public void CTor()
 {
     var ds = new dummyScreen();
     var t  = new StartPageViewModel(ds);
 }
Пример #8
0
 public void CTor()
 {
     var ds = new dummyScreen();
     var ms = new myMeetingListRef();
     var t  = new CategoryPageViewModel(ds, ms);
 }