// 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 'package:flutter/material.dart'; typedef OnObservation = void Function(Route<dynamic>? route, Route<dynamic>? previousRoute); /// A trivial observer for testing the navigator. class TestObserver extends NavigatorObserver { OnObservation? onPushed; OnObservation? onPopped; OnObservation? onRemoved; OnObservation? onReplaced; OnObservation? onStartUserGesture; @override void didPush(Route<dynamic> route, Route<dynamic>? previousRoute) { onPushed?.call(route, previousRoute); } @override void didPop(Route<dynamic> route, Route<dynamic>? previousRoute) { onPopped?.call(route, previousRoute); } @override void didRemove(Route<dynamic> route, Route<dynamic>? previousRoute) { onRemoved?.call(route, previousRoute); } @override void didReplace({ Route<dynamic>? oldRoute, Route<dynamic>? newRoute }) { onReplaced?.call(newRoute, oldRoute); } @override void didStartUserGesture(Route<dynamic> route, Route<dynamic>? previousRoute) { onStartUserGesture?.call(route, previousRoute); } }