Skip to content

Commit 43d82ef

Browse files
committed
标签顺序不影响过滤效果
1 parent 6d0bf04 commit 43d82ef

File tree

1 file changed

+39
-0
lines changed

1 file changed

+39
-0
lines changed

tests/dotnetCampus.Logger.Tests/TagFilterManagerTests.cs

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,19 @@ public void 单个任一和包含标签()
8484
Assert.IsFalse(filter.IsTagEnabled("[xxxx] Message"));
8585
}
8686

87+
[TestMethod("单个任一和包含标签,只要有一个标签匹配即允许。且标签顺序不影响。")]
88+
public void 单个任一和包含标签且标签顺序不影响()
89+
{
90+
var filter = CreateFilter("+Bar,Foo");
91+
Assert.IsFalse(filter.IsTagEnabled("[Foo] Message"));
92+
Assert.IsFalse(filter.IsTagEnabled("[Bar] Message"));
93+
Assert.IsTrue(filter.IsTagEnabled("[Foo][Bar] Message"));
94+
Assert.IsFalse(filter.IsTagEnabled("[xxxx][Foo] Message"));
95+
Assert.IsFalse(filter.IsTagEnabled("[xxxx][Bar] Message"));
96+
Assert.IsTrue(filter.IsTagEnabled("[xxxx][Foo][Bar] Message"));
97+
Assert.IsFalse(filter.IsTagEnabled("[xxxx] Message"));
98+
}
99+
87100
[TestMethod("单个任一和排除标签,只要有一个标签匹配即不允许。")]
88101
public void 单个任一和排除标签()
89102
{
@@ -97,6 +110,19 @@ public void 单个任一和排除标签()
97110
Assert.IsFalse(filter.IsTagEnabled("[xxxx] Message"));
98111
}
99112

113+
[TestMethod("单个任一和排除标签,只要有一个标签匹配即不允许。且标签顺序不影响。")]
114+
public void 单个任一和排除标签且标签顺序不影响()
115+
{
116+
var filter = CreateFilter("-Bar,Foo");
117+
Assert.IsTrue(filter.IsTagEnabled("[Foo] Message"));
118+
Assert.IsFalse(filter.IsTagEnabled("[Bar] Message"));
119+
Assert.IsFalse(filter.IsTagEnabled("[Foo][Bar] Message"));
120+
Assert.IsTrue(filter.IsTagEnabled("[xxxx][Foo] Message"));
121+
Assert.IsFalse(filter.IsTagEnabled("[xxxx][Bar] Message"));
122+
Assert.IsFalse(filter.IsTagEnabled("[xxxx][Foo][Bar] Message"));
123+
Assert.IsFalse(filter.IsTagEnabled("[xxxx] Message"));
124+
}
125+
100126
[TestMethod("单个包含和排除标签,只要有一个标签匹配即不允许。")]
101127
public void 单个包含和排除标签()
102128
{
@@ -110,6 +136,19 @@ public void 单个包含和排除标签()
110136
Assert.IsFalse(filter.IsTagEnabled("[xxxx] Message"));
111137
}
112138

139+
[TestMethod("单个包含和排除标签,只要有一个标签匹配即不允许。且标签顺序不影响。")]
140+
public void 单个包含和排除标签且标签顺序不影响()
141+
{
142+
var filter = CreateFilter("-Bar,+Foo");
143+
Assert.IsTrue(filter.IsTagEnabled("[Foo] Message"));
144+
Assert.IsFalse(filter.IsTagEnabled("[Bar] Message"));
145+
Assert.IsFalse(filter.IsTagEnabled("[Foo][Bar] Message"));
146+
Assert.IsTrue(filter.IsTagEnabled("[xxxx][Foo] Message"));
147+
Assert.IsFalse(filter.IsTagEnabled("[xxxx][Bar] Message"));
148+
Assert.IsFalse(filter.IsTagEnabled("[xxxx][Foo][Bar] Message"));
149+
Assert.IsFalse(filter.IsTagEnabled("[xxxx] Message"));
150+
}
151+
113152
[TestMethod("单个任一和包含和排除标签,只要有一个排除标签匹配即不允许,否则只要有一个标签匹配即允许。")]
114153
public void 单个任一和包含和排除标签()
115154
{

0 commit comments

Comments
 (0)