Example #1
0
 protected WorkspaceViewModel()
 {
     Repository = ExpensesRepo.Instance;
     Types      = new ReadOnlyCollection <TypeTran>(Repository.Types);
     Categories = new ObservableCollection <Category>(Repository.Categories);
     MoneyEnts.ClearAndAddRange(Repository.MoneyEntryContainer);
     MoneyEnts.CollectionChanged += ModifyCollectionsBindings;
 }
Example #2
0
 protected WorkspaceViewModel(DateTime start, DateTime end, int personId)
 {
     Repository     = ExpensesRepo.Instance;
     Types          = new ReadOnlyCollection <TypeTran>(Repository.Types);
     Categories     = new ObservableCollection <Category>(Repository.Categories);
     TextCollection = new ReadOnlyCollection <string>(Repository.TextEntryAcrossRange(start, end, personId));
     MoneyEnts.ClearAndAddRange(Repository.MoneyEntryContainer);
     MoneyEnts.CollectionChanged += ModifyCollectionsBindings;
 }
Example #3
0
        public void GetSourceDetails_OnBlankInput_ReturnInputSource()
        {
            //Arrange
            ExpensesRepo repo = new ExpensesRepo();

            //Act
            InputDataSource inputSource = repo.GetSourceDetails();

            //Assert
            Assert.IsNotNull(inputSource.InputDataSourceName);
            Assert.AreEqual(DataSource.FileSystem, inputSource.InputDataSourceType);
        }
Example #4
0
        public void ExtractExpenseFromCsv_OnInvalidCsv_ReturnEmptyTxnList()
        {
            //Arrange
            List <Expense> txnList = new List <Expense>();
            string         input1  = File.ReadAllText(@"..\..\..\TestFiles1\Csv_Invalid_1.CSV");

            //Act
            ExpensesRepo   repo    = new ExpensesRepo();
            List <Expense> output1 = repo.ExtractExpensesFromCsv(input1).ToList();

            //Assert
            Assert.AreEqual(0, output1.Count);
            CollectionAssert.AreEqual(txnList, output1, new ExpenseComparer());
        }
Example #5
0
        public void GetSourceDetails_OnNonBlankInput_ReturnInputSource()
        {
            //Arrange
            ExpensesRepo repo = new ExpensesRepo
            {
                FolderName = @"C:\Temp"
            };

            //Act
            InputDataSource inputSource = repo.GetSourceDetails();

            //Assert
            Assert.AreEqual(@"C:\Temp", inputSource.InputDataSourceName);
            Assert.AreEqual(DataSource.FileSystem, inputSource.InputDataSourceType);
        }
Example #6
0
        public void GetExpenses_OnValidInputs_ReturnExpensesList()
        {
            //Arrange

            //Act
            ExpensesRepo repo = new ExpensesRepo
            {
                FolderName = @"..\..\..\TestFiles2"
            };
            List <Expense> output1 = repo.GetExpenses().ToList();

            //Assert
            Assert.AreEqual(_expList3.Count, output1.Count);
            CollectionAssert.AreEqual(_expList3, output1, new ExpenseComparer());
        }
Example #7
0
        public void ConsolidateMetadataFromLists_OnExecute_ReturnConsolidatedTxnList()
        {
            //Arrange
            List <List <Expense> > txnInput = new List <List <Expense> >
            {
                _expList1,
                _expList2
            };

            //Act
            ExpensesRepo   repo    = new ExpensesRepo();
            List <Expense> output1 = repo.ConsolidateExpensesFromLists(txnInput).ToList();

            //Assert
            Assert.AreEqual(3, output1.Count);
            CollectionAssert.AreEqual(_expList3, output1, new ExpenseComparer());
        }
Example #8
0
        public void GetExpense_OnFolderChange_ReturnTxnList()
        {
            //Arrange
            File.Delete(@"..\..\..\TestFiles3\exp_Valid_3.CSV");

            //Act
            ExpensesRepo repo = new ExpensesRepo
            {
                FolderName = @"..\..\..\TestFiles3"
            };
            List <Expense> output1 = repo.GetExpenses().ToList();

            File.Copy(@"..\..\..\TestFiles1\exp_Valid_3.CSV", @"..\..\..\TestFiles3\exp_Valid_3.CSV");
            System.Threading.Thread.Sleep(5000);
            output1 = repo.GetExpenses().ToList();

            //Assert
            Assert.AreEqual(4, output1.Count);
            CollectionAssert.AreEqual(_expList4, output1, new ExpenseComparer());
        }
Example #9
0
 public ExpensesService(ExpensesRepo expensesRepo)
 {
     _expensesRepo = expensesRepo;
 }
Example #10
0
 public ExpensesServicesTests(ExpensesRepo repo, ExpensesService service)
 {
     _repo    = repo;
     _service = new ExpensesService(_repo);
 }