Modified:
trunk/Source/Instrumentation/main.m
Log:
Implement support for running a single instrumentation case
Modified: trunk/Source/Instrumentation/main.m
==============================================================================
--- trunk/Source/Instrumentation/main.m (original)
+++ trunk/Source/Instrumentation/main.m Fri May 8 14:33:22 2009
@@ -37,8 +37,18 @@
PLInstrumentConsoleResultHandler *handler =
[[[PLInstrumentConsoleResultHandler alloc] init] autorelease];
PLInstrumentRunner *runner = [[[PLInstrumentRunner alloc]
initWithResultHandler: handler] autorelease];
- /* Run all instrument cases */
- [runner runAllCases];
+ if (argc > 1) {
+ /* Run one case */
+ id cls = objc_getClass(argv[1]);
+ if (cls == nil) {
+ fprintf(stderr, "No such class %s\n", argv[1]);
+ return EXIT_FAILURE;
+ }
+ [runner runCase: [[cls new] autorelease]];
+ } else {
+ /* Run all instrument cases */
+ [runner runAllCases];
+ }
[pool release];