Initial commit

This commit is contained in:
Yaser
2026-08-13 19:50:53 +03:30
commit 38084458fe
879 changed files with 95198 additions and 0 deletions

View File

@@ -0,0 +1,102 @@
describe API::V2::Management::Trades, type: :request do
let(:member) do
create(:member, :level_3).tap do |m|
m.get_account(:btc).update_attributes(balance: 12.13, locked: 3.14)
m.get_account(:usd).update_attributes(balance: 2014.47, locked: 0)
end
end
let(:second_member) do
create(:member, :level_3).tap do |m|
m.get_account(:btc).update_attributes(balance: 12.13, locked: 3.14)
m.get_account(:usd).update_attributes(balance: 2014.47, locked: 0)
end
end
let(:btcusd_ask) do
create(
:order_ask,
:btcusd,
price: '12.32'.to_d,
volume: '123.12345678',
member: member
)
end
let(:btceth_ask) do
create(
:order_ask,
:btceth,
price: '12.326'.to_d,
volume: '123.1234',
member: second_member
)
end
let(:btcusd_bid) do
create(
:order_bid,
:btcusd,
price: '12.32'.to_d,
volume: '123.12345678',
member: member
)
end
let(:btceth_bid) do
create(
:order_bid,
:btceth,
price: '12.326'.to_d,
volume: '123.1234',
member: second_member
)
end
let!(:btcusd_ask_trade) { create(:trade, :btcusd, maker_order: btcusd_ask, created_at: 2.days.ago) }
let!(:btceth_ask_trade) { create(:trade, :btceth, maker_order: btceth_ask, created_at: 2.days.ago) }
let!(:btcusd_bid_trade) { create(:trade, :btcusd, taker_order: btcusd_bid, created_at: 23.hours.ago) }
let!(:btceth_bid_trade) { create(:trade, :btceth, taker_order: btceth_bid, created_at: 23.hours.ago) }
before do
defaults_for_management_api_v1_security_configuration!
management_api_v1_security_configuration.merge! \
scopes: {
read_trades: { permitted_signers: %i[alex jeff], mandatory_signers: %i[alex] },
}
end
def request
post_json '/api/v2/management/trades', multisig_jwt_management_api_v1({ data: data }, *signers)
end
let(:data) { {} }
let(:signers) { %i[alex jeff] }
it 'returns all recent trades' do
request
expect(response).to be_successful
result = JSON.parse(response.body)
expect(result.count).to eq 4
end
it 'returns trades by uid of user' do
data.merge!(uid: member.uid)
request
expect(response).to be_successful
result = JSON.parse(response.body)
expect(result.count).to eq 2
end
it 'returns trades by market' do
data.merge!(market: 'btcusd')
request
expect(response).to be_successful
result = JSON.parse(response.body)
expect(result.count).to eq 2
end
end