public void SetUp() { _source = new ObservableCollection <int>(new[] { 1, 2, 3 }); _deferTime = TimeSpan.FromMilliseconds(10); _deferredView = new DeferredView <int>(_source, _deferTime); _changes.Clear(); }
public static void DeferredContentShouldRender() { Tag done = new Tag("span").Text("done"); int runCount = 0; DeferredView view = new DeferredView("Monkey", (dv) => { // long processing Thread.Sleep(1000); runCount++; return(done); }, () => { return(new Tag("span").Text("initial")); }, 300); Expect.AreEqual(0, runCount, "runcount mismatch"); string initial = view.Render().ToHtmlString(); OutLineFormat("Should be initial: \r\n{0}", initial); FileInfo compareToFile = new FileInfo(string.Format(".\\{0}_initial.txt", MethodBase.GetCurrentMethod().Name)); Compare(view.Content, compareToFile); OutLine("waiting 2 seconds"); Thread.Sleep(2000); Expect.AreEqual(1, runCount, "runcount mismatch"); string doneHtml = view.Render().ToHtmlString(); OutLineFormat("Should be done: \r\n{0}", doneHtml); compareToFile = new FileInfo(string.Format(".\\{0}_done.txt", MethodBase.GetCurrentMethod().Name)); Compare(view.Content, compareToFile); string retreived = DeferredViewController.GetContentString(view.Name); Expect.AreEqual(1, runCount); string reretrieved = DeferredViewController.GetContentString(view.Name, true); Expect.AreEqual(retreived, reretrieved); Expect.AreEqual(2, runCount); }