public void Attached_path_values_doesnt_mutate_original() { var path = new PathData { Action = "hej", CurrentItem = item, Ignore = true, IsCacheable = true, IsPubliclyAvailable = true, IsRewritable = true, Path = "/x", StopItem = page, TemplateUrl = "/hello.aspx" }; var detached = path.Detach(); var reattached = detached.Attach(persister); detached.Action = "hejdå"; detached.CurrentItem = page; detached.Ignore = false; detached.IsCacheable = false; detached.IsPubliclyAvailable = false; detached.IsRewritable = false; detached.Path = "/y"; detached.StopItem = item; detached.TemplateUrl = "/world.aspx"; detached.QueryParameters["Hello"] = "world"; reattached.Action.ShouldNotBe("hejdå"); reattached.CurrentItem.ShouldNotBe(page); reattached.Ignore.ShouldNotBe(false); reattached.IsCacheable.ShouldNotBe(false); reattached.IsPubliclyAvailable.ShouldNotBe(false); reattached.IsRewritable.ShouldNotBe(false); reattached.Path.ShouldNotBe("/y"); reattached.StopItem.ShouldNotBe(item); reattached.TemplateUrl.ShouldNotBe("/world.aspx"); reattached.QueryParameters.ContainsKey("Hello").ShouldBe(false); }
public void Detach_creates_cloned_object() { var path = new PathData(); var detached = path.Detach(); detached.ShouldNotBeSameAs(path); }
public void Detach_removes_reference_to_item_but_leaves_id() { var path = new PathData { CurrentItem = page }; path = path.Detach(); path.CurrentItem.ShouldBe(null); path.ID.ShouldBe(1); }
public void Attach_creates_cloned_object() { var path = new PathData { Action = "hej", CurrentItem = item, Ignore = true, IsCacheable = true, IsPubliclyAvailable = true, IsRewritable = true, Path = "/x", StopItem = page, TemplateUrl = "/hello.aspx" }; var detached = path.Detach(); var reattached = detached.Attach(persister); reattached.ShouldNotBeSameAs(detached); }
public void Detach_removes_reference_to_page_but_leaves_id() { var path = new PathData { CurrentPage = page }; path = path.Detach(); path.CurrentPage.ShouldBe(null); path.PageID.ShouldBe(1); }
public void Attach_uses_persister_to_load_stop() { var path = new PathData { StopItem = page }; path = path.Detach(); path.StopItem.ShouldBe(null); var loadedPath = path.Attach(persister); loadedPath.StopItem.ID.ShouldBe(1); }
public void Attach_uses_persister_to_load_page() { var path = new PathData { CurrentPage = page }; path = path.Detach(); path.CurrentPage.ShouldBe(null); var loadedPath = path.Attach(persister); loadedPath.CurrentPage.ID.ShouldBe(1); }