@@ -13,6 +13,7 @@ import (
1313 v1 "github.com/smartcontractkit/data-streams-sdk/go/report/v1"
1414 v10 "github.com/smartcontractkit/data-streams-sdk/go/report/v10"
1515 v11 "github.com/smartcontractkit/data-streams-sdk/go/report/v11"
16+ v12 "github.com/smartcontractkit/data-streams-sdk/go/report/v12"
1617 v13 "github.com/smartcontractkit/data-streams-sdk/go/report/v13"
1718 v2 "github.com/smartcontractkit/data-streams-sdk/go/report/v2"
1819 v3 "github.com/smartcontractkit/data-streams-sdk/go/report/v3"
@@ -179,6 +180,20 @@ func TestReport(t *testing.T) {
179180 t .Errorf ("expected: %#v, got: %#v" , v11Report , rv11 )
180181 }
181182
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+
182197 b , err = schema .Pack (v13Report .ReportContext , v13Report .ReportBlob , v13Report .RawRs , v13Report .RawSs , v13Report .RawVs )
183198 if err != nil {
184199 t .Errorf ("failed to encode report: %s" , err )
@@ -293,6 +308,15 @@ var v11Report = &Report[v11.Data]{
293308 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 },
294309}
295310
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+
296320var v13Report = & Report [v13.Data ]{
297321 Data : v13Data ,
298322 ReportContext : [3 ][32 ]uint8 {},
@@ -441,6 +465,19 @@ var v11Data = v11.Data{
441465 MarketStatus : common .MarketStatusOpen ,
442466}
443467
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+
444481var v13Data = v13.Data {
445482 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 },
446483 ValidFromTimestamp : uint32 (time .Now ().Unix ()),
@@ -610,6 +647,20 @@ func mustPackData(d interface{}) []byte {
610647 v .LastTradedPrice ,
611648 v .MarketStatus ,
612649 }
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+ }
613664 case v13.Data :
614665 dataSchema = v13 .Schema ()
615666 args = []interface {}{
0 commit comments