Does KIF support tests written in C++

84 views
Skip to first unread message

automation

unread,
Oct 22, 2015, 3:20:16 PM10/22/15
to KIF iOS Automated Testing Framework
Hi,

When adding tests with KIF framework I only see an option for objective C or swift.  Does anyone know if the framework would support C++?


thanks

mike...@aol.com

unread,
Oct 26, 2015, 10:30:52 AM10/26/15
to KIF iOS Automated Testing Framework
KIF uses the XCTest APIs to launch and run tests. 
Can you use XCTest to write any C++ tests?
If you can, then I would think you could do the same in KIF. 

Wouldn't hurt if you could provide a small sample project to show what you're trying to do.

automation

unread,
Oct 28, 2015, 4:53:22 PM10/28/15
to KIF iOS Automated Testing Framework
I've got a simple c++ test



#import <KIF/KIF.h>


#include “testsquare.h”




@interface Tests : KIFTestCase



@end


@implementation Tests


- (void)setUp {

    [super setUp];

    }


- (void)tearDown {

    [super tearDown];

}


- (void)testExample {

    

    

     testPtr tsquare = test::Createsquare();

     testPtr child = test::Createsquare();

     tsquare->AddChild(child, SIZE_T_MAX);

    

     XCTAssert(tsquare->GetChildrenCount() == 1);

     

}


@end

automation

unread,
Oct 28, 2015, 4:56:03 PM10/28/15
to KIF iOS Automated Testing Framework
Error that i'm getting is 

In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/locale:192:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cstdlib:131:9: error: expected unqualified-id

using ::system;

        ^

In file included from /Users/test/Documents/iOS/Tests/test.mm:19:

In file included from /Users/test/Library/Developer/Xcode/DerivedData/frxusjxqwcj/Build/Products/Debug-iphonesimulator/include/KIF/KIF.h:12:

/Users/test/Library/Developer/Xcode/DerivedData/fwcj/Build/Products/Debug-iphonesimulator/include/KIF/KIFSystemTestActor.h:13:16: note: expanded from macro 'system'

#define system KIFActorWithClass(KIFSystemTestActor)

               ^

In file included from /Users/test/Documents/iOS/Tests/test.mm:19:

In file included from /Users/test/Library/Developer/Xcode/DerivedData/frxzxqwcj/Build/Products/Debug-iphonesimulator/include/KIF/KIF.h:10:

/Users/test/Library/Developer/Xcode/DerivedData/frxusqwcj/Build/Products/Debug-iphonesimulator/include/KIF/KIFTestActor.h:18:34: note: expanded from macro 'KIFActorWithClass'

#define KIFActorWithClass(clazz) [clazz actorInFile:[NSString stringWithUTF8String:__FILE__] atLine:__LINE__ delegate:self]

                                 ^

1 error generated.

Tony Mann

unread,
Oct 28, 2015, 5:00:48 PM10/28/15
to kif-fr...@googlegroups.com
Oh boy, the “system" macro is biting us again. See if you can comment out the macro from KIFSystemTestActor.h to get up and running.

Tony

--
You received this message because you are subscribed to the Google Groups "KIF iOS Automated Testing Framework" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kif-framewor...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

automation

unread,
Oct 28, 2015, 5:36:06 PM10/28/15
to KIF iOS Automated Testing Framework
getting the same error when commenting out the following in KIFSystemTestActor.h


//#define system KIFActorWithClass(KIFSystemTestActor)


@interface KIFSystemTestActor : KIFTestActor

automation

unread,
Oct 28, 2015, 6:00:07 PM10/28/15
to KIF iOS Automated Testing Framework
actually I'm getting a this error after commenting out the macro

Undefined symbols for architecture i386:

  "_NSStringFromCGPoint", referenced from:

      ___35-[KIFUITestActor tapScreenAtPoint:]_block_invoke in libKIF.a(KIFUITestActor.o)

  "_OBJC_CLASS_$_UIAccessibilityElement", referenced from:

      l_OBJC_$_CATEGORY_UIAccessibilityElement_$_KIFAdditions in libKIF.a(UIAccessibilityElement-KIFAdditions.o)

      objc-class-ref in libKIF.a(UIAccessibilityElement-KIFAdditions.o)

      objc-class-ref in libKIF.a(KIFUITestActor.o)

      objc-class-ref in libKIF.a(UIView-KIFAdditions.o)

      objc-class-ref in libKIF.a(KIFUITestActor-IdentifierTests.o)

      objc-class-ref in libKIF.a(KIFUITestActor-ConditionalTests.o)

  "_OBJC_CLASS_$_UIApplication", referenced from:

      l_OBJC_$_CATEGORY_UIApplication_$_KIFAdditions in libKIF.a(UIApplication-KIFAdditions.o)

      objc-class-ref in libKIF.a(KIFTestActor.o)

      objc-class-ref in libKIF.a(XCTestCase-KIFAdditions.o)

      objc-class-ref in libKIF.a(KIFSystemTestActor.o)

      objc-class-ref in libKIF.a(UIAccessibilityElement-KIFAdditions.o)

      objc-class-ref in libKIF.a(KIFUITestActor.o)

      objc-class-ref in libKIF.a(UIView-KIFAdditions.o)

      ...

  "_OBJC_CLASS_$_UICollectionView", referenced from:

      objc-class-ref in libKIF.a(KIFUITestActor.o)

      objc-class-ref in libKIF.a(UIView-KIFAdditions.o)

  "_OBJC_CLASS_$_UIColor", referenced from:

      objc-class-ref in libKIF.a(UIView-KIFAdditions.o)

  "_OBJC_CLASS_$_UIControl", referenced from:

      objc-class-ref in libKIF.a(UIView-KIFAdditions.o)

      objc-class-ref in libKIF.a(UIView-Debugging.o)

  "_OBJC_CLASS_$_UIDatePicker", referenced from:

      objc-class-ref in libKIF.a(UIView-KIFAdditions.o)

  "_OBJC_CLASS_$_UIDevice", referenced from:

      objc-class-ref in libKIF.a(KIFSystemTestActor.o)

  "_OBJC_CLASS_$_UIEvent", referenced from:

      l_OBJC_$_CATEGORY_UIEvent_$_KIFAdditions in libKIF.a(UIEvent+KIFAdditions.o)

  "_OBJC_CLASS_$_UIImageView", referenced from:

      objc-class-ref in libKIF.a(UIView-Debugging.o)

  "_OBJC_CLASS_$_UIKeyboardImpl", referenced from:

      objc-class-ref in libKIF.a(KIFTypist.o)

  "_OBJC_CLASS_$_UILabel", referenced from:

      objc-class-ref in libKIF.a(KIFUITestActor.o)

  "_OBJC_CLASS_$_UINavigationBar", referenced from:

      objc-class-ref in libKIF.a(UIView-KIFAdditions.o)

  "_OBJC_CLASS_$_UIScreen", referenced from:

      objc-class-ref in libKIF.a(KIFTypist.o)

  "_OBJC_CLASS_$_UIScrollView", referenced from:

      l_OBJC_$_CATEGORY_UIScrollView_$_KIFAdditions in libKIF.a(UIScrollView-KIFAdditions.o)

      objc-class-ref in libKIF.a(UIAccessibilityElement-KIFAdditions.o)

  "_OBJC_CLASS_$_UISearchBar", referenced from:

      objc-class-ref in libKIF.a(KIFUITestActor.o)

      objc-class-ref in libKIF.a(KIFUITestActor-IdentifierTests.o)

  "_OBJC_CLASS_$_UISlider", referenced from:

      objc-class-ref in libKIF.a(KIFUITestActor.o)

      objc-class-ref in libKIF.a(KIFUITestActor-IdentifierTests.o)

  "_OBJC_CLASS_$_UISwitch", referenced from:

      objc-class-ref in libKIF.a(KIFUITestActor.o)

      objc-class-ref in libKIF.a(KIFUITestActor-IdentifierTests.o)

  "_OBJC_CLASS_$_UITableView", referenced from:

      objc-class-ref in libKIF.a(KIFUITestActor.o)

      objc-class-ref in libKIF.a(UIView-KIFAdditions.o)

      l_OBJC_$_CATEGORY_UITableView_$_KIFAdditions in libKIF.a(UITableView-KIFAdditions.o)

  "_OBJC_CLASS_$_UITableViewCell", referenced from:

      objc-class-ref in libKIF.a(UIAccessibilityElement-KIFAdditions.o)

  "_OBJC_CLASS_$_UITapGestureRecognizer", referenced from:

      objc-class-ref in libKIF.a(UIView-KIFAdditions.o)

  "_OBJC_CLASS_$_UITextField", referenced from:

      objc-class-ref in libKIF.a(KIFUITestActor.o)

  "_OBJC_CLASS_$_UITextView", referenced from:

      objc-class-ref in libKIF.a(KIFUITestActor.o)

  "_OBJC_CLASS_$_UITouch", referenced from:

      l_OBJC_$_CATEGORY_UITouch_$_KIFAdditions in libKIF.a(UITouch-KIFAdditions.o)

      anon in libKIF.a(UITouch-KIFAdditions.o)

      objc-class-ref in libKIF.a(UIView-KIFAdditions.o)

      objc-class-ref in libKIF.a(UITableView-KIFAdditions.o)

  "_OBJC_CLASS_$_UIView", referenced from:

      objc-class-ref in libKIF.a(UIAccessibilityElement-KIFAdditions.o)

      objc-class-ref in libKIF.a(KIFUITestActor.o)

      l_OBJC_$_CATEGORY_UIView_$_KIFAdditions in libKIF.a(UIView-KIFAdditions.o)

      l_OBJC_$_CATEGORY_UIView_$_Debugging in libKIF.a(UIView-Debugging.o)

  "_OBJC_CLASS_$_UIWebView", referenced from:

      objc-class-ref in libKIF.a(UIView-KIFAdditions.o)

  "_UIAccessibilityTraitAdjustable", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitAllowsDirectInteraction", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitButton", referenced from:

      -[KIFUITestActor setOn:forSwitchWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

      -[KIFUITestActor setOn:forSwitchWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitCausesPageTurn", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitHeader", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitImage", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitKeyboardKey", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitLink", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitNone", referenced from:

      +[UIAccessibilityElement(KIFAdditions) accessibilityElementWithLabel:value:traits:error:] in libKIF.a(UIAccessibilityElement-KIFAdditions.o)

      -[KIFUITestActor waitForViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor waitForTappableViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor waitForAbsenceOfViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor tapViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor longPressViewWithAccessibilityLabel:duration:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor longPressViewWithAccessibilityLabel:value:duration:] in libKIF.a(KIFUITestActor.o)

      ...

      +[UIAccessibilityElement(KIFAdditions) accessibilityElementWithLabel:value:traits:error:] in libKIF.a(UIAccessibilityElement-KIFAdditions.o)

      -[KIFUITestActor waitForViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor waitForTappableViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor waitForAbsenceOfViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor tapViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor longPressViewWithAccessibilityLabel:duration:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor longPressViewWithAccessibilityLabel:value:duration:] in libKIF.a(KIFUITestActor.o)

      ...

      +[UIAccessibilityElement(KIFAdditions) accessibilityElementWithLabel:value:traits:error:] in libKIF.a(UIAccessibilityElement-KIFAdditions.o)

      -[KIFUITestActor waitForViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor waitForTappableViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor waitForAbsenceOfViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor tapViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor longPressViewWithAccessibilityLabel:duration:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor longPressViewWithAccessibilityLabel:value:duration:] in libKIF.a(KIFUITestActor.o)

      ...

      +[UIAccessibilityElement(KIFAdditions) accessibilityElementWithLabel:value:traits:error:] in libKIF.a(UIAccessibilityElement-KIFAdditions.o)

      -[KIFUITestActor waitForViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor waitForTappableViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor waitForAbsenceOfViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor tapViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor longPressViewWithAccessibilityLabel:duration:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor longPressViewWithAccessibilityLabel:value:duration:] in libKIF.a(KIFUITestActor.o)

      ...

      +[UIAccessibilityElement(KIFAdditions) accessibilityElementWithLabel:value:traits:error:] in libKIF.a(UIAccessibilityElement-KIFAdditions.o)

      -[KIFUITestActor waitForViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor waitForTappableViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor waitForAbsenceOfViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor tapViewWithAccessibilityLabel:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor longPressViewWithAccessibilityLabel:duration:] in libKIF.a(KIFUITestActor.o)

      -[KIFUITestActor longPressViewWithAccessibilityLabel:value:duration:] in libKIF.a(KIFUITestActor.o)

      ...

  "_UIAccessibilityTraitNotEnabled", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitPlaysSound", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitSearchField", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitSelected", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitStartsMediaSession", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitStaticText", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitSummaryElement", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIAccessibilityTraitUpdatesFrequently", referenced from:

      -[UIView(Debugging) printAccessibilityTraits:] in libKIF.a(UIView-Debugging.o)

  "_UIApplicationDidReceiveMemoryWarningNotification", referenced from:

      -[KIFSystemTestActor simulateMemoryWarning] in libKIF.a(KIFSystemTestActor.o)

  "_UIGraphicsBeginImageContextWithOptions", referenced from:

      -[UIApplication(KIFAdditions) writeScreenshotForLine:inFile:description:error:] in libKIF.a(UIApplication-KIFAdditions.o)

  "_UIGraphicsEndImageContext", referenced from:

      -[UIApplication(KIFAdditions) writeScreenshotForLine:inFile:description:error:] in libKIF.a(UIApplication-KIFAdditions.o)

  "_UIGraphicsGetCurrentContext", referenced from:

      -[UIApplication(KIFAdditions) writeScreenshotForLine:inFile:description:error:] in libKIF.a(UIApplication-KIFAdditions.o)

  "_UIGraphicsGetImageFromCurrentImageContext", referenced from:

      -[UIApplication(KIFAdditions) writeScreenshotForLine:inFile:description:error:] in libKIF.a(UIApplication-KIFAdditions.o)

  "_UIImagePNGRepresentation", referenced from:

      -[UIApplication(KIFAdditions) writeScreenshotForLine:inFile:description:error:] in libKIF.a(UIApplication-KIFAdditions.o)

  "_UIKeyboardDidChangeFrameNotification", referenced from:

      -[KIFTypist registerForNotifications] in libKIF.a(KIFTypist.o)

  "_UIKeyboardFrameEndUserInfoKey", referenced from:

      ___37-[KIFTypist registerForNotifications]_block_invoke in libKIF.a(KIFTypist.o)

ld: symbol(s) not found for architecture i386

clang: error: linker command failed with exit code 1 (use -v to see invocation)

Reply all
Reply to author
Forward
0 new messages