public void SetUp() { _applicationSettings = new TestApplicationSettings(); TearDown(); var aggregateDataFileLocation = Path.Combine(_applicationSettings.SqliteStorageFolderLocation, _applicationSettings.AggregateSqliteFileName); //File.Create(aggregateDataFileLocation); var sqliteOption = new DbContextOptionsBuilder <AggregateDataContext>() .UseSqlite(AggregateDataContext.GetSqliteString(aggregateDataFileLocation)) .Options; var context = new AggregateDataContext(sqliteOption); _dataPointRepository = new SqliteImportedDataPointRepository(_applicationSettings); _aggregateDataRepository = new AggregateDataRepository(context, _dataPointRepository); }
public static int GenerateWeeksWorthOfData(this IImportedDataPointRepository dataPointRepository, IApplicationSettings applicationSettings) { var totalCount = 0; var typesOfSavedData = 1; var daysInWeek = 7; var hoursInDay = 24; var minutesInHour = 60; var readingsInMinute = 12; var oneWeekOfData = daysInWeek * hoursInDay; var readingsPerHour = minutesInHour * readingsInMinute; var sqliteFolderLocation = applicationSettings.SqliteStorageFolderLocation; for (var fileTypeIndex = 0; fileTypeIndex < typesOfSavedData; fileTypeIndex++) { for (var fileIndex = 0; fileIndex < oneWeekOfData; fileIndex++) { var databaseName = $"VibrationType{fileTypeIndex}{fileIndex}.db"; var fileTypeData = new List <ImportedDataPoint>(); for (var dataPointIndex = 0; dataPointIndex < readingsPerHour; dataPointIndex++) { fileTypeData.Add(new ImportedDataPoint { TimeStampInUtc = DateTime.Now.AddDays(-7).AddMinutes(5 * dataPointIndex), Bits = dataPointIndex }); totalCount++; } var metadata = new StoreFileMetadata { FileName = databaseName, RoomNumber = fileIndex.ToString(), RackIdentifier = fileIndex, RackCoordinates = new RackCoordinate { X = fileIndex, Y = fileIndex }, ConversionKey = fileIndex.ToString() }; var json = JsonConvert.SerializeObject(metadata); dataPointRepository.WriteRangeToDatabase(databaseName, fileTypeData); File.WriteAllText(Path.Combine(sqliteFolderLocation, databaseName.GetSqliteAssociatedMetadataFileName()), json); } } return(totalCount); }
public void SetUp() { _appSettings = new TestApplicationSettings(); _dataPointRepository = new SqliteImportedDataPointRepository(_appSettings); var aggregateDataFileLocation = Path.Combine(_appSettings.SqliteStorageFolderLocation, _appSettings.AggregateSqliteFileName); File.Create(aggregateDataFileLocation); var sqliteOption = new DbContextOptionsBuilder <AggregateDataContext>() .UseSqlite(AggregateDataContext.GetSqliteString(aggregateDataFileLocation)) .Options; var context = new AggregateDataContext(sqliteOption); _aggregateDataRepository = new AggregateDataRepository(context, _dataPointRepository); _dataStorageController = new DataStorageController(_appSettings, _aggregateDataRepository, new EmailServiceLayer(new EmailConfiguration(), new EmailService(new EmailConfiguration()))); }
public AggregateDataRepository(AggregateDataContext database, IImportedDataPointRepository importedDataPointRepository) { _database = database; _importedDataPointRepository = importedDataPointRepository; }
public void Setup() { _applicationSettings = new TestApplicationSettings(); _importedDataPointStorage = new SqliteImportedDataPointRepository(_applicationSettings); }