Пример #1
0
        public static void Initialize(IotMgmtContext context)
        {
            context.Database.EnsureCreated();

/*
 *          // Look for any students.
 *          if (context.Students.Any())
 *          {
 *              return;   // DB has been seeded
 *          }
 *
 *          var students = new Student[]
 *          {
 *              new Student{FirstMidName="Carson",LastName="Alexander",EnrollmentDate=DateTime.Parse("2019-09-01")},
 *              new Student{FirstMidName="Meredith",LastName="Alonso",EnrollmentDate=DateTime.Parse("2017-09-01")},
 *              new Student{FirstMidName="Arturo",LastName="Anand",EnrollmentDate=DateTime.Parse("2018-09-01")},
 *              new Student{FirstMidName="Gytis",LastName="Barzdukas",EnrollmentDate=DateTime.Parse("2017-09-01")},
 *              new Student{FirstMidName="Yan",LastName="Li",EnrollmentDate=DateTime.Parse("2017-09-01")},
 *              new Student{FirstMidName="Peggy",LastName="Justice",EnrollmentDate=DateTime.Parse("2016-09-01")},
 *              new Student{FirstMidName="Laura",LastName="Norman",EnrollmentDate=DateTime.Parse("2018-09-01")},
 *              new Student{FirstMidName="Nino",LastName="Olivetto",EnrollmentDate=DateTime.Parse("2019-09-01")}
 *          };
 *
 *          context.Students.AddRange(students);
 *          context.SaveChanges();
 *
 *          var courses = new Course[]
 *          {
 *              new Course{CourseID=1050,Title="Chemistry",Credits=3},
 *              new Course{CourseID=4022,Title="Microeconomics",Credits=3},
 *              new Course{CourseID=4041,Title="Macroeconomics",Credits=3},
 *              new Course{CourseID=1045,Title="Calculus",Credits=4},
 *              new Course{CourseID=3141,Title="Trigonometry",Credits=4},
 *              new Course{CourseID=2021,Title="Composition",Credits=3},
 *              new Course{CourseID=2042,Title="Literature",Credits=4}
 *          };
 *
 *          context.Courses.AddRange(courses);
 *          context.SaveChanges();
 *
 *          var enrollments = new Enrollment[]
 *          {
 *              new Enrollment{StudentID=1,CourseID=1050,Grade=Grade.A},
 *              new Enrollment{StudentID=1,CourseID=4022,Grade=Grade.C},
 *              new Enrollment{StudentID=1,CourseID=4041,Grade=Grade.B},
 *              new Enrollment{StudentID=2,CourseID=1045,Grade=Grade.B},
 *              new Enrollment{StudentID=2,CourseID=3141,Grade=Grade.F},
 *              new Enrollment{StudentID=2,CourseID=2021,Grade=Grade.F},
 *              new Enrollment{StudentID=3,CourseID=1050},
 *              new Enrollment{StudentID=4,CourseID=1050},
 *              new Enrollment{StudentID=4,CourseID=4022,Grade=Grade.F},
 *              new Enrollment{StudentID=5,CourseID=4041,Grade=Grade.C},
 *              new Enrollment{StudentID=6,CourseID=1045},
 *              new Enrollment{StudentID=7,CourseID=3141,Grade=Grade.A},
 *          };
 *
 *          context.Enrollments.AddRange(enrollments);
 */
            context.SaveChanges();
        }
        private IotMgmtContext CreateDbContext(int seedCount)
        {
            var options = new DbContextOptionsBuilder <IotMgmtContext>()
                          .UseInMemoryDatabase(databaseName: "IotMgmtDatabase")
                          .Options;
            var context = new IotMgmtContext(options);

            var controller = new DeviceControllerTest(context);

            var requests = controller.GetFakeDeviceRequests(seedCount).AsQueryable();

            foreach (DeviceRequest req in requests)
            {
                context.DeviceRequest.Add(req);
            }
            context.SaveChanges();

            /*
             * var dbSet = new Mock<DbSet<DeviceRequest>>();
             * dbSet.As<IQueryable<DeviceRequest>>().Setup(m => m.Provider).Returns(requests.Provider);
             * dbSet.As<IQueryable<DeviceRequest>>().Setup(m => m.Expression).Returns(requests.Expression);
             * dbSet.As<IQueryable<DeviceRequest>>().Setup(m => m.ElementType).Returns(requests.ElementType);
             * dbSet.As<IQueryable<DeviceRequest>>().Setup(m => m.GetEnumerator()).Returns(requests.GetEnumerator());
             * context.Setup(c => c.DeviceRequest).Returns(dbSet.Object);
             */
            /*
             * context.Setup(c => c.DeviceRequest).Returns(dbSet.Object);
             */
            //            var service = new Mock<IDeviceRequestService>();
            //            service.Setup(x => x.AllRequests()).Returns(requests);
            return(context);
        }