コード例 #1
0
        public async Task DeleteImage_ImageDeleted()
        {
            // Arrange
            var    options         = new DbContextOptionsBuilder <ImageGalleryDbContext>().UseInMemoryDatabase("DeleteImage_ImageDeleted").Options;
            var    ctx             = new ImageGalleryDbContext(options);
            IImage service         = new Service(ctx);
            var    mockEnvironment = new Mock <IWebHostEnvironment>();

            mockEnvironment
            .Setup(m => m.EnvironmentName)
            .Returns("Hosting:UnitTestEnvironment");

            ctx.Add(new GalleryImage
            {
                Id    = 1,
                Title = "11"
            });
            ctx.SaveChanges();
            ImageController controller = new ImageController(service, mockEnvironment.Object);

            // Act
            try
            {
                await controller.Delete(1);

                Assert.Fail();
            }
            catch (Exception) { }
            // Assert
        }
コード例 #2
0
        public async Task UpdateImage_ModelHasCorrectData()
        {
            // Arrange
            var    options         = new DbContextOptionsBuilder <ImageGalleryDbContext>().UseInMemoryDatabase("UpdateImage_ModelHasCorrectData").Options;
            var    ctx             = new ImageGalleryDbContext(options);
            IImage service         = new Service(ctx);
            var    mockEnvironment = new Mock <IWebHostEnvironment>();

            mockEnvironment
            .Setup(m => m.EnvironmentName)
            .Returns("Hosting:UnitTestEnvironment");
            ctx.Add(new GalleryImage
            {
                Id    = 1,
                Title = "11"
            });
            ctx.SaveChanges();
            ImageController controller = new ImageController(service, mockEnvironment.Object);
            // Act

            ViewResult result = await controller.UpdateImage(1) as ViewResult;

            GalleryImage Image = result.ViewData.Model as GalleryImage;

            // Assert
            Assert.AreEqual("11", Image.Title);
        }
コード例 #3
0
        public async Task DeleteImage_GetViewResult()
        {
            // Arrange
            var    options         = new DbContextOptionsBuilder <ImageGalleryDbContext>().UseInMemoryDatabase("DeleteImage_GetViewResult").Options;
            var    ctx             = new ImageGalleryDbContext(options);
            IImage service         = new Service(ctx);
            var    mockEnvironment = new Mock <IWebHostEnvironment>();

            mockEnvironment
            .Setup(m => m.EnvironmentName)
            .Returns("Hosting:UnitTestEnvironment");
            ctx.Add(new GalleryImage
            {
                Id    = 1,
                Title = "11",
                Url   = ""
            });
            ctx.SaveChanges();
            ImageController controller = new ImageController(service, mockEnvironment.Object);
            // Act

            var result = await controller.Delete(1);

            Assert.IsInstanceOf <ViewResult>(result);
        }
コード例 #4
0
        public async Task UpdateImagePost_GetViewResult()
        {
            // Arrange
            var    options         = new DbContextOptionsBuilder <ImageGalleryDbContext>().UseInMemoryDatabase("Test1_ImageController").Options;
            var    ctx             = new ImageGalleryDbContext(options);
            IImage service         = new Service(ctx);
            var    mockEnvironment = new Mock <IWebHostEnvironment>();


            Bitmap bitmap = new Bitmap(10, 10, System.Drawing.Imaging.PixelFormat.Format32bppArgb);

            System.Drawing.Image copy = bitmap;

            string newPath = Environment.CurrentDirectory + "/test/newImageName.jpg";

            copy.Save(newPath);

            mockEnvironment
            .Setup(m => m.WebRootPath).Returns(Environment.CurrentDirectory + "/test/");
            ImageController controller = new ImageController(service, mockEnvironment.Object);

            ctx.Add(new GalleryImage
            {
                Id    = 1,
                Title = "11",
                Url   = "newImageName.jpg"
            });
            ctx.SaveChanges();
            var fileMock = new Mock <IFormFile>();

            var file      = new Mock <IFormFile>();
            var sourceImg = File.OpenRead("C:\\Users\\PC\\Source\\Repos\\andr1312e\\ImageGallery\\ImageGallery\\wwwroot\\gallery\\1.jpeg");
            var stream    = new MemoryStream();
            var writer    = new StreamWriter(stream);

            writer.Write(sourceImg);
            writer.Flush();
            stream.Position = 0;
            var fileName = "QQ.png";

            file.Setup(f => f.OpenReadStream()).Returns(stream);
            file.Setup(f => f.FileName).Returns(fileName);
            file.Setup(f => f.Length).Returns(stream.Length);
            file.Setup(f => f.ContentType).Returns("image/jpeg");
            // Act

            var result = await controller.UpdateImage(1, "122", file.Object);

            // Assert
            Assert.IsInstanceOf <ViewResult>(result);
            var    IRes = (ViewResult)result;
            var    res  = IRes.ViewData.Model as GalleryImage;
            string a    = "2";
        }
コード例 #5
0
        public void Service_Set_Image_Correct()
        {
            var    options = new DbContextOptionsBuilder <ImageGalleryDbContext>().UseInMemoryDatabase("Set").Options;
            var    ctx     = new ImageGalleryDbContext(options);
            IImage service = new Service(ctx);

            service.SetImage("11", "22, 23", "333", "123");
            int count = service.GetAll().Count();

            Assert.AreEqual(1, count);
        }
コード例 #6
0
        public void Service_Get_By_Tag_Correct()
        {
            var    options = new DbContextOptionsBuilder <ImageGalleryDbContext>().UseInMemoryDatabase("UserName").Options;
            var    ctx     = new ImageGalleryDbContext(options);
            IImage service = new Service(ctx);

            service.SetImage("aa", "22, 23", "img", "123");
            service.SetImage("bb", "23,24", "png", "123");
            int count = service.GetByTag("23").Count();

            Assert.AreEqual(2, count);
        }
コード例 #7
0
        public void Service_Get_Last_Id_Correct()
        {
            var    options = new DbContextOptionsBuilder <ImageGalleryDbContext>().UseInMemoryDatabase("LastId").Options;
            var    ctx     = new ImageGalleryDbContext(options);
            IImage service = new Service(ctx);

            ctx.Add(new GalleryImage
            {
                Id    = 0,
                Title = "11"
            });
            ctx.SaveChanges();
            int id = service.LastId();

            Assert.AreEqual(1, id);
        }
コード例 #8
0
        public void Service_Get_By_Id_Correct()
        {
            var options = new DbContextOptionsBuilder <ImageGalleryDbContext>().UseInMemoryDatabase("Get_by_Id").Options;
            var ctx     = new ImageGalleryDbContext(options);

            ctx.Add(new GalleryImage
            {
                Id    = 1,
                Title = "11"
            });
            ctx.SaveChanges();
            IImage service  = new Service(ctx);
            string TitleGet = service.GetById(1).Title;

            Assert.AreEqual("11", TitleGet);
        }
コード例 #9
0
        public void Service_Rename_Image_Correct()
        {
            var options = new DbContextOptionsBuilder <ImageGalleryDbContext>().UseInMemoryDatabase("Rename").Options;
            var ctx     = new ImageGalleryDbContext(options);

            ctx.Add(new GalleryImage
            {
                Id    = 1,
                Title = "11"
            });
            ctx.SaveChanges();
            IImage service = new Service(ctx);

            service.Rename(service.GetById(1), "33");
            Assert.AreEqual("33", service.GetById(1).Title);
        }
コード例 #10
0
        public void Service_Get_By_UserName_Correct()
        {
            var    options = new DbContextOptionsBuilder <ImageGalleryDbContext>().UseInMemoryDatabase("UserName").Options;
            var    ctx     = new ImageGalleryDbContext(options);
            IImage service = new Service(ctx);

            ctx.Add(new GalleryImage
            {
                Id       = 0,
                Title    = "11",
                UserName = "******"
            });
            ctx.SaveChanges();
            GalleryImage img = service.GetByUserName("33").First();

            Assert.AreEqual("11", img.Title);
        }
コード例 #11
0
        public void Service_Delete_Image_Correct()
        {
            var options = new DbContextOptionsBuilder <ImageGalleryDbContext>().UseInMemoryDatabase("Delete").Options;
            var ctx     = new ImageGalleryDbContext(options);

            ctx.Add(new GalleryImage
            {
                Id    = 1,
                Title = "11"
            });
            ctx.SaveChanges();
            IImage service = new Service(ctx);

            service.Delete(service.GetById(1));
            int count = service.GetAll().Count();

            Assert.AreEqual(0, count);
        }
コード例 #12
0
        public void Service_Edit_ImageUrl_Correct()
        {
            var options = new DbContextOptionsBuilder <ImageGalleryDbContext>()
                          .UseInMemoryDatabase(databaseName: "Service_Edit_ImageUrl_Correct").Options;

            using (var ctx = new ImageGalleryDbContext(options))
            {
                ctx.GalleryImages.Add(new GalleryImage
                {
                    Id    = 19,
                    Title = "AAA",
                    Url   = "1.JPEG"
                });
                ctx.SaveChanges();
                IImage ImgService = new Service(ctx);
                ImgService.EditImage(ImgService.GetById(19), "2.JPEG");
                Assert.AreEqual("2.JPEG", ImgService.GetById(19).Url);
            }
        }
コード例 #13
0
        public void Service_Return_All_Correct()
        {
            var options = new DbContextOptionsBuilder <ImageGalleryDbContext>().UseInMemoryDatabase(databaseName: "Return_All_Images").Options;

            using var ctx = new ImageGalleryDbContext(options);
            ctx.GalleryImages.Add(new GalleryImage
            {
                Id    = 20,
                Title = "1"
            });
            ctx.GalleryImages.Add(new GalleryImage
            {
                Id    = 21,
                Title = "2"
            });
            ctx.SaveChanges();
            IImage service = new Service(ctx);
            int    count   = service.GetAll().Count();

            Assert.AreEqual(2, count);
        }
コード例 #14
0
 public EfRepository(ImageGalleryDbContext dbContext, ISpecificationEvaluator <T> evaluator)
 {
     this.dbContext = dbContext;
     this.evaluator = evaluator;
 }
コード例 #15
0
 public ImagesController(ImageGalleryDbContext context)
 {
     _context = context;
 }
コード例 #16
0
 public static void Initialize()
 {
     Database.SetInitializer(new MigrateDatabaseToLatestVersion <ImageGalleryDbContext, Configuration>());
     ImageGalleryDbContext.Create().Database.Initialize(true);
 }
コード例 #17
0
 public ImageService(ImageGalleryDbContext ctx)
 {
     _ctx = ctx;
 }
コード例 #18
0
 public ImageService(ImageGalleryDbContext db)
 {
     this.db = db;
 }
コード例 #19
0
ファイル: Service.cs プロジェクト: andr1312e/ImageGallery
 public Service(ImageGalleryDbContext imageGalleryDb)
 {
     ImageGalleryDbContext = imageGalleryDb;
 }
コード例 #20
0
 public ImageService(ImageGalleryDbContext context)
 {
     _context = context;
 }
コード例 #21
0
 public ImageRepository(ImageGalleryDbContext context, ISpecificationEvaluator <Image> evaluator)
     : base(context, evaluator)
 {
 }