I m trying to dive into the quite frankly terrible world of unit testing using Xcode (such a convoluted process it seems.)
Basically I have this test class, attempting to test my Show.h class
#import <GHUnit/GHUnit.h> #import "Show.h" @interface ShowTest : GHTestCase { } @end @implementation ShowTest - (void)testShowCreate { Show *s = [[Show alloc] init]; GHAssertNotNil(s,@"Was nil."); } @end
However when I try to build and run my tests it moans with this error: -
Undefined symbols: "_OBJC_CLASS_$_Show", referenced from:__objc_classrefs__DATA@0 in ShowTest.old: symbol(s) not found collect2: ld returned 1 exit status
Now I m presuming this is a linking error. I tried following every step in the instructions located here: -
http://github.com/gabriel/gh-unit/blob/master/README.md http://github.com/gabriel/gh-unit/blob/master/README.md
And step 2 of these instructions confused me: -
In the Target Tests Info window, General tab: Add a linked library, under Mac OS X 10.5 SDK section, select GHUnit.framework Add a linked library, select your project. Add a direct dependency, and select your project. (This will cause your application or framework to build before the test target.)
How am I supposed to add my project to the linked library list when all it accepts it .dylib, .framework and .o files. I m confused!
Thanks for any help that is received.