public async Task GrabUserDetailsAsyncTest(string username, string firstName, string lastName, string email, string affiliationAbbreviation)
        {
            TestDatabase      testDatabase      = new TestDatabase();
            TestDialogService testDialogService = new TestDialogService();

            User user = new User();

            user.Username  = username;
            user.FirstName = firstName;
            user.LastName  = lastName;
            user.Email     = email;

            /** Make an affiliation with matching abbreviation and store in DB **/
            Affiliation matchingAffiliation = new Affiliation();

            matchingAffiliation.Abbreviation = affiliationAbbreviation;
            await testDatabase.AddNewAffiliationAsync(matchingAffiliation);

            user.Affiliation = matchingAffiliation;

            user = await testDatabase.AddNewUserAsync(user);

            Assert.AreEqual(user.Username, username);
            Assert.AreEqual(user.FirstName, firstName);
            Assert.AreEqual(user.LastName, lastName);
            Assert.AreEqual(user.Email, email);
            Assert.AreEqual(user.Affiliation.Abbreviation, affiliationAbbreviation);
        }
예제 #2
0
        public async Task SaveNewMeetAsync(string name, string description, string startDateTime, string endDate)
        {
            /** Make a new database **/
            var testDB = new TestDatabase();

            var testDialogService = new TestDialogService();

            var mainWindowVM = new MainWindowViewModel(testDB, testDialogService);

            mainWindowVM.CreateAffiliation.Affiliation.Name         = "My Affiliation";
            mainWindowVM.CreateAffiliation.Affiliation.Abbreviation = "MA";

            mainWindowVM.CreateAffiliation.CreateNewAffiliation.Execute(null);

            /** Make a temporary user **/
            var user = new User();

            user.FirstName   = "Database";
            user.LastName    = "Tester";
            user.Username    = "******";
            user.Email       = "*****@*****.**";
            user.Affiliation = mainWindowVM.CreateAffiliation.Affiliation;

            user = await testDB.AddNewUserAsync(user);

            mainWindowVM.CurrentUser = user;

            mainWindowVM.Registration.AddAddMeetView.Execute(null);
            var addMeetVM = (AddMeetViewModel)mainWindowVM.Registration.SelectedChildViewModel;

            addMeetVM.Meet.Name          = name;
            addMeetVM.Meet.Description   = description;
            addMeetVM.Meet.StartDateTime = Convert.ToDateTime(startDateTime);
            addMeetVM.Meet.EndDate       = Convert.ToDateTime(endDate);

            addMeetVM.StartDateTimeString = addMeetVM.Meet.StartDateTime.ToString();
            addMeetVM.SaveNewMeet.Execute(null);

            /** Get the meet(s) **/
            var meetsIEnum = await testDB.RefreshMeetsAsync(user);

            ObservableCollection <Meet> meets = new ObservableCollection <Meet>(meetsIEnum);

            var theMeet = meets.Last();

            /** Test Equality **/
            Assert.AreEqual(theMeet.Name, name);
            Assert.AreEqual(theMeet.Description, description);
            Assert.AreEqual(theMeet.StartDateTime, Convert.ToDateTime(startDateTime));
            Assert.AreEqual(theMeet.EndDate, Convert.ToDateTime(endDate));
            Assert.AreEqual(theMeet.Id, meets.Count());
            Assert.AreEqual(theMeet.UserId, user.Id);
        }
예제 #3
0
        public async Task CheckLoginTest()
        {
            TestDatabase      testDatabase      = new TestDatabase();
            TestDialogService testDialogService = new TestDialogService();

            User user = new User();

            user.Username = "******";
            await testDatabase.AddNewUserAsync(user);

            MainWindowViewModel mainWindowViewModel = new MainWindowViewModel(testDatabase, testDialogService);

            mainWindowViewModel.Login.Username = "******";

            mainWindowViewModel.Login.LoginCommand.Execute(null);

            user = mainWindowViewModel.CurrentUser;
            Assert.AreEqual(user.Username, "username");
        }
        public async Task AddNewMeetTestAsync(string name, string description, string startDateTime, string endDate)
        {
            /** Make a new database **/
            var testDB = new TestDatabase();

            /** Make a temporary user **/
            var user = new User();

            user.FirstName = "Database";
            user.LastName  = "Tester";
            user.Username  = "******";
            user.Email     = "*****@*****.**";

            Affiliation matchingAffiliation = new Affiliation();

            matchingAffiliation.Abbreviation = "TEST";
            await testDB.AddNewAffiliationAsync(matchingAffiliation);

            user = await testDB.AddNewUserAsync(user);

            /** Make the meet **/
            var newMeet = new Meet();

            newMeet.Name          = name;
            newMeet.Description   = description;
            newMeet.StartDateTime = Convert.ToDateTime(startDateTime);
            newMeet.EndDate       = Convert.ToDateTime(endDate);

            newMeet = await testDB.AddNewMeetAsync(newMeet, user);

            var meetsIEnum = await testDB.RefreshMeetsAsync(user);

            ObservableCollection <Meet> meets = new ObservableCollection <Meet>(meetsIEnum);

            var theMeet = meets.Last();

            Assert.AreEqual(theMeet.Name, name);
            Assert.AreEqual(theMeet.Description, description);
            Assert.AreEqual(theMeet.StartDateTime, Convert.ToDateTime(startDateTime));
            Assert.AreEqual(theMeet.EndDate, Convert.ToDateTime(endDate));
            Assert.AreEqual(theMeet.Id, meets.Count());
            Assert.AreEqual(theMeet.UserId, user.Id);
        }
예제 #5
0
        public async Task SwitchViewLoginToRegistrationTestAsync()
        {
            TestDatabase      testDatabase      = new TestDatabase();
            TestDialogService testDialogService = new TestDialogService();

            User user = new User();

            user.Username = "******";
            await testDatabase.AddNewUserAsync(user);

            MainWindowViewModel mainWindowViewModel = new MainWindowViewModel(testDatabase, testDialogService);

            mainWindowViewModel.Login.Username = "******";

            mainWindowViewModel.Login.LoginCommand.Execute(null);

            var cvm = mainWindowViewModel.ChildViewModel;

            Assert.AreEqual(mainWindowViewModel.Registration, cvm);
        }