public void ShouldCreateExpenseReportFact()
        {
            new DatabaseTester().Clean();

            var fact = new ExpenseReportFact()
            {
                Approver  = "",
                Id        = Guid.NewGuid(),
                Number    = "1",
                Status    = "Submitter",
                Submitter = "Me",
                TimeStamp = new DateTime(2015, 01, 01),
                Total     = 123.456m,
            };

            var command = new AddExpenseReportFactCommand(fact);
            var handler = new AddExpenseReportFactHandler();

            handler.Handle(command);

            using (ISession session = DataContext.GetTransactedSession())
            {
                var facts = session.CreateCriteria <ExpenseReportFact>().List <ExpenseReportFact>();
                Assert.That(facts.Count, Is.EqualTo(1));
            }
        }
Ejemplo n.º 2
0
        public void ShouldCreateExpenseReportFact()
        {
            new DatabaseTester().Clean();

            var fact = new ExpenseReportFact()
            {
                Approver  = "",
                Id        = Guid.NewGuid(),
                Number    = "1",
                Status    = "Submitter",
                Submitter = "Me",
                TimeStamp = new DateTime(2015, 01, 01),
                Total     = 123.456m,
            };

            var command = new AddExpenseReportFactCommand(fact);
            var handler = new AddExpenseReportFactHandler(new StubbedDataContextFactory().GetContext());

            handler.Handle(command);

            using (EfCoreContext context = new StubbedDataContextFactory().GetContext())
            {
                context.Set <ExpenseReportFact>().Count().ShouldEqual(1);
            }
        }
        public void ShouldCreateExpenseReportFact()
        {
            new DatabaseTester().Clean();

            var fact = new ExpenseReportFact()
            {
                Approver = "",
                Id = Guid.NewGuid(),
                Number = "1",
                Status = "Submitter",
                Submitter = "Me",
                TimeStamp = new DateTime(2015,01,01),
                Total = 123.456m,
            };
        
            var command = new AddExpenseReportFactCommand(fact);
            var handler = new AddExpenseReportFactHandler();
            handler.Handle(command);

            using (ISession session = DataContext.GetTransactedSession())
            {
                var facts = session.CreateCriteria<ExpenseReportFact>().List<ExpenseReportFact>();
                Assert.That(facts.Count, Is.EqualTo(1));
            }
        }
        public void ShouldPersistExportReportFact()
        {
            new DatabaseTester().Clean();
            var employee = new Employee("somethingelse", "Jeffrey", "Palermo", "jeffrey @ clear dash measure.com");

            employee.Id = Guid.NewGuid();
            var report = new ExpenseReport
            {
                Number    = "123",
                Status    = ExpenseReportStatus.Draft,
                Submitter = employee
            };

            DateTime          setDate           = new DateTime(2015, 1, 1);
            ExpenseReportFact expenseReportFact = new ExpenseReportFact(report, setDate);

            var command = new AddExpenseReportFactCommand(expenseReportFact);

            IContainer container = DependencyRegistrarModule.EnsureDependenciesRegistered();
            var        bus       = container.GetInstance <Bus>();

            bus.Send(command);

            using (ISession session = DataContext.GetTransactedSession())
            {
                session.Save(expenseReportFact);
                session.Transaction.Commit();
            }

            ExpenseReportFact reHydratedExpenseReportFact;

            using (ISession session = DataContext.GetTransactedSession())
            {
                reHydratedExpenseReportFact = session.Load <ExpenseReportFact>(expenseReportFact.Id);
            }

            reHydratedExpenseReportFact.Approver.ShouldEqual(expenseReportFact.Approver);
            reHydratedExpenseReportFact.Number.ShouldEqual(expenseReportFact.Number);
            reHydratedExpenseReportFact.Status.ShouldEqual(expenseReportFact.Status);
            reHydratedExpenseReportFact.Submitter.ShouldEqual(expenseReportFact.Submitter);
            reHydratedExpenseReportFact.TimeStamp.ShouldEqual(expenseReportFact.TimeStamp);
            reHydratedExpenseReportFact.Total.ShouldEqual(expenseReportFact.Total);
        }
        public void ShouldPersistExportReportFact()
        {
            new DatabaseTester().Clean();
            var employee = new Employee("somethingelse", "Jeffrey", "Palermo", "jeffrey @ clear dash measure.com");
            employee.Id = Guid.NewGuid();
            var report = new ExpenseReport
            {
                Number = "123",
                Status = ExpenseReportStatus.Draft,
                Submitter = employee
            };

            DateTime setDate = new DateTime(2015, 1, 1);
            ExpenseReportFact expenseReportFact = new ExpenseReportFact(report, setDate);

            var command = new AddExpenseReportFactCommand(expenseReportFact);

            IContainer container = DependencyRegistrarModule.EnsureDependenciesRegistered();
            var bus = container.GetInstance<Bus>();

            bus.Send(command);

            using (ISession session = DataContext.GetTransactedSession())
            {
                session.Save(expenseReportFact);
                session.Transaction.Commit();
            }

            ExpenseReportFact reHydratedExpenseReportFact;

            using (ISession session = DataContext.GetTransactedSession())
            {
                reHydratedExpenseReportFact = session.Load<ExpenseReportFact>(expenseReportFact.Id);
            }

            reHydratedExpenseReportFact.Approver.ShouldEqual(expenseReportFact.Approver);
            reHydratedExpenseReportFact.Number.ShouldEqual(expenseReportFact.Number);
            reHydratedExpenseReportFact.Status.ShouldEqual(expenseReportFact.Status);
            reHydratedExpenseReportFact.Submitter.ShouldEqual(expenseReportFact.Submitter);
            reHydratedExpenseReportFact.TimeStamp.ShouldEqual(expenseReportFact.TimeStamp);
            reHydratedExpenseReportFact.Total.ShouldEqual(expenseReportFact.Total);
        }