public async Task StoreBenchMarkResultsAsync_Should_SaveChangesAsync_Once()
        {
            //  Arrange

            var sourceList = new List <BenchMarkResult>();

            var mockDbContext = new Mock <BenchMarkDbContext>();
            var mockedDbSet   = new Mock <DbSet <BenchMarkResult> >();

            mockedDbSet.Setup(d => d.Add(It.IsAny <BenchMarkResult>())).Callback <BenchMarkResult>((s) => sourceList.Add(s));
            mockDbContext.Setup(dbContext => dbContext.BenchMarkResult).Returns(mockedDbSet.Object);

            var benchMarkResults = new List <BenchMarkResult>()
            {
                new BenchMarkResult()
            };

            var testService = new BenchMarkTypeService(null, mockDbContext.Object);



            //  Act

            await testService.StoreBenchMarkResultsAsync(benchMarkResults);



            //  Assert

            mockDbContext.Verify(dbContext => dbContext.SaveChangesAsync(It.IsAny <CancellationToken>()), Times.Once);
        }
        public async Task StoreBenchMarkResultsAsync_Should_Return_When_No_Results_and_Not_Call_DbContext()
        {
            //  Arrange

            var benchMarkResults = new List <BenchMarkResult>();
            var mockDbContext    = new Mock <BenchMarkDbContext>();

            var testService = new BenchMarkTypeService(null, mockDbContext.Object);



            //  Act

            await testService.StoreBenchMarkResultsAsync(benchMarkResults);



            //  Assert

            mockDbContext.Verify(dbContext => dbContext.SaveChangesAsync(It.IsAny <CancellationToken>()), Times.Never);
        }