Skip to content
This repository was archived by the owner on Jun 21, 2023. It is now read-only.

Commit 9ff77aa

Browse files
committed
Add two failing tests for fixing
1 parent 2edd3e4 commit 9ff77aa

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

src/TrackingCollectionTests/ListenerCollectionTests.cs

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,17 @@ public void Setup()
1616
}
1717
#endif
1818

19+
[Test]
20+
public void StickyItemShouldNotBePresentInitiallyWhereNoSelectionHasHappened()
21+
{
22+
var source = CreateSource();
23+
var stickie = new Thing();
24+
var selection = Observable.Empty<Thing>();
25+
var target = source.CreateListenerCollection(stickie, selection);
26+
27+
CollectionAssert.AreEqual(source, target);
28+
}
29+
1930
[Test]
2031
public void StickyItemShouldNotBePresentAfterCreationWhenSelectionNull()
2132
{
@@ -109,6 +120,20 @@ public void StickyItemShouldBeRemovedWhenSelectionChangesToStickyItem()
109120
CollectionAssert.AreEqual(source, target);
110121
}
111122

123+
[Test]
124+
public void ResetingTrackingCollectionWorks()
125+
{
126+
var source = CreateSource();
127+
var stickie = new Thing();
128+
var selection = new ReplaySubject<Thing>();
129+
var target = source.CreateListenerCollection(stickie, selection);
130+
selection.OnNext(stickie);
131+
selection.OnNext(null);
132+
CollectionAssert.AreEqual(source, target);
133+
source.Filter = (a,b,c) => true;
134+
CollectionAssert.AreEqual(source, target);
135+
}
136+
112137
TrackingCollection<Thing> CreateSource()
113138
{
114139
var result = new TrackingCollection<Thing>(Observable.Empty<Thing>());

0 commit comments

Comments
 (0)