public void DeleteImage_Invoke_InvokesBusinesLayerDeleteImage()
        {
            // Arrange
            using (ShimsContext.Create())
            {
                var imageToDelete         = string.Empty;
                var loadBrowseTableCalled = false;
                var showBrowseCalled      = false;
                ShimNewFile.DeleteImageString                      = (image) => imageToDelete = image;
                Shimgallery.AllInstances.loadBrowseTable           = gallery => loadBrowseTableCalled = true;
                Shimgallery.AllInstances.showBrowseObjectEventArgs = (gallery, obj, eventArgs) => showBrowseCalled = true;
                ShimUserControl.AllInstances.ServerGet             = obj => new ShimHttpServerUtility();
                ShimHttpServerUtility.AllInstances.MapPathString   = (obj, input) => DeleteImage;

                using (var testObject = new gallery())
                {
                    var privateObject = new PrivateObject(testObject);
                    privateObject.SetFieldOrProperty(ImagePreview, new Image());

                    // Act
                    testObject.deleteImage(null, new CommandEventArgs(null, DeleteImage));

                    // Assert
                    testObject.ShouldSatisfyAllConditions(() => imageToDelete.ShouldBe(DeleteImage), () => loadBrowseTableCalled.ShouldBeTrue(), () => showBrowseCalled.ShouldBeTrue());
                }
            }
        }
        public void DeleteImage_Invoke_InvokesBusinesLayerDeleteImage()
        {
            // Arrange
            using (ShimsContext.Create())
            {
                var imageToDelete = string.Empty;
                ShimFileInfo.AllInstances.Delete                   = input => { };
                Shimgallery.AllInstances.loadBrowseTable           = gallery => { };
                Shimgallery.AllInstances.showBrowseObjectEventArgs = (gallery, obj, eventArgs) => { };
                ShimUserControl.AllInstances.ServerGet             = obj => new ShimHttpServerUtility();
                ShimHttpServerUtility.AllInstances.MapPathString   = (obj, input) =>
                {
                    imageToDelete = input;
                    return(DeleteImage);
                };
                ShimUserControl.AllInstances.ResponseGet     = (obj) => new ShimHttpResponse().Instance;
                ShimHttpResponse.AllInstances.RedirectString = (obj, input) => { };

                using (var testObject = new gallery())
                {
                    var privateObject = new PrivateObject(testObject);
                    privateObject.SetFieldOrProperty(ImagePreview, new Image());

                    // Act
                    testObject.deleteImage(null, new CommandEventArgs(null, DeleteImage));

                    // Assert
                    imageToDelete.ShouldBe(DeleteImage);
                }
            }
        }