Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix compatibility with Xcode 6 beta #83

Closed
wants to merge 1 commit into from
Closed

Fix compatibility with Xcode 6 beta #83

wants to merge 1 commit into from

Conversation

rbsgn
Copy link

@rbsgn rbsgn commented Jun 5, 2014

Fixes #82

@modocache
Copy link
Member

+1, confirmed this pull request gets specs to build!

However, the Specta unit tests still fail on the latest version of Xcode, even with this change.

@modocache
Copy link
Member

Another issue on the latest version of Xcode: Instead of individual example names, -[SPTXCTestCase spt_runExampleAtIndex:], the invocation created in +[SPTXCTestCase testInvocations], shows up in the test navigator.

Because each of the invocations has the same name, only one appears, even when multiple examples are defined.

screen shot 2014-06-06 at 2 30 26 pm

@robb I'd recommend merging this PR, then creating separate issues for (1) unit test failures and (2) the above regression. If you're at WWDC you might want to speak to someone, or file a radar.

@rbsgn
Copy link
Author

rbsgn commented Jun 6, 2014

Uh oh, I was so concentrated on getting Specta to build so I missed this obvious bug, my fault.

As far as I remember XCTest team is not willing to support 3rd party tools relying on XCTest. I filed radar against XCTest last year and they said they will not going to fix it.

@dblock
Copy link
Contributor

dblock commented Jun 7, 2014

+1

@modocache
Copy link
Member

Another issue to note: because all tests now have the same name (i.e.: spt_runExampleAtIndex:), only the last test failure is actually shown as a red line in Xcode. Every previous failure is "overwritten" by the subsequent pass/fail. If the last test passes, no failures are displayed (although the test suite itself does fail).

@dblock
Copy link
Contributor

dblock commented Jun 9, 2014

This looks pretty elaborate. Why not this?

#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 80000 // __IPHONE_8_0
#else
#endif

@rbsgn
Copy link
Author

rbsgn commented Jun 9, 2014

@dblock well, you know… it looks good. However the more I think about the issue the more I want to suggest XCTest authors to add some kind of versioning to their framework. What do you think of this?

@dblock
Copy link
Contributor

dblock commented Jun 9, 2014

Yes, a #define could be useful. However isn't it always shipping with the SDK, and hence is in sync?

@rbsgn
Copy link
Author

rbsgn commented Jun 9, 2014

I guess you're right

@tonyarnold
Copy link
Contributor

Does this work on OS X? I see a reference to iOS 6 in the code, but I assume you're just testing for the existence of a selector that was present on both platforms?

@rbsgn
Copy link
Author

rbsgn commented Jun 10, 2014

There is no ref to iOS 6 but Xcode 6

@tonyarnold
Copy link
Contributor

You're right — my apologies. I read that wrong!

@petejkim
Copy link
Member

Xcode 6 support is being worked on in "https://github.com/specta/specta/tree/0.3-wip" branch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
5 participants