コード例 #1
0
 public QueryHandler(IMapper mapper, ICurrentUserAccessor currentUserAccessor,
                     SampleExamContext context)
 {
     this.mapper = mapper;
     this.currentUserAccessor = currentUserAccessor;
     this.context             = context;
 }
コード例 #2
0
 public Handler(
     IMapper mapper,
     IPasswordHasher <Domain.User> hasher,
     IApiJwtTokenGenerator tokenGenrator,
     IApiTokenRefreshTokenGenrator refreshTokenGenerator,
     SampleExamContext context)
 {
     this.mapper                = mapper;
     this.hasher                = hasher;
     this.context               = context;
     this.tokenGenrator         = tokenGenrator;
     this.refreshTokenGenerator = refreshTokenGenerator;
 }
コード例 #3
0
        private void BeforeAllTests()
        {
            var config           = new ConfigurationBuilder().AddEnvironmentVariables().Build();
            var services         = new Microsoft.Extensions.DependencyInjection.ServiceCollection();
            var connectionString = config.GetValue <string>(IntegrationTestConstants.CONN_STRING_KEY_TEST);

            services.AddDbContext <SampleExam.Infrastructure.Data.SampleExamContext>(opt => opt.UseNpgsql(connectionString));
            var serviceProvider = services.BuildServiceProvider();

            this.dbContext = serviceProvider.GetRequiredService <SampleExamContext>();
            dbContext.Database.EnsureDeleted();
            dbContext.Database.EnsureCreated();
            SampleExamContextHelper.SeedContext(dbContext);
        }
コード例 #4
0
        public static async Task <bool> EndUserExamIfTimeExpired(
            SampleExamContext context,
            CancellationToken cancellationToken,
            Domain.UserExam userExam)
        {
            var expired = userExam.StartedtedAt.AddMinutes(userExam.Exam.TimeInMinutes) <= DateTime.UtcNow;

            if (expired)
            {
                userExam.EndedAt = userExam.StartedtedAt.AddMinutes(userExam.Exam.TimeInMinutes);
                await context.SaveChangesAsync(cancellationToken);
            }
            return(expired);
        }
コード例 #5
0
        public static void SeedContext(SampleExamContext context)
        {
            var uniqueString = Guid.NewGuid().ToGuidString();
            var tags         = new Tag[] {
                new Tag()
                {
                    TagId = $"{uniqueString}_tag1", CreatedAt = DateTime.UtcNow
                },
                new Tag()
                {
                    TagId = $"{uniqueString}_tag2", CreatedAt = DateTime.UtcNow
                },
                new Tag()
                {
                    TagId = $"{uniqueString}_tag3", CreatedAt = DateTime.UtcNow
                },
            };

            context.Tags.AddRange(tags);
            context.SaveChanges();
            var tagEntities = context.Tags.ToArray();

            SampleExamContextHelper.SeededTags = tagEntities;
        }
コード例 #6
0
 public QueryHandler(IMapper mapper,
                     SampleExamContext context)
 {
     this.mapper  = mapper;
     this.context = context;
 }
コード例 #7
0
 public Handler(IMapper mapper, IPasswordHasher <Domain.User> hasher, SampleExamContext context)
 {
     this.mapper  = mapper;
     this.context = context;
     this.hasher  = hasher;
 }