From dd441df8ff0530b1dd120b7262726064bc448ea9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20K=C3=A4chele?= Date: Sun, 21 Jan 2024 19:00:17 +0100 Subject: [PATCH] Return the cancelled order explicitly --- lib/rex/book/limit_order_book.rb | 1 + spec/book/limit_order_book_spec.rb | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/lib/rex/book/limit_order_book.rb b/lib/rex/book/limit_order_book.rb index 1aedc49..8d9effc 100644 --- a/lib/rex/book/limit_order_book.rb +++ b/lib/rex/book/limit_order_book.rb @@ -43,6 +43,7 @@ module Rex end order_ids.delete(order.id) + order end alias_method :cancel_order, :remove_order diff --git a/spec/book/limit_order_book_spec.rb b/spec/book/limit_order_book_spec.rb index 2a7ddce..c11dce8 100644 --- a/spec/book/limit_order_book_spec.rb +++ b/spec/book/limit_order_book_spec.rb @@ -109,6 +109,12 @@ RSpec.describe Rex::Book::LimitOrderBook do instance.add_order(buy_order) end + it "returns the cancelled order" do + order = instance.cancel_order(buy_order.id) + + expect(order).to eq(buy_order) + end + context "when the order id is unknown" do it "returns nil" do expect(instance.cancel_order(-1)).to eq(nil)