public void FilterManager_FilterOnTag_Whitespace() { List <IPackage> packages = new List <IPackage>() { new IPackageMock("0") { Tags = " Dummy1 Dummy2 " }, new IPackageMock("1") { Tags = "" }, new IPackageMock("2") { Tags = null }, new IPackageMock("3") { Tags = " Dummy2 Dummy3 " } }; List <IPackage> expected = new List <IPackage>() { packages[0] }; // we remove any whitespace around the search tag -- this enforces 'exact match' semantics List <IPackage> filtered = FilterManager.FilterOnTag(packages.AsQueryable(), " Dummy1 ").ToList(); Assert.Equal(expected, filtered); }
public void FilterManager_FilterOnTag_NonEmpty() { List <IPackage> packages = new List <IPackage>() { new IPackageMock("0") { Tags = " Dummy1 Dummy2 " }, new IPackageMock("1") { Tags = "" }, new IPackageMock("2") { Tags = null }, new IPackageMock("3") { Tags = " Dummy2 Dummy3" } }; List <IPackage> expected = new List <IPackage>() { packages[0] }; List <IPackage> filtered = FilterManager.FilterOnTag(packages.AsQueryable(), "Dummy1").ToList(); Assert.Equal(expected, filtered); }
public void FilterManager_FilterOnTag_MixedCase() { List <IPackage> packages = new List <IPackage>() { new IPackageMock("0") { Tags = " Dummy1 Dummy2 " }, new IPackageMock("1") { Tags = "" }, new IPackageMock("2") { Tags = null }, new IPackageMock("3") { Tags = " Dummy2 Dummy3 " } }; List <IPackage> expected = new List <IPackage>() { packages[0] }; // we remove any whitespace around the search tag List <IPackage> filtered = FilterManager.FilterOnTag(packages.AsQueryable(), " DumMY1 ").ToList(); Assert.Equal(expected, filtered); }
public void FilterManager_FilterOnTag_Empty() { List <IPackage> packages = new List <IPackage>() { new IPackageMock("0") { Tags = "test1 test2 " }, new IPackageMock("1") { Tags = "" }, new IPackageMock("2") { Tags = null } }; List <IPackage> filtered = FilterManager.FilterOnTag(packages.AsQueryable(), null).ToList(); Assert.Equal(packages, filtered); }