Beispiel #1
0
        public void TestAddRemove()
        {
            UserDatabase userDb = new UserDatabase(_settingsLookup[ConnectionKey]);

            GetTestUser(out var name, out User user);

            // Test User is not there
            Assert.IsNotNull(userDb.LoadedItems);
            int           numberInitialItems = userDb.LoadedItems.Count;
            List <string> userNames          = userDb.LoadedItems.ToList().Select(x => x.Name).ToList();

            Assert.IsFalse(userNames.Contains(name));

            // Add new User
            userDb.AddNewItemToDatabase(user);
            userDb.ConnectToDatabase();
            Assert.AreNotEqual(numberInitialItems, userDb.LoadedItems.Count);
            Assert.AreEqual(1, userDb.LoadedItems.Count - numberInitialItems);
            List <string> userNames2 = userDb.LoadedItems.ToList().Select(x => x.Name).ToList();

            Assert.IsTrue(userNames2.Contains(name));

            // Remove the new user
            userDb.RemoveItemFromDatabase(user);
            userDb.ConnectToDatabase();

            Assert.AreEqual(userDb.LoadedItems.Count, numberInitialItems);
            List <string> userNames3 = userDb.LoadedItems.ToList().Select(x => x.Name).ToList();

            Assert.IsFalse(userNames3.Contains(name));
        }
        public async Task SetupRemoteCollections()
        {
            string connection = SettingsVm.LocalConnectionString;

            try
            {
                RemoteDatabaseCollections.Clear();

                _remoteBooksReadDatabase = new BooksReadDatabase(connection, true);
                _remoteBooksReadDatabase.MongoClientFunc = GetRemoteConnection;
                //_remoteBooksReadDatabase.ResetLoadedItems();
                _remoteBooksReadDatabase.ConnectToDatabase();
                RemoteDatabaseCollections.Add(new DataCollectionSettings(_remoteBooksReadDatabase));

                _remoteNationDatabase = new NationDatabase(connection, true);
                _remoteNationDatabase.MongoClientFunc = GetRemoteConnection;
                //_remoteNationDatabase.ResetLoadedItems();
                _remoteNationDatabase.ConnectToDatabase();
                RemoteDatabaseCollections.Add(new DataCollectionSettings(_remoteNationDatabase));

                _remoteUserDatabase = new UserDatabase(connection, true);
                _remoteUserDatabase.MongoClientFunc = GetRemoteConnection;
                //_remoteUserDatabase.ResetLoadedItems();
                _remoteUserDatabase.ConnectToDatabase();
                RemoteDatabaseCollections.Add(new DataCollectionSettings(_remoteUserDatabase));

                NotifyOfPropertyChange(() => RemoteDatabaseCollections);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
        }
 /// <summary>
 /// The get users from database command action.
 /// </summary>
 public void GetUsersCommandAction()
 {
     _usersReadDatabase.ConnectToDatabase();
     if (_usersReadDatabase.ReadFromDatabase)
     {
         _usersReadFromDatabase = _usersReadDatabase.LoadedItems;
         OnPropertyChanged(() => Users);
     }
 }
Beispiel #4
0
 public UserLoginControllerUtilities(MongoDbSettings mongoDbSettings) : base(mongoDbSettings)
 {
     if (!mongoDbSettings.UseRemoteHost)
     {
         _userDatabase = new UserDatabase(mongoDbSettings.DatabaseConnectionString);
     }
     else
     {
         _userDatabase =
             new UserDatabase(string.Empty, false)
         {
             MongoClientFunc = GetRemoteConnection
         };
         _userDatabase.ConnectToDatabase();
     }
 }
        public async Task SetupLocalCollections()
        {
            string connection = SettingsVm.LocalConnectionString;

            LocalDatabaseCollections.Clear();
            _localBooksReadDatabase = new BooksReadDatabase(connection);
            _localBooksReadDatabase.ConnectToDatabase();
            LocalDatabaseCollections.Add(new DataCollectionSettings(_localBooksReadDatabase));

            _localNationDatabase = new NationDatabase(LocalConnectionString);
            _localNationDatabase.ConnectToDatabase();
            LocalDatabaseCollections.Add(new DataCollectionSettings(_localNationDatabase));

            _localUserDatabase = new UserDatabase(LocalConnectionString);
            _localUserDatabase.ConnectToDatabase();
            LocalDatabaseCollections.Add(new DataCollectionSettings(_localUserDatabase));

            NotifyOfPropertyChange(() => LocalDatabaseCollections);
        }
Beispiel #6
0
        public BooksDataControllerUtilities(MongoDbSettings dbSettings, SmtpConfig mailConfig) : base(dbSettings)
        {
            _smtpConfig = mailConfig;
            DatabaseConnectionString = dbSettings.DatabaseConnectionString;
            ExportDirectory          = dbSettings.ExportDirectory;

            _books = new ObservableCollection <Book>();

            _booksReadFromDatabase   = new ObservableCollection <BookRead>();
            _nationsReadFromDatabase = new ObservableCollection <Nation>();
            _usersReadFromDatabase   = new ObservableCollection <User>();

            if (!dbSettings.UseRemoteHost)
            {
                _booksReadDatabase   = new BooksReadDatabase(DatabaseConnectionString);
                _nationsReadDatabase = new NationDatabase(DatabaseConnectionString);
                _userDatabase        = new UserDatabase(DatabaseConnectionString);
            }
            else
            {
                _booksReadDatabase =
                    new BooksReadDatabase(string.Empty, false)
                {
                    MongoClientFunc = GetRemoteConnection
                };
                _booksReadDatabase.ConnectToDatabase();

                _nationsReadDatabase =
                    new NationDatabase(string.Empty, false)
                {
                    MongoClientFunc = GetRemoteConnection
                };
                _nationsReadDatabase.ConnectToDatabase();

                _userDatabase =
                    new UserDatabase(string.Empty, false)
                {
                    MongoClientFunc = GetRemoteConnection
                };
                _userDatabase.ConnectToDatabase();
            }
        }