コード例 #1
0
        public async Task Initialize()
        {
            // create test user
            var user = new AppIdentityUser
            {
                Id               = "TestUser",
                UserName         = "******",
                Email            = "*****@*****.**",
                TwoFactorEnabled = true
            };

            var userManager = this._serviceProvider.GetRequiredService <UserManager <AppIdentityUser> >();
            await userManager.CreateAsync(user, "Pass@word1");

            // sign in test user
            var httpContext = this._serviceProvider.GetRequiredService <IHttpContextAccessor>().HttpContext;

            httpContext.User = new ClaimsPrincipal(
                new ClaimsIdentity(new GenericIdentity(user.Email), new[] { new Claim("ID", user.Id) }));
            httpContext.RequestServices = this._serviceProvider;

            this.bettingController = new BettingController(
                this._serviceProvider.GetRequiredService <IBidService>(),
                this._serviceProvider.GetRequiredService <IBettingService>(),
                userManager);

            this.bettingController.ControllerContext.HttpContext = httpContext;

            var bettingCurrent = new BettingModel()
            {
                Status       = BettingStatus.Continue,
                BettingId    = 1,
                ExchangeRate = 1000,
                StartDate    = DateTime.Now,
                FinishDate   = DateTime.Now.AddDays(1)
            };
            var bettingDone = new BettingModel()
            {
                Status       = BettingStatus.Done,
                BettingId    = 2,
                ExchangeRate = 1000,
                StartDate    = DateTime.Now,
                FinishDate   = DateTime.Now.AddDays(1)
            };

            this.bettingModels = new List <BettingModel>()
            {
                bettingCurrent, bettingDone
            };

            var bettingService = this._serviceProvider.GetRequiredService <IGenericRepository <BettingModel> >();

            bettingService.Create(bettingCurrent);
            bettingService.Create(bettingDone);
        }
コード例 #2
0
        public async Task Initialize()
        {
            // create test user
            var user = new AppIdentityUser
            {
                Id               = "TestUser",
                UserName         = "******",
                Email            = "*****@*****.**",
                TwoFactorEnabled = true
            };

            var userManager = this._serviceProvider.GetRequiredService <UserManager <AppIdentityUser> >();
            await userManager.CreateAsync(user, "Pass@word1");

            var bettingCurrent = new BettingModel()
            {
                Status       = BettingStatus.Continue,
                BettingId    = 1,
                ExchangeRate = 1000,
                StartDate    = DateTime.Now,
                FinishDate   = DateTime.Now.AddDays(1)
            };
            var bettingDone = new BettingModel()
            {
                Status       = BettingStatus.Waiting,
                BettingId    = 2,
                ExchangeRate = 1000,
                StartDate    = DateTime.Now,
                FinishDate   = DateTime.Now.AddDays(1)
            };
            var bettingService = this._serviceProvider.GetRequiredService <IGenericRepository <BettingModel> >();

            bettingService.Create(bettingCurrent);
            bettingService.Create(bettingDone);

            var urlHelperMock = new Mock <IBitcoinWalletService>();

            urlHelperMock.Setup(service => service.GetAddressById(It.IsAny <int>())).Returns(
                () => BitcoinAddress.Create("mhheFUrieWV2zVsdWXNZkqSmeSVjkbXWer", Network.TestNet));
            this.bidController = new BidController(
                this._serviceProvider.GetRequiredService <IBidService>(),
                this._serviceProvider.GetRequiredService <IBettingService>(),
                urlHelperMock.Object,
                userManager);

            // sign in test user
            var httpContext = this._serviceProvider.GetRequiredService <IHttpContextAccessor>().HttpContext;

            httpContext.User = new ClaimsPrincipal(
                new ClaimsIdentity(new GenericIdentity(user.Email), new[] { new Claim("ID", user.Id) }));
            httpContext.RequestServices = this._serviceProvider;
            this.bidController.ControllerContext.HttpContext = httpContext;
        }
コード例 #3
0
 public async Task <bool> Create(BettingModel betting)
 {
     try
     {
         this.repository.Create(betting);
         return(true);
     }
     catch (Exception e)
     {
         return(false);
     }
 }
コード例 #4
0
        public Task Execute(IJobExecutionContext context)
        {
            var betting = new BettingModel();

            betting.StartDate  = DateTime.Now.Date;
            betting.FinishDate = DateTime.Now.Date.Add(this.time);
            betting.Status     = BettingStatus.Continue;

            decimal?exchangeRate;

            do
            {
                exchangeRate = this.bettingService.CurrentExchange;
            }while (!exchangeRate.HasValue);

            betting.ExchangeRate = exchangeRate.Value;

            this.bettingService.Create(betting);

            return(Task.CompletedTask);
        }