예제 #1
0
        public void SetPersonalizations_ContainsKeyValuePair_ExecutesUpdate()
        {
            // Arrange
            var keyValuePair = new Dictionary <string, string>
            {
                { DummyString, One }
            };

            // Act
            MyPersonalization.SetPersonalizations(keyValuePair, DummyString, Id, _listId, _webId, _siteId, ExampleUrl);

            // Assert
            this.ShouldSatisfyAllConditions(
                () => _connectedToDb.ShouldBeTrue(),
                () => _unconnectedFromDb.ShouldBeTrue(),
                () => _sqlCommands.Any(c => c.Contains("UPDATE PERSONALIZATIONS SET Value = @value WHERE [Key] = @key AND UserId = @username")).ShouldBeTrue(),
                () => _parameters.ShouldContainKey("@key"),
                () => _parameters.ShouldContainKey("@value"),
                () => _parameters.ShouldContainKey("@username"),
                () => _parameters.ShouldContainKey("@itemId"),
                () => _parameters.ShouldContainKey("@listId"),
                () => _parameters.ShouldContainKey("@webId"),
                () => _parameters.ShouldContainKey("@siteId"),
                () => _parameters["@key"].ShouldBe(DummyString),
                () => _parameters["@value"].ShouldBe(One),
                () => _parameters["@username"].ShouldBe(DummyString),
                () => _parameters["@itemId"].ShouldBe(Id),
                () => _parameters["@listId"].ShouldBe(_listId),
                () => _parameters["@webId"].ShouldBe(_webId),
                () => _parameters["@siteId"].ShouldBe(_siteId),
                () => _didExecuteNonQuery.ShouldBeTrue());
        }
예제 #2
0
        public void SetPersonalizations_DoesNotContainKeyValuePair_ExecutesInsert()
        {
            // Arrange
            var keyValuePair = new Dictionary <string, string>
            {
                { One, One }
            };

            // Act
            MyPersonalization.SetPersonalizations(keyValuePair, DummyString, Id, _listId, _webId, _siteId, ExampleUrl);

            // Assert
            this.ShouldSatisfyAllConditions(
                () => _connectedToDb.ShouldBeTrue(),
                () => _unconnectedFromDb.ShouldBeTrue(),
                () => _sqlCommands.Any(c => c.Contains("INSERT INTO PERSONALIZATIONS ([Key], Value, UserId, ItemID, ListID, WebID, SiteID)")).ShouldBeTrue(),
                () => _didExecuteNonQuery.ShouldBeTrue());
        }
예제 #3
0
        // Private Methods (1) 

        /// <summary>
        /// Hides the slide out.
        /// </summary>
        /// <param name="slideOutId"></param>
        private void HideSlideOut(string slideOutId)
        {
            try
            {
                SPSite spSite = SPContext.Current.Site;

                MyPersonalization.SetPersonalizations(
                    new Dictionary <string, string> {
                    { "ContextualSlideOutId", slideOutId }
                },
                    SPContext.Current.Web.CurrentUser.ID.ToString(), 0, Guid.Empty, Guid.Empty,
                    spSite.ID, spSite.Url);

                Data = "Success";
            }
            catch (Exception e)
            {
                Data = e.Message;
            }
        }