As part of #488 we need to know which tests are Objective-C and which tests are Swift. Unfortunately, at the point where we know we don't record that information, we only save an NSString: TestClass/TestName. The two BPConfiguration fields testCasesToRun and testCasesToSkiphere only save NSStrings as well.
I see two options for tackling this:
We can change the string that we save. E.g. for Objective-C we can still save TestClass/TestName but for Swift we could save TestClass/TestName(), which I think is fairly conventional.
We could add an isSwift field to BPTestCase and weave the change in type from NSString to BPTestCase throughout all the use cases of BPConfiguration's testCasesToSkip and testCasesToRun
I think No 1 is relatively easy but it might break consumers of Bluepill's output.
It might also be worth thinking how we want to change the tracing profile and JUnit test results to incorporate this information.
As part of #488 we need to know which tests are Objective-C and which tests are Swift. Unfortunately, at the point where we know we don't record that information, we only save an
NSString
:TestClass/TestName
. The twoBPConfiguration
fieldstestCasesToRun
andtestCasesToSkip
here only saveNSStrings
as well.I see two options for tackling this:
TestClass/TestName
but for Swift we could saveTestClass/TestName()
, which I think is fairly conventional.isSwift
field toBPTestCase
and weave the change in type fromNSString
toBPTestCase
throughout all the use cases ofBPConfiguration
'stestCasesToSkip
andtestCasesToRun
I think No 1 is relatively easy but it might break consumers of Bluepill's output.
It might also be worth thinking how we want to change the tracing profile and JUnit test results to incorporate this information.