@@ -17,6 +17,7 @@ func Test_UnmarshalDyDx(t *testing.T) {
1717 tickermetadata .NewAggregatorID ("coingecko" , "id" ),
1818 tickermetadata .NewAggregatorID ("cmc" , "id" ),
1919 },
20+ false ,
2021 )
2122
2223 bz , err := tickermetadata .MarshalDyDx (elem )
@@ -28,7 +29,7 @@ func Test_UnmarshalDyDx(t *testing.T) {
2829 })
2930
3031 t .Run ("can marshal and unmarshal the same struct and values with empty AggregatorIDs" , func (t * testing.T ) {
31- elem := tickermetadata .NewDyDx (100 , 1000 , nil )
32+ elem := tickermetadata .NewDyDx (100 , 1000 , nil , false )
3233
3334 bz , err := tickermetadata .MarshalDyDx (elem )
3435 require .NoError (t , err )
@@ -50,6 +51,39 @@ func Test_UnmarshalDyDx(t *testing.T) {
5051 tickermetadata .NewAggregatorID ("coingecko" , "id" ),
5152 tickermetadata .NewAggregatorID ("cmc" , "id" ),
5253 },
54+ false ,
55+ ), elem )
56+ })
57+
58+ t .Run ("can unmarshal a JSON string into a struct with empty CrossLaunch field" , func (t * testing.T ) {
59+ elemJSON := `{"reference_price":100,"liquidity":1000,"aggregate_ids":[{"venue":"coingecko","ID":"id"},{"venue":"cmc","ID":"id"}]}`
60+ elem , err := tickermetadata .DyDxFromJSONString (elemJSON )
61+ require .NoError (t , err )
62+
63+ require .Equal (t , tickermetadata .NewDyDx (
64+ 100 ,
65+ 1000 ,
66+ []tickermetadata.AggregatorID {
67+ tickermetadata .NewAggregatorID ("coingecko" , "id" ),
68+ tickermetadata .NewAggregatorID ("cmc" , "id" ),
69+ },
70+ false ,
71+ ), elem )
72+ })
73+
74+ t .Run ("can unmarshal a JSON string into a struct with CrossLaunch field set" , func (t * testing.T ) {
75+ elemJSON := `{"reference_price":100,"liquidity":1000,"aggregate_ids":[{"venue":"coingecko","ID":"id"},{"venue":"cmc","ID":"id"}],"cross_launch":true}`
76+ elem , err := tickermetadata .DyDxFromJSONString (elemJSON )
77+ require .NoError (t , err )
78+
79+ require .Equal (t , tickermetadata .NewDyDx (
80+ 100 ,
81+ 1000 ,
82+ []tickermetadata.AggregatorID {
83+ tickermetadata .NewAggregatorID ("coingecko" , "id" ),
84+ tickermetadata .NewAggregatorID ("cmc" , "id" ),
85+ },
86+ true ,
5387 ), elem )
5488 })
5589}
0 commit comments