private InventoryApiContext SetUpContext(IEnumerable <Items> items)
        {
            //set up the mock context for new tests
            var dbCOB = new DbContextOptionsBuilder <InventoryApiContext>();

            //use a different database for testing than the default in memory database
            dbCOB.UseInMemoryDatabase("ItemControllerTestDB");

            var mockContext = new InventoryApiContext(dbCOB.Options);

            //delete any existing test items
            mockContext.Items.RemoveRange(mockContext.Items);
            mockContext.SaveChanges();
            //if items were sent as a parameter, add them to the database
            if (!Object.ReferenceEquals(items, null))
            {
                mockContext.Items.AddRange(items);
            }
            mockContext.SaveChanges();

            return(mockContext);
        }
示例#2
0
 // The optional parameter for the injection of a writer dependency is for the
 // testing of console output.
 public ItemsController(InventoryApiContext context, IItemMonitor ItemMonitor, ILoggerFactory loggerFactory)
 {
     _logger      = loggerFactory.CreateLogger <ItemsController>();
     _context     = context;
     _itemMonitor = ItemMonitor;
 }
 private ItemMonitor SetUpMonitor(InventoryApiContext context, ILoggerFactory loggerFactory)
 {
     return(new ItemMonitor(context, new TestTimerFactory(), loggerFactory));
 }