blob: 9684835acf1b98e649c91f2cf23b6c237339fbcf [file] [log] [blame]
// 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 <Flutter/Flutter.h>
NS_ASSUME_NONNULL_BEGIN
@protocol FLTIntegrationTestScreenshotDelegate
/** This will be called when a dart integration test triggers a window screenshot with @c takeScreenshot. */
- (void)didTakeScreenshot:(UIImage *)screenshot attachmentName:(nullable NSString *)name;
@end
/** A Flutter plugin that's responsible for communicating the test results back
* to iOS XCTest. */
@interface IntegrationTestPlugin : NSObject <FlutterPlugin>
/**
* Test results that are sent from Dart when integration test completes. Before the
* completion, it is @c nil.
*/
@property(nonatomic, readonly, nullable) NSDictionary<NSString *, NSString *> *testResults;
/** Fetches the singleton instance of the plugin. */
+ (IntegrationTestPlugin *)instance;
- (void)setupChannels:(id<FlutterBinaryMessenger>)binaryMessenger;
- (instancetype)init NS_UNAVAILABLE;
@property(weak, nonatomic) id<FLTIntegrationTestScreenshotDelegate> screenshotDelegate;
@end
NS_ASSUME_NONNULL_END