From c1839bf46790c8cacad198e4ac5ad22ae04e39c5 Mon Sep 17 00:00:00 2001 From: muscle_boy Date: Thu, 14 Feb 2019 15:14:26 +0800 Subject: [PATCH] add setGasValid unit test (#1564) * add setGasValid unit test * add setGasValid unit test --- protocol/validation/tx_test.go | 72 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) diff --git a/protocol/validation/tx_test.go b/protocol/validation/tx_test.go index 4bf08e8b..3ac47ed4 100644 --- a/protocol/validation/tx_test.go +++ b/protocol/validation/tx_test.go @@ -107,6 +107,78 @@ func TestGasStatus(t *testing.T) { }, err: nil, }, + { + input: &GasState{ + GasLeft: 1000, + GasUsed: 10, + StorageGas: 1000, + GasValid: false, + }, + output: &GasState{ + GasLeft: 0, + GasUsed: 1010, + StorageGas: 1000, + GasValid: true, + }, + f: func(input *GasState) error { + return input.setGasValid() + }, + err: nil, + }, + { + input: &GasState{ + GasLeft: 900, + GasUsed: 10, + StorageGas: 1000, + GasValid: false, + }, + output: &GasState{ + GasLeft: -100, + GasUsed: 10, + StorageGas: 1000, + GasValid: false, + }, + f: func(input *GasState) error { + return input.setGasValid() + }, + err: ErrGasCalculate, + }, + { + input: &GasState{ + GasLeft: 1000, + GasUsed: math.MaxInt64, + StorageGas: 1000, + GasValid: false, + }, + output: &GasState{ + GasLeft: 0, + GasUsed: 0, + StorageGas: 1000, + GasValid: false, + }, + f: func(input *GasState) error { + return input.setGasValid() + }, + err: ErrGasCalculate, + }, + { + input: &GasState{ + GasLeft: math.MinInt64, + GasUsed: 0, + StorageGas: 1000, + GasValid: false, + }, + output: &GasState{ + GasLeft: 0, + GasUsed: 0, + StorageGas: 1000, + GasValid: false, + }, + f: func(input *GasState) error { + return input.setGasValid() + }, + err: ErrGasCalculate, + }, } for i, c := range cases { -- 2.11.0