Skip to content

Commit

Permalink
Clean ut
Browse files Browse the repository at this point in the history
  • Loading branch information
shargon committed Feb 22, 2024
1 parent 7d10470 commit ecde4fa
Showing 1 changed file with 13 additions and 4 deletions.
17 changes: 13 additions & 4 deletions src/Neo.SmartContract.Testing/TestingStandards/Nep17Tests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -204,28 +204,37 @@ public virtual void TestTransfer()

UInt160? calledFrom = null;
BigInteger? calledAmount = null;
byte[]? calledData = null;
UInt160? calledData = null;

var mock = Engine.Deploy<onNEP17PaymentContract>(NefFile, manifest.ToJson().ToString(), null, m =>
{
m
.Setup(s => s.onNEP17Payment(It.IsAny<UInt160>(), It.IsAny<BigInteger>(), It.IsAny<object>()))
.Callback(new InvocationAction((i) =>
{
// Set variables
var me = new UInt160((i.Arguments[2] as ByteString)!.GetSpan().ToArray());
calledFrom = i.Arguments[0] as UInt160;
calledAmount = (BigInteger)i.Arguments[1];
calledData = (i.Arguments[2] as ByteString)!.GetSpan().ToArray();
// Ensure the balance
Assert.AreEqual(3, Contract.BalanceOf(me));
// Ensure the event was called
var me = new UInt160(calledData);
AssertTransferEvent(Alice.Account, me, calledAmount);
// Return the money back
Engine.SetTransactionSigners(me);
Assert.IsTrue(Contract.Transfer(me, calledFrom, calledAmount));
AssertTransferEvent(me, Alice.Account, calledAmount);
// Set success flag
calledData = me;
}));
});

Expand All @@ -235,7 +244,7 @@ public virtual void TestTransfer()
Assert.IsTrue(Contract.Transfer(Alice.Account, mock.Hash, 3, mock.Hash.ToArray()));

Assert.AreEqual(Alice.Account, calledFrom);
Assert.AreEqual(mock.Hash, new UInt160(calledData));
Assert.AreEqual(mock.Hash, calledData);
Assert.AreEqual(3, calledAmount);
Assert.AreEqual(0, Contract.BalanceOf(mock.Hash));
}
Expand Down

0 comments on commit ecde4fa

Please sign in to comment.