Skip to content

Commit 9384103

Browse files
committed
Fix commit 7940088
1 parent 53e6f07 commit 9384103

1 file changed

Lines changed: 21 additions & 16 deletions

File tree

Tests/RiskTests.cs

Lines changed: 21 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1112,16 +1112,20 @@ public void AdapterClosePositionsMode()
11121112
};
11131113
riskManager.Rules.Add(rule);
11141114

1115-
// Trigger the rule by sending a position change message with loss
1116-
var positionMsg = new PositionChangeMessage
1115+
adapter.SendInMessage(new PositionChangeMessage
11171116
{
11181117
SecurityId = SecurityId.Money,
11191118
ServerTime = DateTimeOffset.UtcNow,
11201119
PortfolioName = _pfName
1121-
};
1122-
positionMsg.Add(PositionChangeTypes.CurrentValue, -1500m);
1120+
}.Add(PositionChangeTypes.CurrentValue, 0m));
11231121

1124-
adapter.SendInMessage(positionMsg);
1122+
// Trigger the rule by sending a position change message with loss
1123+
adapter.SendInMessage(new PositionChangeMessage
1124+
{
1125+
SecurityId = SecurityId.Money,
1126+
ServerTime = DateTimeOffset.UtcNow,
1127+
PortfolioName = _pfName
1128+
}.Add(PositionChangeTypes.CurrentValue, -1500m));
11251129

11261130
// Check that OrderGroupCancelMessage was sent to inner adapter with ClosePositions mode
11271131
var cancelMsg = testAdapter.ReceivedMessages.OfType<OrderGroupCancelMessage>().FirstOrDefault();
@@ -1233,16 +1237,20 @@ public void AdapterTradingUnblocks()
12331237
};
12341238
riskManager.Rules.Add(rule);
12351239

1236-
// Trigger the rule by sending a position change message with loss
1237-
var positionMsg = new PositionChangeMessage
1240+
adapter.SendInMessage(new PositionChangeMessage
12381241
{
12391242
SecurityId = SecurityId.Money,
12401243
ServerTime = DateTimeOffset.UtcNow,
12411244
PortfolioName = _pfName
1242-
};
1243-
positionMsg.Add(PositionChangeTypes.CurrentValue, -1500m);
1245+
}.Add(PositionChangeTypes.CurrentValue, 0m));
12441246

1245-
adapter.SendInMessage(positionMsg);
1247+
// Trigger the rule by sending a position change message with loss
1248+
adapter.SendInMessage(new PositionChangeMessage
1249+
{
1250+
SecurityId = SecurityId.Money,
1251+
ServerTime = DateTimeOffset.UtcNow,
1252+
PortfolioName = _pfName
1253+
}.Add(PositionChangeTypes.CurrentValue, -1500m));
12461254

12471255
// Verify trading is blocked
12481256
var orderMsg = new OrderRegisterMessage
@@ -1265,15 +1273,12 @@ public void AdapterTradingUnblocks()
12651273
testAdapter.ReceivedMessages.Clear();
12661274

12671275
// Now send a position message that no longer exceeds the limit
1268-
positionMsg = new PositionChangeMessage
1276+
adapter.SendInMessage(new PositionChangeMessage
12691277
{
12701278
SecurityId = SecurityId.Money,
12711279
ServerTime = DateTimeOffset.UtcNow,
12721280
PortfolioName = _pfName
1273-
};
1274-
positionMsg.Add(PositionChangeTypes.CurrentValue, -500m);
1275-
1276-
adapter.SendInMessage(positionMsg);
1281+
}.Add(PositionChangeTypes.CurrentValue, -500m));
12771282

12781283
// Try to register an order again - it should now be accepted (not rejected)
12791284
var orderMsg2 = new OrderRegisterMessage
@@ -1323,7 +1328,7 @@ public override bool ProcessMessage(Message message)
13231328
// Wrapper adapter that captures all incoming messages
13241329
private class TestInnerAdapter : MessageAdapterWrapper
13251330
{
1326-
public List<Message> ReceivedMessages { get; } = new();
1331+
public List<Message> ReceivedMessages { get; } = [];
13271332

13281333
public TestInnerAdapter()
13291334
: base(new MarketEmulator(

0 commit comments

Comments
 (0)