public void SaveIconToReporting_Should_ExecuteQuery()
        {
            // Arrange
            var actualQueryExecute = string.Empty;
            IDictionary <string, object> actualParameters = new Dictionary <string, object>();

            var list = new ShimSPList()
            {
                IDGet        = () => DummyGuid,
                ParentWebGet = () => new ShimSPWeb()
            };

            ShimGridGanttSettings.ConstructorSPList = (sender, listParam) => sender.ListIcon = DummyIcon;

            ShimQueryExecutor.ConstructorSPWeb = (sender, web) => new ShimQueryExecutor();
            ShimQueryExecutor.AllInstances.ExecuteReportingDBNonQueryStringIDictionaryOfStringObject = (sender, query, parameters) =>
            {
                actualQueryExecute = query;
                actualParameters   = parameters;
            };

            // Act
            ListCommands.SaveIconToReporting(list);

            // Assert
            this.ShouldSatisfyAllConditions(
                () => actualQueryExecute.ShouldBe(@"INSERT INTO ReportListIds (Id, ListIcon) VALUES (@Id, @Icon)"),
                () => actualParameters.Count.ShouldBe(2),
                () => actualParameters.ShouldContainKeyAndValue("@Id", DummyGuid),
                () => actualParameters.ShouldContainKeyAndValue("@Icon", DummyIcon));
        }