public void GetDatabasesShouldCreateAndPassProperUrlToClientService()
        {
            //Arrange
            ConfigureTestConfig();
            var expectedUrl = TestUrl + "databases";

            //Act
            var result = _service.GetDatabases();

            //Assert
            _httpClientServiceMock.Verify(
                s =>
                s.MakeHttpGetRequest <GearHostGetDatabasesResponse>(expectedUrl, It.IsAny <string>(),
                                                                    It.IsAny <List <KeyValuePair <string, string> > >()));
        }
        public void ExecuteJob()
        {
            //Split out the skip databases
            _log.Info("Starting backup process from GearHost");
            var skipDbList = SkipDatabases.Split(',');

            //Get the databases
            _log.Info("Getting database list");
            var allDatabases = _gearHostApiService.GetDatabases();

            _log.Info($"Found {allDatabases.Databases.Count} databases");
            foreach (var item in allDatabases.Databases)
            {
                if (skipDbList.Contains(item.Name))
                {
                    _log.Debug($"Skipping {item.Name} due to configuration");
                    continue;
                }

                _log.Info($"Requesting backup for database '{item.Name}' size {item.Size}");
                var data = _gearHostApiService.BackupDatabase(item.Id);

                _fileStorageService.StoreDatabaseFile(item.Name, data);
            }
        }