예제 #1
0
        public void InitTest()
        {
            var repo = new BacklogRepo(TestRootDir, Guid.NewGuid);

            repo.Initialise();
            var path = Path.Combine(TestRootDir, BacklogsSubFolder);

            Directory.Exists(path).Should().BeTrue();
        }
        public RequestHandlerFactory(IConfiguration configuration)
        {
            _handler = new Lazy <RequestHandler>(() =>
            {
                var rootPath        = configuration.GetValue <string>("App:DataRootPath");
                var userRepo        = new UserRepo(rootPath, "users.json");
                var backlogRepo     = new BacklogRepo(rootPath);
                var permissionsRepo = new PermissionRepo(rootPath, "permissions.json");

                if (userRepo.Initialise() is Failure ||
                    backlogRepo.Initialise() is Failure ||
                    permissionsRepo.Initialise() is Failure)
                {
                    throw new FailedRepositoryCreationException();
                }

                return(new RequestHandler(backlogRepo, new TotalOrder(), userRepo, new Security(), permissionsRepo));
            });
        }