GH-Unit for unit testing Objective-C code, why am I getting linking errors?
- by djhworld
Hi there, 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.o
  
  ld: 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
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.