Skip to content

Commit

Permalink
Return ms elapsed from timing block.
Browse files Browse the repository at this point in the history
  • Loading branch information
tomtaylor committed Feb 15, 2013
1 parent 4319592 commit ac13dc0
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 3 deletions.
2 changes: 1 addition & 1 deletion StatsD/StatsD.h
Expand Up @@ -31,6 +31,6 @@
- (void)count:(NSString *)stat delta:(NSInteger)delta sampleRate:(float)sampleRate;
- (void)gauge:(NSString *)stat value:(NSInteger)value;
- (void)timing:(NSString *)stat ms:(NSInteger)ms;
- (void)timing:(NSString *)stat block:(void (^)(void))block;
- (NSUInteger)timing:(NSString *)stat block:(void (^)(void))block;

@end
3 changes: 2 additions & 1 deletion StatsD/StatsD.m
Expand Up @@ -72,12 +72,13 @@ - (void)timing:(NSString *)stat ms:(NSInteger)ms {
[self send:stat value:ms type:@"ms" sampleRate:1.0];
}

- (void)timing:(NSString *)stat block:(void (^)(void))block {
- (NSUInteger)timing:(NSString *)stat block:(void (^)(void))block {
NSTimeInterval start = [NSDate timeIntervalSinceReferenceDate];
block();
NSTimeInterval duration = [NSDate timeIntervalSinceReferenceDate] - start;
NSInteger ms = round(duration * 1000);
[self timing:stat ms:ms];
return ms;
}

- (void)send:(NSString *)stat
Expand Down
3 changes: 2 additions & 1 deletion StatsDTests/StatsDTests.m
Expand Up @@ -92,12 +92,13 @@ - (void)testTimingBlock
return [expectedData isEqualToData:data];
}]];

[mockClient timing:@"statsd.test" block:^{
NSUInteger ms = [mockClient timing:@"statsd.test" block:^{
NSDate *future = [NSDate dateWithTimeIntervalSinceNow:0.05];
[NSThread sleepUntilDate:future];
}];

[mockClient verify];
STAssertEquals((NSUInteger)51, ms, @"response is 51ms");
}

//- (void)testLive
Expand Down

0 comments on commit ac13dc0

Please sign in to comment.