예제 #1
0
        public void TestGetProcess()
        {
            // db is empty
            using (var context = new ProTickDatabaseContext(dbOptions))
            {
                var dbm       = new DatabaseQueryManager(context);
                var converter = new ResourceDTOConverter(dbm);

                var controller = new ProcessController(context, converter, dbm);

                Assert.Throws <DatabaseEntryNotFoundException>(() => controller.GetProcess(0));
            }

            // seeding DB
            using (var context = new ProTickDatabaseContext(dbOptions))
            {
                DbContextSeeder.SeedFull(context);
            }

            // db is Test-Ready
            using (var context = new ProTickDatabaseContext(dbOptions))
            {
                var dbm       = new DatabaseQueryManager(context);
                var converter = new ResourceDTOConverter(dbm);

                var controller = new ProcessController(context, converter, dbm);

                var expected = DbContextSeeder.GetSeededProcessDTOs(
                    3
                    )
                               .ToList();

                expected[0].Should().BeEquivalentTo(controller.GetProcess(1));
                expected[1].Should().BeEquivalentTo(controller.GetProcess(2));
                expected[2].Should().BeEquivalentTo(controller.GetProcess(3));
            }
        }