public UnitOfWork(JobDbContext context, Repository <Company> companyRepository, Repository <JobApplicationAnswer> jobApplicationAnswerRepository, Repository <JobApplication> jobApplicationRepository, Repository <JobOfferQuestion> jobOfferQuestionRepository, Repository <JobOffer> jobOfferRepository, Repository <JobSeeker> jobSeekerRepository, Repository <User> userRepository, UserQuery userQuery, JobOfferQuery jobOfferQuery, CompanyQuery companyQuery, JobApplicationQuery jobApplicationQuery) { this.context = context; CompanyRepository = companyRepository; JobApplicationAnswerRepository = jobApplicationAnswerRepository; JobApplicationRepository = jobApplicationRepository; JobOfferQuestionRepository = jobOfferQuestionRepository; JobOfferRepository = jobOfferRepository; JobSeekerRepository = jobSeekerRepository; UserRepository = userRepository; UserQuery = userQuery; JobOfferQuery = jobOfferQuery; CompanyQuery = companyQuery; JobApplicationQuery = jobApplicationQuery; }
// for tests public UnitOfWork(DbContextOptions <JobDbContext> contextOptions) { context = new JobDbContext(contextOptions); CompanyRepository = new Repository <Company>(context); JobApplicationAnswerRepository = new Repository <JobApplicationAnswer>(context); JobApplicationRepository = new Repository <JobApplication>(context); JobOfferQuestionRepository = new Repository <JobOfferQuestion>(context); JobOfferRepository = new Repository <JobOffer>(context); JobSeekerRepository = new Repository <JobSeeker>(context); UserRepository = new Repository <User>(context); UserQuery = new UserQuery(context); JobOfferQuery = new JobOfferQuery(context); CompanyQuery = new CompanyQuery(context); JobApplicationQuery = new JobApplicationQuery(context); }