77 "reflect"
88 "testing"
99
10+ . "github.com/pegnet/pegnetd/node/conversions"
11+
1012 "github.com/pegnet/pegnet/modules/transactionid"
1113)
1214
@@ -184,12 +186,12 @@ func TestRefund(t *testing.T) {
184186 // Currently the PEG supply limit yields are calculated as such:
185187 // amt pXXX -> yielded PEG + refund pXXX
186188 t .Run ("test equivalency" , func (t * testing.T ) {
187- for i := 0 ; i < 50 ; i ++ {
189+ for i := uint32 ( 0 ) ; i < 50 ; i ++ {
188190 amtR := rand .Uint64 () % (5 * 1e6 * 1e8 ) // 50K max
189191 pegR := rand .Uint64 () % (5 * 1e6 * 1e8 ) // 50K max
190192
191193 input := rand .Int63 () % (1 * 1e6 * 1e8 ) // 1million max
192- maxPegYield , err := Convert (int64 (input ), amtR , pegR )
194+ maxPegYield , err := Convert (i , int64 (input ), amtR , amtR , pegR , pegR )
193195 if err != nil {
194196 continue // Likely an overflow or rate is 0
195197 }
@@ -199,11 +201,11 @@ func TestRefund(t *testing.T) {
199201 // 2 methods to calculate the refund. We have:
200202 // Input in pXXX, yield in PEG
201203
202- refund := Refund (input , yield , amtR , pegR )
204+ refund := Refund (i , input , yield , amtR , pegR )
203205 if refund < 0 {
204206 t .Error ("Negative refund!" )
205207 }
206- CheckRefund (t , input , refund , yield , amtR , pegR )
208+ CheckRefund (t , i , input , refund , yield , amtR , pegR )
207209 }
208210 }
209211 })
@@ -214,12 +216,12 @@ func TestRefund(t *testing.T) {
214216 pegR := rand .Uint64 () % (5 * 1e6 * 1e8 ) // 50K max
215217 input := rand .Int63 () % (1 * 1e6 * 1e8 ) // 1million max
216218
217- maxPegYield , err := Convert (int64 (input ), amtR , pegR )
219+ maxPegYield , err := Convert (uint32 ( i ), int64 (input ), amtR , amtR , pegR , pegR )
218220 if err != nil {
219221 continue // Likely an overflow or rate is 0
220222 }
221223
222- if r := Refund (input , maxPegYield , amtR , pegR ); r != 0 {
224+ if r := Refund (uint32 ( i ), input , maxPegYield , amtR , pegR ); r != 0 {
223225 t .Errorf ("expected a 0 refund, found %d" , r )
224226 }
225227 }
@@ -233,10 +235,10 @@ func TestRefund(t *testing.T) {
233235//
234236// Does not hold for Asset Equivalency check
235237// Does hold for the 0 refund case
236- func RefundMethod1 (input , pegYield int64 , amtRate , pegRate uint64 ) int64 {
237- maxPEGYield , _ := Convert (input , amtRate , pegRate )
238+ func RefundMethod1 (height uint32 , input , pegYield int64 , amtRate , pegRate uint64 ) int64 {
239+ maxPEGYield , _ := Convert (height , input , amtRate , amtRate , pegRate , pegRate )
238240 refundPEG := maxPEGYield - pegYield
239- refund , _ := Convert (refundPEG , pegRate , amtRate )
241+ refund , _ := Convert (height , refundPEG , pegRate , pegRate , amtRate , amtRate )
240242 return refund
241243}
242244
@@ -246,8 +248,8 @@ func RefundMethod1(input, pegYield int64, amtRate, pegRate uint64) int64 {
246248//
247249// Holds in all equivalency conditions
248250// Does not hold for the 0 refund case
249- func RefundMethod2 (input , pegYield int64 , amtRate , pegRate uint64 ) int64 {
250- consumedInput , _ := Convert (pegYield , pegRate , amtRate )
251+ func RefundMethod2 (height uint32 , input , pegYield int64 , amtRate , pegRate uint64 ) int64 {
252+ consumedInput , _ := Convert (height , pegYield , pegRate , pegRate , amtRate , amtRate )
251253 refund := input - consumedInput
252254 return refund
253255}
@@ -256,23 +258,23 @@ func RefundMethod2(input, pegYield int64, amtRate, pegRate uint64) int64 {
256258// amt is in pXXX
257259// refund is in pXXX
258260// pegYield is in PEG
259- func CheckRefund (t * testing.T , input , refund , pegYield int64 , amtRate , pegRate uint64 ) {
261+ func CheckRefund (t * testing.T , height uint32 , input , refund , pegYield int64 , amtRate , pegRate uint64 ) {
260262 max := func (a , b int64 ) int64 {
261263 if a > b {
262264 return a
263265 }
264266 return b
265267 }
266268
267- maxPegYield , err := Convert (input , amtRate , pegRate )
269+ maxPegYield , err := Convert (height , input , amtRate , amtRate , pegRate , pegRate )
268270 if err != nil {
269271 return // Overflow or 0 rates
270272 }
271273
272274 {
273275 // Asset Equivalency
274276 // This check is `input = refund + (peg converted to input)`
275- yieldInAsset , err := Convert (pegYield , pegRate , amtRate )
277+ yieldInAsset , err := Convert (height , pegYield , pegRate , pegRate , amtRate , amtRate )
276278 if err != nil {
277279 t .Error (err ) // This would be bad news
278280 }
@@ -296,12 +298,12 @@ func CheckRefund(t *testing.T, input, refund, pegYield int64, amtRate, pegRate u
296298 // consumed = input - refund
297299 // consumed -> PEG + refund -> PEG = input -> PEG
298300 consumed := int64 (input ) - refund
299- consumedPEG , err := Convert (consumed , amtRate , pegRate )
301+ consumedPEG , err := Convert (height , consumed , amtRate , amtRate , pegRate , pegRate )
300302 if err != nil {
301303 t .Error (err ) // This would be bad news
302304 }
303305
304- refundPEGCheck , err := Convert (refund , amtRate , pegRate )
306+ refundPEGCheck , err := Convert (height , refund , amtRate , amtRate , pegRate , pegRate )
305307 if err != nil {
306308 t .Error (err ) // This would be bad news
307309 }
0 commit comments