                             self.calledWithIdentifier = calledWithIdentifier
                         }
 
-                        func pushRouteSegment(
-                            _ routeSegment: RouteElementIdentifier,
-                            animated: Bool,
-                            completionHandler: RoutingCompletionHandler) -> Routable {
-                                calledWithIdentifier(routeSegment)
+                        func pushRouteSegment(_ routeElementIdentifier: RouteElementIdentifier, animated: Bool, completionHandler: @escaping RoutingCompletionHandler) -> Routable {
+                                calledWithIdentifier(routeElementIdentifier)
 
                                 completionHandler()
                                 return MockRoutable()

                            self.calledWithIdentifier = calledWithIdentifier
                        }

                        func pushRouteSegment(
                            _ routeSegment: RouteElementIdentifier,
                            animated: Bool,
                            completionHandler: RoutingCompletionHandler) -> Routable {
                                calledWithIdentifier(routeSegment)

                                completionHandler()
                                return MockRoutable()

    func pushRouteSegment(
        _ routeElementIdentifier: RouteElementIdentifier,
        animated: Bool,
        completionHandler: @escaping RoutingCompletionHandler
        ) -> Routable {

        callsToPushRouteSegment.append(
            (routeElement: routeElementIdentifier, animated: animated)
        )
        completionHandler()
        return MockRoutable()
    }

    func popRouteSegment(
        _ routeElementIdentifier: RouteElementIdentifier,
        animated: Bool,
        completionHandler: @escaping RoutingCompletionHandler) {

        callsToPopRouteSegment.append(
            (routeElement: routeElementIdentifier, animated: animated)
        )
        completionHandler()
    }

    func changeRouteSegment(
        _ from: RouteElementIdentifier,
        to: RouteElementIdentifier,
        animated: Bool,
        completionHandler: @escaping RoutingCompletionHandler
        ) -> Routable {

        completionHandler()

        callsToChangeRouteSegment.append((from: from, to: to, animated: animated))

        return MockRoutable()
    }

}
