aboutsummaryrefslogtreecommitdiff
path: root/Foundation/GTMLoggerTest.m
diff options
context:
space:
mode:
authorGravatar gtm.daemon <gtm.daemon@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3>2009-12-11 17:04:57 +0000
committerGravatar gtm.daemon <gtm.daemon@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3>2009-12-11 17:04:57 +0000
commit7252815552530ba1f552d1a48d3fae85ecf67b45 (patch)
treefdf555e71fb5939583cd9ff9b41ef7675b330482 /Foundation/GTMLoggerTest.m
parent2f99c0cb93316c3793582d1ed6769f031adffb3f (diff)
[Author: thomasvl]
Some style cleanup. R=dmaclach DELTA=9 (3 added, 1 deleted, 5 changed)
Diffstat (limited to 'Foundation/GTMLoggerTest.m')
-rw-r--r--Foundation/GTMLoggerTest.m135
1 files changed, 68 insertions, 67 deletions
diff --git a/Foundation/GTMLoggerTest.m b/Foundation/GTMLoggerTest.m
index 0cd7dc7..d1602f4 100644
--- a/Foundation/GTMLoggerTest.m
+++ b/Foundation/GTMLoggerTest.m
@@ -6,9 +6,9 @@
// Licensed under the Apache License, Version 2.0 (the "License"); you may not
// use this file except in compliance with the License. You may obtain a copy
// of the License at
-//
+//
// http://www.apache.org/licenses/LICENSE-2.0
-//
+//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -115,24 +115,24 @@
- (void)testCreation {
GTMLogger *logger1 = nil, *logger2 = nil;
-
+
logger1 = [GTMLogger sharedLogger];
logger2 = [GTMLogger sharedLogger];
-
+
STAssertTrue(logger1 == logger2, nil);
-
+
STAssertNotNil([logger1 writer], nil);
STAssertNotNil([logger1 formatter], nil);
STAssertNotNil([logger1 filter], nil);
-
+
// Get a new instance; not the shared instance
logger2 = [GTMLogger standardLogger];
-
+
STAssertTrue(logger1 != logger2, nil);
STAssertNotNil([logger2 writer], nil);
STAssertNotNil([logger2 formatter], nil);
STAssertNotNil([logger2 filter], nil);
-
+
// Set the new instance to be the shared logger.
[GTMLogger setSharedLogger:logger2];
STAssertTrue(logger2 == [GTMLogger sharedLogger], nil);
@@ -144,10 +144,10 @@
STAssertNotNil([GTMLogger sharedLogger], nil);
STAssertTrue(logger2 != [GTMLogger sharedLogger], nil);
STAssertTrue(logger1 != [GTMLogger sharedLogger], nil);
-
+
GTMLogger *logger = [GTMLogger logger];
STAssertNotNil(logger, nil);
-
+
logger = [GTMLogger standardLoggerWithStderr];
STAssertNotNil(logger, nil);
@@ -158,25 +158,25 @@
- (void)testAccessors {
GTMLogger *logger = [GTMLogger standardLogger];
STAssertNotNil(logger, nil);
-
+
STAssertNotNil([logger writer], nil);
STAssertNotNil([logger formatter], nil);
STAssertNotNil([logger filter], nil);
-
+
[logger setWriter:nil];
[logger setFormatter:nil];
[logger setFilter:nil];
-
+
// These attributes should NOT be nil. They should be set to their defaults.
STAssertNotNil([logger writer], nil);
STAssertNotNil([logger formatter], nil);
- STAssertNotNil([logger filter], nil);
+ STAssertNotNil([logger filter], nil);
}
- (void)testLogger {
ArrayWriter *writer = [[[ArrayWriter alloc] init] autorelease];
IgnoreFilter *filter = [[[IgnoreFilter alloc] init] autorelease];
-
+
// We actually only need the array writer instance for this unit test to pass,
// but we combine that writer with a stdout writer for two reasons:
//
@@ -186,21 +186,21 @@
// We also include in the array an object that is not a GTMLogWriter to make
// sure that we don't crash when presented with an array of non-GTMLogWriters.
NSArray *writers = [NSArray arrayWithObjects:writer,
- [NSFileHandle fileHandleWithStandardOutput],
+ [NSFileHandle fileHandleWithStandardOutput],
@"blah", nil];
-
+
GTMLogger *logger = [GTMLogger loggerWithWriter:writers
formatter:nil // basic formatter
filter:filter];
-
+
STAssertNotNil(logger, nil);
-
+
// Log a few messages to test with
[logger logInfo:@"hi"];
[logger logDebug:@"foo"];
[logger logError:@"blah"];
[logger logAssert:@"baz"];
-
+
// Makes sure the messages got logged
NSArray *messages = [writer messages];
STAssertNotNil(messages, nil);
@@ -209,7 +209,7 @@
STAssertEqualObjects([messages objectAtIndex:1], @"foo", nil);
STAssertEqualObjects([messages objectAtIndex:2], @"blah", nil);
STAssertEqualObjects([messages objectAtIndex:3], @"baz", nil);
-
+
// Log a message that should be ignored, and make sure it did NOT get logged
[logger logInfo:@"please ignore this"];
messages = [writer messages];
@@ -219,11 +219,11 @@
STAssertEqualObjects([messages objectAtIndex:1], @"foo", nil);
STAssertEqualObjects([messages objectAtIndex:2], @"blah", nil);
STAssertEqualObjects([messages objectAtIndex:3], @"baz", nil);
-
+
// Change the formatter to our "dumb formatter"
id<GTMLogFormatter> formatter = [[[DumbFormatter alloc] init] autorelease];
[logger setFormatter:formatter];
-
+
[logger logInfo:@"bleh"];
messages = [writer messages];
STAssertNotNil(messages, nil);
@@ -237,15 +237,15 @@
}
- (void)testConvenienceMacros {
- ArrayWriter *writer = [[[ArrayWriter alloc] init] autorelease];
+ ArrayWriter *writer = [[[ArrayWriter alloc] init] autorelease];
NSArray *writers = [NSArray arrayWithObjects:writer,
[NSFileHandle fileHandleWithStandardOutput], nil];
-
+
[[GTMLogger sharedLogger] setWriter:writers];
-
+
// Here we log a message using a convenience macro, which should log the
- // message along with the name of the function it was called from. Here we
- // test to make sure the logged message does indeed contain the name of the
+ // message along with the name of the function it was called from. Here we
+ // test to make sure the logged message does indeed contain the name of the
// current function "testConvenienceMacros".
GTMLoggerError(@"test ========================");
STAssertEquals([[writer messages] count], (NSUInteger)1, nil);
@@ -253,17 +253,17 @@
[[[writer messages] objectAtIndex:0] rangeOfString:@"testConvenienceMacros"];
STAssertTrue(rangeOfFuncName.location != NSNotFound, nil);
[writer clear];
-
+
[[GTMLogger sharedLogger] setFormatter:nil];
-
+
GTMLoggerInfo(@"test %d", 1);
GTMLoggerDebug(@"test %d", 2);
GTMLoggerError(@"test %d", 3);
GTMLoggerAssert(@"test %d", 4);
-
+
NSArray *messages = [writer messages];
STAssertNotNil(messages, nil);
-
+
#ifdef DEBUG
STAssertEquals([messages count], (NSUInteger)4, nil);
STAssertEqualObjects([messages objectAtIndex:0], @"test 1", nil);
@@ -276,53 +276,54 @@
STAssertEqualObjects([messages objectAtIndex:0], @"test 3", nil);
STAssertEqualObjects([messages objectAtIndex:1], @"test 4", nil);
#endif
-
+
}
- (void)testFileHandleWriter {
NSFileHandle *fh = nil;
-
+
fh = [NSFileHandle fileHandleForWritingAtPath:path_];
STAssertNil(fh, nil);
-
+
fh = [NSFileHandle fileHandleForLoggingAtPath:path_ mode:0644];
STAssertNotNil(fh, nil);
-
+
[fh logMessage:@"test 0" level:kGTMLoggerLevelUnknown];
[fh logMessage:@"test 1" level:kGTMLoggerLevelDebug];
[fh logMessage:@"test 2" level:kGTMLoggerLevelInfo];
[fh logMessage:@"test 3" level:kGTMLoggerLevelError];
[fh logMessage:@"test 4" level:kGTMLoggerLevelAssert];
[fh closeFile];
-
+
+ NSError *err = nil;
NSString *contents = [NSString stringWithContentsOfFile:path_
encoding:NSUTF8StringEncoding
- error:nil];
-
+ error:&err];
+ STAssertNotNil(contents, @"Error loading log file: %@", err);
STAssertEqualObjects(@"test 0\ntest 1\ntest 2\ntest 3\ntest 4\n", contents, nil);
}
- (void)testLoggerAdapterWriter {
ArrayWriter *writer = [[[ArrayWriter alloc] init] autorelease];
STAssertNotNil(writer, nil);
-
+
GTMLogger *sublogger = [GTMLogger loggerWithWriter:writer
formatter:nil
filter:nil];
STAssertNotNil(sublogger, nil);
-
+
GTMLogger *logger = [GTMLogger loggerWithWriter:sublogger
formatter:nil
filter:nil];
STAssertNotNil(logger, nil);
-
+
// Log a few messages to test with
[logger logInfo:@"hi"];
[logger logDebug:@"foo"];
[logger logError:@"blah"];
[logger logAssert:@"assert"];
-
+
// Makes sure the messages got logged
NSArray *messages = [writer messages];
STAssertNotNil(messages, nil);
@@ -351,27 +352,27 @@
id<GTMLogFormatter> fmtr = [[[GTMLogBasicFormatter alloc] init] autorelease];
STAssertNotNil(fmtr, nil);
NSString *msg = nil;
-
+
msg = [self stringFromFormatter:fmtr
level:kGTMLoggerLevelDebug
format:@"test"];
STAssertEqualObjects(msg, @"test", nil);
-
+
msg = [self stringFromFormatter:fmtr
level:kGTMLoggerLevelDebug
format:@"test %d", 1];
STAssertEqualObjects(msg, @"test 1", nil);
-
+
msg = [self stringFromFormatter:fmtr
level:kGTMLoggerLevelDebug
format:@"test %@", @"foo"];
STAssertEqualObjects(msg, @"test foo", nil);
-
+
msg = [self stringFromFormatter:fmtr
level:kGTMLoggerLevelDebug
format:@""];
STAssertEqualObjects(msg, @"", nil);
-
+
msg = [self stringFromFormatter:fmtr
level:kGTMLoggerLevelDebug
format:@" ", 1];
@@ -381,7 +382,7 @@
- (void)testStandardFormatter {
id<GTMLogFormatter> fmtr = [[[GTMLogStandardFormatter alloc] init] autorelease];
STAssertNotNil(fmtr, nil);
-
+
NSString * kFormatBasePattern;
#if GTM_MACOS_SDK
if ([GTMSystemVersion isSnowLeopardOrGreater]) {
@@ -393,31 +394,31 @@
kFormatBasePattern =
@"[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}\\.[0-9]{3} (otest)\\[[0-9]+/0x[0-9a-f]+\\] \\[lvl=[0-3]\\] \\(no func\\) ";
}
-#else // GTM_MACOS_SDK
+#else // GTM_MACOS_SDK
// E.g. 2008-01-04 09:16:26.906 otest[5567/0xa07d0f60] [lvl=1] (no func) test
kFormatBasePattern =
@"[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}\\.[0-9]{3} (GTMiPhoneTest)\\[[0-9]+/0x[0-9a-f]+\\] \\[lvl=[0-3]\\] \\(no func\\) ";
#endif // GTM_MACOS_SDK
-
+
NSString *msg = nil;
-
+
msg = [self stringFromFormatter:fmtr
level:kGTMLoggerLevelDebug
format:@"test"];
STAssertTrue([msg gtm_matchesPattern:[kFormatBasePattern stringByAppendingString:@"test"]], nil);
-
+
msg = [self stringFromFormatter:fmtr
level:kGTMLoggerLevelError
format:@"test %d", 1];
STAssertTrue([msg gtm_matchesPattern:[kFormatBasePattern stringByAppendingString:@"test 1"]], nil);
-
+
msg = [self stringFromFormatter:fmtr
level:kGTMLoggerLevelInfo
format:@"test %@", @"hi"];
STAssertTrue([msg gtm_matchesPattern:[kFormatBasePattern stringByAppendingString:@"test hi"]], nil);
-
+
msg = [self stringFromFormatter:fmtr
level:kGTMLoggerLevelUnknown
format:@"test"];
@@ -427,45 +428,45 @@
- (void)testNoFilter {
id<GTMLogFilter> filter = [[[GTMLogNoFilter alloc] init] autorelease];
STAssertNotNil(filter, nil);
-
+
STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelUnknown], nil);
STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelDebug], nil);
STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelInfo], nil);
STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelError], nil);
STAssertTrue([filter filterAllowsMessage:@"hi" level:kGTMLoggerLevelAssert], nil);
STAssertTrue([filter filterAllowsMessage:@"" level:kGTMLoggerLevelDebug], nil);
- STAssertTrue([filter filterAllowsMessage:nil level:kGTMLoggerLevelDebug], nil);
+ STAssertTrue([filter filterAllowsMessage:nil level:kGTMLoggerLevelDebug], nil);
}
- (void)testFileHandleCreation {
NSFileHandle *fh = nil;
-
+
fh = [NSFileHandle fileHandleForLoggingAtPath:nil mode:0644];
STAssertNil(fh, nil);
-
+
fh = [NSFileHandle fileHandleForLoggingAtPath:path_ mode:0644];
STAssertNotNil(fh, nil);
-
+
[fh logMessage:@"test 1" level:kGTMLoggerLevelInfo];
[fh logMessage:@"test 2" level:kGTMLoggerLevelInfo];
[fh logMessage:@"test 3" level:kGTMLoggerLevelInfo];
[fh closeFile];
-
+
// Re-open file and make sure our log messages get appended
fh = [NSFileHandle fileHandleForLoggingAtPath:path_ mode:0644];
STAssertNotNil(fh, nil);
-
+
[fh logMessage:@"test 4" level:kGTMLoggerLevelInfo];
[fh logMessage:@"test 5" level:kGTMLoggerLevelInfo];
[fh logMessage:@"test 6" level:kGTMLoggerLevelInfo];
[fh closeFile];
-
+
+ NSError *err = nil;
NSString *contents = [NSString stringWithContentsOfFile:path_
encoding:NSUTF8StringEncoding
- error:NULL];
-
- STAssertNotNil(contents, nil);
- STAssertEqualObjects(@"test 1\ntest 2\ntest 3\ntest 4\ntest 5\ntest 6\n", contents, nil);
+ error:&err];
+ STAssertNotNil(contents, @"Error loading log file: %@", err);
+ STAssertEqualObjects(@"test 1\ntest 2\ntest 3\ntest 4\ntest 5\ntest 6\n", contents, nil);
}
@end