@@ -9,8 +9,10 @@ import (
99
1010 "github.com/ethereum/go-ethereum/accounts/abi"
1111
12+ "github.com/smartcontractkit/data-streams-sdk/go/report/common"
1213 v1 "github.com/smartcontractkit/data-streams-sdk/go/report/v1"
1314 v10 "github.com/smartcontractkit/data-streams-sdk/go/report/v10"
15+ v11 "github.com/smartcontractkit/data-streams-sdk/go/report/v11"
1416 v13 "github.com/smartcontractkit/data-streams-sdk/go/report/v13"
1517 v2 "github.com/smartcontractkit/data-streams-sdk/go/report/v2"
1618 v3 "github.com/smartcontractkit/data-streams-sdk/go/report/v3"
@@ -163,6 +165,20 @@ func TestReport(t *testing.T) {
163165 t .Errorf ("expected: %#v, got: %#v" , v10Report , rv10 )
164166 }
165167
168+ b , err = schema .Pack (v11Report .ReportContext , v11Report .ReportBlob , v11Report .RawRs , v11Report .RawSs , v11Report .RawVs )
169+ if err != nil {
170+ t .Errorf ("failed to encode report: %s" , err )
171+ }
172+
173+ rv11 , err := Decode [v11.Data ](b )
174+ if err != nil {
175+ t .Errorf ("failed to decode report: %s" , err )
176+ }
177+
178+ if ! reflect .DeepEqual (v11Report , rv11 ) {
179+ t .Errorf ("expected: %#v, got: %#v" , v11Report , rv11 )
180+ }
181+
166182 b , err = schema .Pack (v13Report .ReportContext , v13Report .ReportBlob , v13Report .RawRs , v13Report .RawSs , v13Report .RawVs )
167183 if err != nil {
168184 t .Errorf ("failed to encode report: %s" , err )
@@ -268,6 +284,15 @@ var v10Report = &Report[v10.Data]{
268284 RawVs : [32 ]uint8 {00 , 01 , 10 , 74 , 67 , 29 , 24 , 17 , 12 , 18 , 22 , 11 , 69 , 11 , 63 , 86 , 12 , 86 , 23 , 58 , 13 , 53 , 29 , 12 , 17 , 10 , 17 , 12 , 63 , 27 , 12 , 14 },
269285}
270286
287+ var v11Report = & Report [v11.Data ]{
288+ Data : v11Data ,
289+ ReportContext : [3 ][32 ]uint8 {},
290+ ReportBlob : mustPackData (v11Data ),
291+ RawRs : [][32 ]uint8 {{00 , 01 , 10 , 74 , 67 , 29 , 24 , 17 , 12 , 18 , 22 , 11 , 69 , 11 , 63 , 86 , 12 , 86 , 23 , 58 , 13 , 53 , 29 , 12 , 17 , 10 , 17 , 12 , 63 , 27 , 12 , 14 }},
292+ RawSs : [][32 ]uint8 {{01 , 02 , 10 , 73 , 65 , 19 , 14 , 27 , 42 , 48 , 52 , 18 , 39 , 116 , 67 , 85 , 13 , 82 , 33 , 48 , 23 , 33 , 49 , 32 , 67 , 50 , 37 , 32 , 63 , 77 , 14 , 64 }},
293+ RawVs : [32 ]uint8 {00 , 01 , 10 , 74 , 67 , 29 , 24 , 17 , 12 , 18 , 22 , 11 , 69 , 11 , 63 , 86 , 12 , 86 , 23 , 58 , 13 , 53 , 29 , 12 , 17 , 10 , 17 , 12 , 63 , 27 , 12 , 14 },
294+ }
295+
271296var v13Report = & Report [v13.Data ]{
272297 Data : v13Data ,
273298 ReportContext : [3 ][32 ]uint8 {},
@@ -319,7 +344,7 @@ var v4Data = v4.Data{
319344 LinkFee : big .NewInt (10 ),
320345 ExpiresAt : uint32 (time .Now ().Unix ()) + 100 ,
321346 BenchmarkPrice : big .NewInt (100 ),
322- MarketStatus : v4 .MarketStatusOpen ,
347+ MarketStatus : common .MarketStatusOpen ,
323348}
324349
325350var v5Data = v5.Data {
@@ -399,6 +424,23 @@ var v10Data = v10.Data{
399424 TokenizedPrice : big .NewInt (1001 ),
400425}
401426
427+ var v11Data = v11.Data {
428+ FeedID : [32 ]uint8 {00 , 11 , 251 , 109 , 19 , 88 , 151 , 228 , 170 , 245 , 101 , 123 , 255 , 211 , 176 , 180 , 143 , 142 , 42 , 81 , 49 , 33 , 76 , 158 , 194 , 214 , 46 , 172 , 93 , 83 , 32 , 103 },
429+ ValidFromTimestamp : uint32 (time .Now ().Unix ()),
430+ ObservationsTimestamp : uint32 (time .Now ().Unix ()),
431+ NativeFee : big .NewInt (10 ),
432+ LinkFee : big .NewInt (10 ),
433+ ExpiresAt : uint32 (time .Now ().Unix ()) + 100 ,
434+ Mid : big .NewInt (103 ),
435+ LastSeenTimestampNs : uint64 (time .Now ().Unix ()),
436+ Bid : big .NewInt (101 ),
437+ BidVolume : 10002 ,
438+ Ask : big .NewInt (105 ),
439+ AskVolume : 10001 ,
440+ LastTradedPrice : big .NewInt (103 ),
441+ MarketStatus : common .MarketStatusOpen ,
442+ }
443+
402444var v13Data = v13.Data {
403445 FeedID : [32 ]uint8 {00 , 13 , 19 , 169 , 185 , 197 , 227 , 122 , 9 , 159 , 55 , 78 , 146 , 195 , 121 , 20 , 175 , 92 , 38 , 143 , 58 , 138 , 151 , 33 , 241 , 114 , 81 , 53 , 191 , 180 , 203 , 184 },
404446 ValidFromTimestamp : uint32 (time .Now ().Unix ()),
@@ -550,6 +592,24 @@ func mustPackData(d interface{}) []byte {
550592 v .ActivationDateTime ,
551593 v .TokenizedPrice ,
552594 }
595+ case v11.Data :
596+ dataSchema = v11 .Schema ()
597+ args = []interface {}{
598+ v .FeedID ,
599+ v .ValidFromTimestamp ,
600+ v .ObservationsTimestamp ,
601+ v .NativeFee ,
602+ v .LinkFee ,
603+ v .ExpiresAt ,
604+ v .Mid ,
605+ v .LastSeenTimestampNs ,
606+ v .Bid ,
607+ v .BidVolume ,
608+ v .Ask ,
609+ v .AskVolume ,
610+ v .LastTradedPrice ,
611+ v .MarketStatus ,
612+ }
553613 case v13.Data :
554614 dataSchema = v13 .Schema ()
555615 args = []interface {}{
0 commit comments