diff options
author | thomasvl@gmail.com <thomasvl@gmail.com@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3> | 2008-10-22 19:16:19 +0000 |
---|---|---|
committer | thomasvl@gmail.com <thomasvl@gmail.com@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3> | 2008-10-22 19:16:19 +0000 |
commit | 11938e47355bfbf3b81f1ff5b15f1222b83d4f47 (patch) | |
tree | 3794c78559472e4b2efe5eabc0e094d7c14a9743 /UnitTesting/GTMTestTimer.h | |
parent | 90eba8f973c0b77f36dc7084163ff0d43675a1a8 (diff) |
- GTM_INLINE will make sure a function gets inlined, and provides a consistent
way for all GTM code to do it.
- Added GTMDebugThreadValidation to allow you to enforce the fact that your
code must run in the main thread in DEBUG builds.
- Updated some internals of the iPhone unittesting so it doesn't double print
the test descriptions, file names, or lines numbers of a test failure line.
Also includes the test names in the error output.
- Changed the xcconfigs so that know it's easier to set different settings at
the different levels and not accidentally overwrite settings set at lower
levels in the "settings collapse". Also tightened up warnings significantly.
- Changed how gtm_unitTestExposedBindingsTestValues works. If you have an
implementation of gtm_unitTestExposedBindingsTestValues in your own code
you will need to update to the new way of calling. See implementations in
GTMNSObject+BindingUnitTesting.m for details.
- Added support for grabbing the build number for a particular OS in
GTMSystemVersion and easily comparing it to known build numbers, and switched
some types from in GTMSystemVersion from "int" to SInt32 to make 64 bit work
better.
- Added support for SnowLeopard (10A96). We build cleanly with the 10.6 SDKs and
all radar checks were updated accordingly. Build All script was also updated
to build on SnowLeopard if you have the SDK available.
- Turned off building ppc64 GTM because the SnowLeopard SDK currently
doesn't have ppc64 support, so SenTestCase isn't defined. This makes it
impossible to build the ppc64 10.5 config on SnowLeopard. We have left the
setting in the xcconfig for those of you who need it, but have disabled
it in the GTM project settings.
- Turned on stack smashing protection on the debug builds for all Leopard
and above.
- Added ability to easily do leak checking by defining the GTM_ENABLE_LEAKS
environment variable. It isn't on by default because several of Apple's
frameworks leak. You can work around these false positives by using the
GTM_LEAKS_SYMBOLS_TO_IGNORE environment variable. Also if you turn on leaks
make sure to turn off zombies by defining the GTM_DISABLE_ZOMBIES variable,
otherwise every memory allocation you do will look like a leak.
Diffstat (limited to 'UnitTesting/GTMTestTimer.h')
-rw-r--r-- | UnitTesting/GTMTestTimer.h | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/UnitTesting/GTMTestTimer.h b/UnitTesting/GTMTestTimer.h index 200f9b1..6c5fc55 100644 --- a/UnitTesting/GTMTestTimer.h +++ b/UnitTesting/GTMTestTimer.h @@ -37,7 +37,7 @@ typedef struct { } GTMTestTimer; // Create a test timer -FOUNDATION_STATIC_INLINE GTMTestTimer *GTMTestTimerCreate(void) { +GTM_INLINE GTMTestTimer *GTMTestTimerCreate(void) { GTMTestTimer *t = calloc(sizeof(GTMTestTimer), 1); if (t) { if (mach_timebase_info(&t->time_base_info_) == KERN_SUCCESS) { @@ -53,12 +53,12 @@ FOUNDATION_STATIC_INLINE GTMTestTimer *GTMTestTimerCreate(void) { } // Retain a timer -FOUNDATION_STATIC_INLINE void GTMTestTimerRetain(GTMTestTimer *t) { +GTM_INLINE void GTMTestTimerRetain(GTMTestTimer *t) { t->retainCount_ += 1; } // Release a timer. When release count hits zero, we free it. -FOUNDATION_STATIC_INLINE void GTMTestTimerRelease(GTMTestTimer *t) { +GTM_INLINE void GTMTestTimerRelease(GTMTestTimer *t) { t->retainCount_ -= 1; if (t->retainCount_ == 0) { free(t); @@ -67,13 +67,13 @@ FOUNDATION_STATIC_INLINE void GTMTestTimerRelease(GTMTestTimer *t) { // Starts a timer timing. Specifically starts a new split. If the timer is // currently running, it resets the start time of the current split. -FOUNDATION_STATIC_INLINE void GTMTestTimerStart(GTMTestTimer *t) { +GTM_INLINE void GTMTestTimerStart(GTMTestTimer *t) { t->start_ = mach_absolute_time(); t->running_ = true; } // Stops a timer and returns split time (time from last start) in nanoseconds. -FOUNDATION_STATIC_INLINE uint64_t GTMTestTimerStop(GTMTestTimer *t) { +GTM_INLINE uint64_t GTMTestTimerStop(GTMTestTimer *t) { uint64_t now = mach_absolute_time(); t->running_ = false; ++t->iterations_; @@ -85,7 +85,7 @@ FOUNDATION_STATIC_INLINE uint64_t GTMTestTimerStop(GTMTestTimer *t) { // returns the current timer elapsed time (combined value of all splits, plus // current split if the timer is running) in nanoseconds. -FOUNDATION_STATIC_INLINE double GTMTestTimerGetNanoseconds(GTMTestTimer *t) { +GTM_INLINE double GTMTestTimerGetNanoseconds(GTMTestTimer *t) { uint64_t total = t->elapsed_; if (t->running_) { total += mach_absolute_time() - t->start_; @@ -96,30 +96,30 @@ FOUNDATION_STATIC_INLINE double GTMTestTimerGetNanoseconds(GTMTestTimer *t) { // Returns the current timer elapsed time (combined value of all splits, plus // current split if the timer is running) in seconds. -FOUNDATION_STATIC_INLINE double GTMTestTimerGetSeconds(GTMTestTimer *t) { +GTM_INLINE double GTMTestTimerGetSeconds(GTMTestTimer *t) { return GTMTestTimerGetNanoseconds(t) * 0.000000001; } // Returns the current timer elapsed time (combined value of all splits, plus // current split if the timer is running) in milliseconds. -FOUNDATION_STATIC_INLINE double GTMTestTimerGetMilliseconds(GTMTestTimer *t) { +GTM_INLINE double GTMTestTimerGetMilliseconds(GTMTestTimer *t) { return GTMTestTimerGetNanoseconds(t) * 0.000001; } // Returns the current timer elapsed time (combined value of all splits, plus // current split if the timer is running) in microseconds. -FOUNDATION_STATIC_INLINE double GTMTestTimerGetMicroseconds(GTMTestTimer *t) { +GTM_INLINE double GTMTestTimerGetMicroseconds(GTMTestTimer *t) { return GTMTestTimerGetNanoseconds(t) * 0.001; } // Returns the number of splits (start-stop) cycles recorded. // GTMTestTimerGetSeconds()/GTMTestTimerGetIterations() gives you an average // of all your splits. -FOUNDATION_STATIC_INLINE NSUInteger GTMTestTimerGetIterations(GTMTestTimer *t) { +GTM_INLINE NSUInteger GTMTestTimerGetIterations(GTMTestTimer *t) { return t->iterations_; } // Returns true if the timer is running. -FOUNDATION_STATIC_INLINE bool GTMTestTimerIsRunning(GTMTestTimer *t) { +GTM_INLINE bool GTMTestTimerIsRunning(GTMTestTimer *t) { return t->running_; } |