From 56a2b11be338d2ed249a6cbc956166312df2dbb3 Mon Sep 17 00:00:00 2001 From: "gtm.daemon" Date: Fri, 21 Oct 2011 22:30:18 +0000 Subject: [Author: aharper] - Make custom level filters much more flexible (arbitrary level combinations). - Remove older custom level class to prevent confusion. - Add a new standard logger that tries to produce a reasonable stdout/stderr split for commandline tools. R=dmaclach APPROVED=dmaclach --- Foundation/GTMLoggerTest.m | 67 ++++++++++++++++++++++++++++++++-------------- 1 file changed, 47 insertions(+), 20 deletions(-) (limited to 'Foundation/GTMLoggerTest.m') diff --git a/Foundation/GTMLoggerTest.m b/Foundation/GTMLoggerTest.m index fe76194..c0280e1 100644 --- a/Foundation/GTMLoggerTest.m +++ b/Foundation/GTMLoggerTest.m @@ -469,30 +469,29 @@ STAssertTrue([filter filterAllowsMessage:nil level:kGTMLoggerLevelDebug], nil); } -- (void)testCustomFilter { - // Default level is kGTMLoggerLevelError - id filter = [[[GTMLogCustomLevelFilter alloc] init] - autorelease]; +- (void)testMinimumFilter { + id filter = [[[GTMLogMininumLevelFilter alloc] + initWithMinimumLevel:kGTMLoggerLevelInfo] + autorelease]; STAssertNotNil(filter, nil); STAssertFalse([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelUnknown], nil); STAssertFalse([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelDebug], nil); - STAssertFalse([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelInfo], - nil); + STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelInfo], + nil); STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelError], nil); STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelAssert], nil); - // Custom level is possible - filter = [[[GTMLogCustomLevelFilter alloc] - initWithFilterLevel:kGTMLoggerLevelInfo] autorelease]; + filter = [[[GTMLogMininumLevelFilter alloc] + initWithMinimumLevel:kGTMLoggerLevelDebug] autorelease]; STAssertNotNil(filter, nil); STAssertFalse([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelUnknown], nil); - STAssertFalse([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelDebug], - nil); + STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelDebug], + nil); STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelInfo], nil); STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelError], @@ -500,23 +499,51 @@ STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelAssert], nil); - filter = [[[GTMLogCustomLevelFilter alloc] - initWithFilterLevel:kGTMLoggerLevelDebug] autorelease]; + // Cannot exceed min/max levels filter + filter = [[[GTMLogMininumLevelFilter alloc] + initWithMinimumLevel:kGTMLoggerLevelAssert + 1] autorelease]; + STAssertNil(filter, nil); + filter = [[[GTMLogMininumLevelFilter alloc] + initWithMinimumLevel:kGTMLoggerLevelUnknown - 1] autorelease]; + STAssertNil(filter, nil); +} + +- (void)testMaximumFilter { + id filter = [[[GTMLogMaximumLevelFilter alloc] + initWithMaximumLevel:kGTMLoggerLevelInfo] + autorelease]; STAssertNotNil(filter, nil); - STAssertFalse([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelUnknown], + STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelUnknown], nil); STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelDebug], - nil); + nil); STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelInfo], nil); - STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelError], + STAssertFalse([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelError], nil); - STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelAssert], + STAssertFalse([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelAssert], nil); - // Cannot exceed assert level filter - filter = [[[GTMLogCustomLevelFilter alloc] - initWithFilterLevel:kGTMLoggerLevelAssert + 1] autorelease]; + filter = [[[GTMLogMaximumLevelFilter alloc] + initWithMaximumLevel:kGTMLoggerLevelDebug] autorelease]; + STAssertNotNil(filter, nil); + STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelUnknown], + nil); + STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelDebug], + nil); + STAssertFalse([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelInfo], + nil); + STAssertFalse([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelError], + nil); + STAssertFalse([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelAssert], + nil); + + // Cannot exceed min/max levels filter + filter = [[[GTMLogMaximumLevelFilter alloc] + initWithMaximumLevel:kGTMLoggerLevelAssert + 1] autorelease]; + STAssertNil(filter, nil); + filter = [[[GTMLogMaximumLevelFilter alloc] + initWithMaximumLevel:kGTMLoggerLevelUnknown - 1] autorelease]; STAssertNil(filter, nil); } -- cgit v1.2.3