public async Task SubmissionWithMaxEntries()
        {
            Guid serial = Guid.NewGuid();
            AcmeCorporationContext context    = getInMemDB("MaxEntriesOnOneSerial");
            SubmissionsController  controller = new SubmissionsController(context);

            Submission mock1 = MockSubmission(serial);
            Submission mock2 = MockSubmission(serial);
            Submission mock3 = MockSubmission(serial);

            await context.Submission.AddAsync(mock1);

            await context.Submission.AddAsync(mock2);

            await context.PurchasedProduct.AddAsync(new PurchasedProduct
            {
                ProductSerial = serial
            });

            await context.SaveChangesAsync();

            IActionResult result = await controller.Create(mock3);

            RedirectToActionResult actionResult = Assert.IsType <RedirectToActionResult>(result);

            Assert.Equal("ErrorPage", actionResult.ActionName);
            Assert.Equal("Home", actionResult.ControllerName);
            Assert.Equal(3, actionResult.RouteValues["contentId"]);
        }
示例#2
0
        public void TestOnlyEnterContestTwice()
        {
            using (var db = new AcmeDBEntities())
            {
                var controller = new SubmissionsController();
                var submission = new Submission()
                {
                    FirstName = "a", LastName = "b", Email = "*****@*****.**", Age = 20, Serialnumber = Guid.Parse("0FBF023F9CB946E58B780E820EC815CD"), DOB = DateTime.Now.AddYears(-20)
                };

                controller.Create(submission);
                var serial = db.Serialnumber.FirstOrDefault(x => submission.Serialnumber == x.Serialnumber1);
                Assert.AreEqual(1, serial.Counter);

                //controller.Create(submission);
                //serial = db.Serialnumber.FirstOrDefault(x => submission.Serialnumber == x.Serialnumber1);
                //Assert.AreEqual(0, serial.Counter);

                //try
                //{
                //    controller.Create(submission);
                //    serial = db.Serialnumber.FirstOrDefault(x => submission.Serialnumber == x.Serialnumber1);
                //    Assert.Fail();
                //} catch (Exception e)
                //{

                //}
            }
        }
        public async Task SubmissionWithNoErrors()
        {
            Guid serial = Guid.NewGuid();
            AcmeCorporationContext context    = getInMemDB("Submit");
            SubmissionsController  controller = new SubmissionsController(context);

            Submission mock  = MockSubmission(serial);
            Submission mock1 = MockSubmission(serial);

            await context.PurchasedProduct.AddAsync(new PurchasedProduct
            {
                ProductSerial = serial
            });

            await context.SaveChangesAsync();

            await controller.Create(mock);

            await controller.Create(mock1);

            Assert.Equal(2, await context.Submission.CountAsync());
        }