public void SaveInvestmentTotalsInDb()
        {
            var filePath   = @"Investments.csv";
            var connection = new SqliteConnection("DataSource=:memory:");

            connection.Open();
            try
            {
                var options = new DbContextOptionsBuilder <DatabaseContext>()
                              .UseSqlite(connection)
                              .Options;
                using var context = new DatabaseContext(options);
                context.Database.EnsureCreated();
                _databaseService = new DatabaseService(context);
                var csvService = new CsvService();
                _uploaderService = new UploaderService(csvService, new Aggregator(), _databaseService);

                _uploaderService.UploadInvestmentsFromCsvToDb(filePath);

                var investmentsAfter = _databaseService.GetInvestmentTotals();
                investmentsAfter.SingleOrDefault().Should().NotBeNull();
            }
            finally
            {
                connection.Close();
            }
        }
Example #2
0
        public void ReadDataFromCsv_WhenUploadFromCsvToDb()
        {
            _uploaderService.UploadInvestmentsFromCsvToDb(@"Investments.csv");

            _csvServiceMock.Verify(c => c.GetInvestments(It.IsAny <string>()), Times.Once);
        }