public void Invoke_Receive_Method_Sets_State() { var methodCall = MethodCall.Receive(); var receiveContract = Contract.CreateUninitialized(typeof(HasReceive), this.state, this.address); var receiveInstance = (HasReceive)receiveContract.GetPrivateFieldValue("instance"); receiveContract.Invoke(methodCall); var gasMeter = receiveInstance.GetBaseTypePrivateFieldValue("gasMeter"); var block = receiveInstance.GetBaseTypePrivateFieldValue("Block"); var getBalance = receiveInstance.GetBaseTypePrivateFieldValue("getBalance"); var internalTransactionExecutor = receiveInstance.GetBaseTypePrivateFieldValue("internalTransactionExecutor"); var internalHashHelper = receiveInstance.GetBaseTypePrivateFieldValue("internalHashHelper"); var message = receiveInstance.GetBaseTypePrivateFieldValue("Message"); var persistentState = receiveInstance.GetBaseTypePrivateFieldValue("PersistentState"); var smartContractState = receiveInstance.GetBaseTypePrivateFieldValue("smartContractState"); Assert.NotNull(gasMeter); Assert.Equal(this.state.GasMeter, gasMeter); Assert.NotNull(block); Assert.Equal(this.state.Block, block); Assert.NotNull(getBalance); Assert.Equal(this.state.GetBalance, getBalance); Assert.NotNull(internalTransactionExecutor); Assert.Equal(this.state.InternalTransactionExecutor, internalTransactionExecutor); Assert.NotNull(internalHashHelper); Assert.Equal(this.state.InternalHashHelper, internalHashHelper); Assert.NotNull(message); Assert.Equal(this.state.Message, message); Assert.NotNull(persistentState); Assert.Equal(this.state.PersistentState, persistentState); Assert.NotNull(smartContractState); Assert.Equal(this.state, smartContractState); }
public void EmptyMethodName_DoesNot_Invoke_Receive() { var receiveContract = Contract.CreateUninitialized(typeof(HasNoReceive), this.state, this.address); var methodCall = MethodCall.Receive(); var result = receiveContract.Invoke(methodCall); Assert.False(result.IsSuccess); }
public void EmptyMethodName_Invokes_Receive() { var receiveContract = Contract.CreateUninitialized(typeof(HasReceive), this.state, this.address); var receiveInstance = (HasReceive)receiveContract.GetPrivateFieldValue("instance"); var methodCall = MethodCall.Receive(); var result = receiveContract.Invoke(methodCall); Assert.True(result.IsSuccess); Assert.True(receiveInstance.ReceiveInvoked); }
public void Invoke_Receive_Method_Sets_State() { var methodCall = MethodCall.Receive(); var receiveContract = Contract.CreateUninitialized(typeof(HasReceive), this.state, this.address); var receiveInstance = (HasReceive)receiveContract.GetPrivateFieldValue("instance"); receiveContract.Invoke(methodCall); var smartContractState = receiveInstance.GetBaseTypePrivateFieldValue("state"); Assert.NotNull(smartContractState); Assert.Equal(this.state, smartContractState); }
public void MethodCall_Created_With_Factory_Should_Be_Receive() { var methodCall = MethodCall.Receive(); Assert.True(methodCall.IsReceiveHandlerCall); }