| // Copyright 2014 The Flutter Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| @import Foundation; |
| |
| @class UIImage; |
| |
| NS_ASSUME_NONNULL_BEGIN |
| |
| typedef void (^FLTIntegrationTestResults)(SEL nativeTestSelector, BOOL success, NSString *_Nullable failureMessage); |
| |
| @interface FLTIntegrationTestRunner : NSObject |
| |
| /** |
| * Any screenshots captured by the plugin. |
| */ |
| @property (copy, readonly) NSDictionary<NSString *, UIImage *> *capturedScreenshotsByName; |
| |
| /** |
| * Starts dart tests and waits for results. |
| * |
| * @param testResult Will be called once per every completed dart test. |
| */ |
| - (void)testIntegrationTestWithResults:(NS_NOESCAPE FLTIntegrationTestResults)testResult; |
| |
| /** |
| * An appropriate XCTest method name based on the dart test name. |
| * |
| * Example: dart test "verify widget-ABC123" becomes "testVerifyWidgetABC123" |
| */ |
| + (NSString *)testCaseNameFromDartTestName:(NSString *)dartTestName; |
| |
| @end |
| |
| NS_ASSUME_NONNULL_END |