111 lines
2.7 KiB
Ruby
111 lines
2.7 KiB
Ruby
# encoding: UTF-8
|
|
# frozen_string_literal: true
|
|
|
|
FactoryBot.define do
|
|
factory :order_bid do
|
|
|
|
# Create liability history by passing with_deposit_liability trait.
|
|
trait :with_deposit_liability do
|
|
before(:create) do |order|
|
|
deposit = create(:deposit_usd, member: order.member, amount: order.locked)
|
|
deposit.accept!
|
|
deposit.process!
|
|
deposit.dispatch!
|
|
end
|
|
|
|
bid { :usd }
|
|
ask { :btc }
|
|
market { Market.find(:btcusd) }
|
|
state { :wait }
|
|
ord_type { 'limit' }
|
|
price { '1'.to_d }
|
|
volume { '1'.to_d }
|
|
origin_volume { volume.to_d }
|
|
locked { price.to_d * volume.to_d }
|
|
origin_locked { locked.to_d }
|
|
member { create(:member) }
|
|
end
|
|
|
|
trait :btcusd do
|
|
bid { :usd }
|
|
ask { :btc }
|
|
market { Market.find(:btcusd) }
|
|
state { :wait }
|
|
ord_type { 'limit' }
|
|
price { '1'.to_d }
|
|
volume { '1'.to_d }
|
|
origin_volume { volume.to_d }
|
|
locked { price.to_d * volume.to_d }
|
|
origin_locked { locked.to_d }
|
|
member { create(:member) }
|
|
end
|
|
|
|
trait :btceth do
|
|
bid { :eth }
|
|
ask { :btc }
|
|
market { Market.find(:btceth) }
|
|
state { :wait }
|
|
ord_type { 'limit' }
|
|
price { '1'.to_d }
|
|
volume { '1'.to_d }
|
|
origin_volume { volume.to_d }
|
|
locked { price.to_d * volume.to_d }
|
|
origin_locked { locked.to_d }
|
|
member { create(:member) }
|
|
end
|
|
end
|
|
|
|
factory :order_ask do
|
|
|
|
# Create liability history by passing with_deposit_liability trait.
|
|
trait :with_deposit_liability do
|
|
before(:create) do |order|
|
|
deposit = create(:deposit_btc, member: order.member, amount: order.locked)
|
|
deposit.accept!
|
|
deposit.process!
|
|
deposit.dispatch!
|
|
end
|
|
|
|
bid { :usd }
|
|
ask { :btc }
|
|
market { Market.find(:btcusd) }
|
|
state { :wait }
|
|
ord_type { 'limit' }
|
|
price { '1'.to_d }
|
|
volume { '1'.to_d }
|
|
origin_volume { volume.to_d }
|
|
locked { volume.to_d }
|
|
origin_locked { locked.to_d }
|
|
member { create(:member) }
|
|
end
|
|
|
|
trait :btcusd do
|
|
bid { :usd }
|
|
ask { :btc }
|
|
market { Market.find(:btcusd) }
|
|
state { :wait }
|
|
ord_type { 'limit' }
|
|
price { '1'.to_d }
|
|
volume { '1'.to_d }
|
|
origin_volume { volume.to_d }
|
|
locked { volume.to_d }
|
|
origin_locked { locked.to_d }
|
|
member { create(:member) }
|
|
end
|
|
|
|
trait :btceth do
|
|
bid { :eth }
|
|
ask { :btc }
|
|
market { Market.find(:btceth) }
|
|
state { :wait }
|
|
ord_type { 'limit' }
|
|
price { '1'.to_d }
|
|
volume { '1'.to_d }
|
|
origin_volume { volume.to_d }
|
|
locked { volume.to_d }
|
|
origin_locked { locked.to_d }
|
|
member { create(:member) }
|
|
end
|
|
end
|
|
end
|