ios: FlowEngineTests catches up with the AI opt-in flow (#877) (#980)
The setup flow's extras chip became 'Keep both on' and gained the AI opt-in step; the native twin test still tapped 'Keep everything on' and stalled — main's swift test has been red since. Mirrors the updated JS twin exactly (tap the new label, answer the AI ask with Not now; the extras record and no-setFeature assertions still hold).
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
1 file changed,
+3
−1
ios/LChatCore/Tests/LChatCoreTests/FlowEngineTests.swift+3 −1
diff --git a/ios/LChatCore/Tests/LChatCoreTests/FlowEngineTests.swift b/ios/LChatCore/Tests/LChatCoreTests/FlowEngineTests.swift| index 38ce7a6..437d955 100644 |
| --- a/ios/LChatCore/Tests/LChatCoreTests/FlowEngineTests.swift |
| +++ b/ios/LChatCore/Tests/LChatCoreTests/FlowEngineTests.swift |
| @@ -132,9 +132,11 @@ final class FlowEngineTests: XCTestCase { |
| await io.tap("Members can invite people") |
| // The extras trio (mirrors the JS native run): the one-tap common path |
| // records and writes no gates — defaults are already on server-side. |
| - await io.tap("Keep everything on") |
| + await io.tap("Keep both on") |
| XCTAssertTrue(io.records.contains { $0.step == "extras" && $0.value == "all-on" }) |
| XCTAssertFalse(io.verbLog.contains { $0.0 == "setFeature" }) |
| + // The AI opt-in step (#877) runs under native too — mirror the JS twin. |
| + await io.tap("Not now") |
| // Keys: never pitched — recorded as covered by the Eleven account. |
| XCTAssertFalse(io.transcript.contains { $0.text.contains("Now the most important thing of all") }) |