public async Task ThrowArgumentException_When_ReportNotExists()
        {
            //Arrange
            var options = Utils.GetOptions(nameof(ThrowArgumentException_When_ReportNotExists));
            var report  = TestModelsSeeder.SeedReport();

            using (var arrangeContext = new InsightHubContext(options))
            {
                await arrangeContext.Reports.AddAsync(report);

                arrangeContext.SaveChanges();
            }
            //Act & Assert
            using var assertContext = new InsightHubContext(options);
            var sutTag = new TagServices(assertContext);
            var sut    = new ReportServices(assertContext, sutTag);
            await sut.DeleteReport(1);

            await Assert.ThrowsExceptionAsync <ArgumentException>(() => sut.DeleteReport(1));
        }
        public async Task DeleteReport_When_ParamsValid()
        {
            //Arrange
            var options = Utils.GetOptions(nameof(DeleteReport_When_ParamsValid));
            var report  = TestModelsSeeder.SeedReport();

            using (var arrangeContext = new InsightHubContext(options))
            {
                await arrangeContext.Reports.AddAsync(report);

                arrangeContext.SaveChanges();
            }
            //Act & Assert
            using var assertContext = new InsightHubContext(options);
            var sutTag = new TagServices(assertContext);
            var sut    = new ReportServices(assertContext, sutTag);
            await sut.DeleteReport(1);

            Assert.IsTrue(assertContext.Reports.First(u => u.Id == 1).IsDeleted);
        }