@@ -9,8 +9,11 @@ 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"
16+ v12 "github.com/smartcontractkit/data-streams-sdk/go/report/v12"
1417 v13 "github.com/smartcontractkit/data-streams-sdk/go/report/v13"
1518 v2 "github.com/smartcontractkit/data-streams-sdk/go/report/v2"
1619 v3 "github.com/smartcontractkit/data-streams-sdk/go/report/v3"
@@ -163,6 +166,34 @@ func TestReport(t *testing.T) {
163166 t .Errorf ("expected: %#v, got: %#v" , v10Report , rv10 )
164167 }
165168
169+ b , err = schema .Pack (v11Report .ReportContext , v11Report .ReportBlob , v11Report .RawRs , v11Report .RawSs , v11Report .RawVs )
170+ if err != nil {
171+ t .Errorf ("failed to encode report: %s" , err )
172+ }
173+
174+ rv11 , err := Decode [v11.Data ](b )
175+ if err != nil {
176+ t .Errorf ("failed to decode report: %s" , err )
177+ }
178+
179+ if ! reflect .DeepEqual (v11Report , rv11 ) {
180+ t .Errorf ("expected: %#v, got: %#v" , v11Report , rv11 )
181+ }
182+
183+ b , err = schema .Pack (v12Report .ReportContext , v12Report .ReportBlob , v12Report .RawRs , v12Report .RawSs , v12Report .RawVs )
184+ if err != nil {
185+ t .Errorf ("failed to encode report: %s" , err )
186+ }
187+
188+ rv12 , err := Decode [v12.Data ](b )
189+ if err != nil {
190+ t .Errorf ("failed to decode report: %s" , err )
191+ }
192+
193+ if ! reflect .DeepEqual (v12Report , rv12 ) {
194+ t .Errorf ("expected: %#v, got: %#v" , v12Report , rv12 )
195+ }
196+
166197 b , err = schema .Pack (v13Report .ReportContext , v13Report .ReportBlob , v13Report .RawRs , v13Report .RawSs , v13Report .RawVs )
167198 if err != nil {
168199 t .Errorf ("failed to encode report: %s" , err )
@@ -268,6 +299,24 @@ var v10Report = &Report[v10.Data]{
268299 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 },
269300}
270301
302+ var v11Report = & Report [v11.Data ]{
303+ Data : v11Data ,
304+ ReportContext : [3 ][32 ]uint8 {},
305+ ReportBlob : mustPackData (v11Data ),
306+ 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 }},
307+ 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 }},
308+ 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 },
309+ }
310+
311+ var v12Report = & Report [v12.Data ]{
312+ Data : v12Data ,
313+ ReportContext : [3 ][32 ]uint8 {},
314+ ReportBlob : mustPackData (v12Data ),
315+ 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 }},
316+ 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 }},
317+ 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 },
318+ }
319+
271320var v13Report = & Report [v13.Data ]{
272321 Data : v13Data ,
273322 ReportContext : [3 ][32 ]uint8 {},
@@ -319,7 +368,7 @@ var v4Data = v4.Data{
319368 LinkFee : big .NewInt (10 ),
320369 ExpiresAt : uint32 (time .Now ().Unix ()) + 100 ,
321370 BenchmarkPrice : big .NewInt (100 ),
322- MarketStatus : v4 .MarketStatusOpen ,
371+ MarketStatus : common .MarketStatusOpen ,
323372}
324373
325374var v5Data = v5.Data {
@@ -399,6 +448,36 @@ var v10Data = v10.Data{
399448 TokenizedPrice : big .NewInt (1001 ),
400449}
401450
451+ var v11Data = v11.Data {
452+ 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 },
453+ ValidFromTimestamp : uint32 (time .Now ().Unix ()),
454+ ObservationsTimestamp : uint32 (time .Now ().Unix ()),
455+ NativeFee : big .NewInt (10 ),
456+ LinkFee : big .NewInt (10 ),
457+ ExpiresAt : uint32 (time .Now ().Unix ()) + 100 ,
458+ Mid : big .NewInt (103 ),
459+ LastSeenTimestampNs : uint64 (time .Now ().Unix ()),
460+ Bid : big .NewInt (101 ),
461+ BidVolume : 10002 ,
462+ Ask : big .NewInt (105 ),
463+ AskVolume : 10001 ,
464+ LastTradedPrice : big .NewInt (103 ),
465+ MarketStatus : common .MarketStatusOpen ,
466+ }
467+
468+ var v12Data = v12.Data {
469+ FeedID : [32 ]uint8 {00 , 12 , 107 , 74 , 167 , 229 , 124 , 167 , 182 , 138 , 225 , 191 , 69 , 101 , 63 , 86 , 182 , 86 , 253 , 58 , 163 , 53 , 239 , 127 , 174 , 105 , 107 , 102 , 63 , 27 , 132 , 114 },
470+ ValidFromTimestamp : uint32 (time .Now ().Unix ()),
471+ ObservationsTimestamp : uint32 (time .Now ().Unix ()),
472+ NativeFee : big .NewInt (10 ),
473+ LinkFee : big .NewInt (10 ),
474+ ExpiresAt : uint32 (time .Now ().Unix ()) + 100 ,
475+ NavPerShare : big .NewInt (1100 ),
476+ NextNavPerShare : big .NewInt (1101 ),
477+ NavDate : uint64 (time .Now ().UnixNano ()) - 100 ,
478+ Ripcord : 108 ,
479+ }
480+
402481var v13Data = v13.Data {
403482 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 },
404483 ValidFromTimestamp : uint32 (time .Now ().Unix ()),
@@ -550,6 +629,38 @@ func mustPackData(d interface{}) []byte {
550629 v .ActivationDateTime ,
551630 v .TokenizedPrice ,
552631 }
632+ case v11.Data :
633+ dataSchema = v11 .Schema ()
634+ args = []interface {}{
635+ v .FeedID ,
636+ v .ValidFromTimestamp ,
637+ v .ObservationsTimestamp ,
638+ v .NativeFee ,
639+ v .LinkFee ,
640+ v .ExpiresAt ,
641+ v .Mid ,
642+ v .LastSeenTimestampNs ,
643+ v .Bid ,
644+ v .BidVolume ,
645+ v .Ask ,
646+ v .AskVolume ,
647+ v .LastTradedPrice ,
648+ v .MarketStatus ,
649+ }
650+ case v12.Data :
651+ dataSchema = v12 .Schema ()
652+ args = []interface {}{
653+ v .FeedID ,
654+ v .ValidFromTimestamp ,
655+ v .ObservationsTimestamp ,
656+ v .NativeFee ,
657+ v .LinkFee ,
658+ v .ExpiresAt ,
659+ v .NavPerShare ,
660+ v .NextNavPerShare ,
661+ v .NavDate ,
662+ v .Ripcord ,
663+ }
553664 case v13.Data :
554665 dataSchema = v13 .Schema ()
555666 args = []interface {}{
0 commit comments