示例#1
0
        public PayrollManagerTest()
        {
            _now = DateTime.Now;
            _ww = _now.WorkWeek();
            _employees = MockData.Employees;
            _grosses = MockData.Grosses(_ww.Start, _ww.End);

            _emprepos = Substitute.For<IEmployeeRepository>();
            _emprepos.Get().Returns(_employees);

            _dgrepos = Substitute.For<IDailyGrossRepository>();
            _dgrepos.Get(Arg.Any<Employee>(), Arg.Any<DateTime>(), Arg.Any<DateTime>()).ReturnsForAnyArgs(_grosses);
                
            _container = new WindsorContainer();
            _container
                .Register(Component.For<IEmployeeRepository>()
                    .Instance(_emprepos)
                )
                .Register(Component.For<IDailyGrossRepository>()
                    .Instance(_dgrepos)
                )

                .Register(Component.For<IPayrollManager>()
                    .ImplementedBy<PayrollManager>()
                );

            _mgr = _container.Resolve<IPayrollManager>();
        }
        public PayrollControllerTest()
        {
            _now = DateTime.Now;
            _now_fail = DateTime.Now.AddMinutes(-5);
            _payroll = MockData.Payroll;
            _payroll_fail = new Payroll();
            _mgr = Substitute.For<IPayrollManager>();
            _mgr.GetPayroll(_now).Returns(MockData.Payroll);
            _mgr.GetPayroll(_now_fail).Returns(x => { throw new Exception("Wth?"); });
            _mgr.When(x => x.SavePayroll(_payroll));
            _mgr.When(x => x.SavePayroll(_payroll_fail))
                .Do(x => { throw new Exception("Wth?"); });
            //_mgr.SavePayroll(_payroll);

            _container = new WindsorContainer();
            _container
                .Register(Component.For<IPayrollManager>()
                    .Instance(_mgr)
                )
                .Register(Component.For<PayrollController>()
                    .OnCreate((kernel, instance) => {
                        instance.Request = new System.Net.Http.HttpRequestMessage();
                        instance.Configuration = new System.Web.Http.HttpConfiguration();
                    })                            
                );

            _controller = _container.Resolve<PayrollController>();
        }
 public EmployeesController(PayrollContext context, IPayrollManager manager)
 {
     _context        = context;
     _payrollManager = manager;
 }
示例#4
0
 public PayrollController(IPayrollManager mgr)
 {
     _mgr = mgr;
 }