ios-snapshot-test-case icon indicating copy to clipboard operation
ios-snapshot-test-case copied to clipboard

[Feature Request] When run in RecordMode can we NOT XCFail the test (for example, use XCTExpectFailure)?

Open appleios opened this issue 4 years ago • 0 comments

Background

I created a script for our team that runs snapshot tests in record mode for iPhone/iPad with correctly selected devices and IOS version. But when FBSnapshotTestCase runs in record mode we hit the assert:

      assert(recordMode == false, message: "Test ran in record mode. Reference image is now saved. Disable record mode to perform an actual snapshot comparison!", file: file, line: line)

Which leads the whole Xcodebuild exiting with error code 65 with lots of red error lines.

When run using Xcode it is not a problem and is actually convenient (you can see which test were recorder). But when run for recording in one go - the output is too noisy.

Feature Request

Can we add a property shouldFailInRecordMode to the FBSnapshotTestCase so in SwiftSupport.swift the assert will change to:

      assert(!(recordMode && shouldFailInRecordMode), message: "Test ran in record mode. Reference image is now saved. Disable record mode to perform an actual snapshot comparison!", file: file, line: line)

appleios avatar Sep 02 '21 14:09 appleios