blob: 5e346816a968794eec88d4690ac39f23d379cb85 [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 'dart:async';
import 'dart:typed_data';
import 'package:flutter/painting.dart';
import 'package:flutter_test/flutter_test.dart';
import '../image_data.dart';
import '../rendering/rendering_tester.dart';
void main() {
TestRenderingFlutterBinding();
test("Clearing images while they're pending does not crash", () async {
final Uint8List bytes = Uint8List.fromList(kTransparentImage);
final MemoryImage memoryImage = MemoryImage(bytes);
final ImageStream stream = memoryImage.resolve(ImageConfiguration.empty);
final Completer<void> completer = Completer<void>();
FlutterError.onError = (FlutterErrorDetails error) { completer.completeError(error.exception, error.stack); };
stream.addListener(ImageStreamListener(
(ImageInfo image, bool synchronousCall) {
completer.complete();
},
));
imageCache!.clearLiveImages();
await completer.future;
});
}