@@ -30,7 +30,10 @@ describe('default values', () => {
3030 const { render, imports } = getTraitsFromNode ( node ) ;
3131
3232 // Then we expect the following traits to be rendered.
33- expect ( render ) . toBe ( `#[derive(BorshSerialize, BorshDeserialize, Clone, Debug, Eq, PartialEq)]\n` ) ;
33+ expect ( render ) . toBe (
34+ `#[derive(BorshSerialize, BorshDeserialize, Clone, Debug, Eq, PartialEq)]\n` +
35+ `#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]\n` ,
36+ ) ;
3437
3538 // And the following imports to be used.
3639 expect ( [ ...imports . imports ] ) . toStrictEqual ( [ 'borsh::BorshSerialize' , 'borsh::BorshDeserialize' ] ) ;
@@ -48,7 +51,8 @@ describe('default values', () => {
4851
4952 // Then we expect the following traits to be rendered.
5053 expect ( render ) . toBe (
51- `#[derive(BorshSerialize, BorshDeserialize, Clone, Debug, Eq, PartialEq, Copy, PartialOrd, Hash, FromPrimitive)]\n` ,
54+ `#[derive(BorshSerialize, BorshDeserialize, Clone, Debug, Eq, PartialEq, Copy, PartialOrd, Hash, FromPrimitive)]\n` +
55+ `#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]\n` ,
5256 ) ;
5357
5458 // And the following imports to be used.
@@ -75,16 +79,11 @@ describe('default values', () => {
7579 // Then we expect the following traits to be rendered.
7680 expect ( render ) . toBe (
7781 `#[derive(BorshSerialize, BorshDeserialize, Clone, Debug, Eq, PartialEq)]\n` +
78- `#[cfg (feature = "serde", derive(Serialize, Deserialize))]\n` ,
82+ `#[cfg_attr (feature = "serde", derive(serde:: Serialize, serde:: Deserialize))]\n` ,
7983 ) ;
8084
8185 // And the following imports to be used.
82- expect ( [ ...imports . imports ] ) . toStrictEqual ( [
83- 'borsh::BorshSerialize' ,
84- 'borsh::BorshDeserialize' ,
85- 'serde::Serialize' ,
86- 'serde::Deserialize' ,
87- ] ) ;
86+ expect ( [ ...imports . imports ] ) . toStrictEqual ( [ 'borsh::BorshSerialize' , 'borsh::BorshDeserialize' ] ) ;
8887 } ) ;
8988
9089 test ( 'it does not use default traits if they are overridden' , ( ) => {
@@ -122,15 +121,12 @@ describe('default values', () => {
122121
123122 // When we get the traits from the node using custom traits
124123 // such that some are part of the feature flag defaults.
125- const { render, imports } = getTraitsFromNode ( node , {
124+ const { render } = getTraitsFromNode ( node , {
126125 overrides : { coordinates : [ 'My' , 'special::Traits' , 'serde::Serialize' ] } ,
127126 } ) ;
128127
129128 // Then we expect the following traits to be rendered.
130- expect ( render ) . toBe ( `#[derive(My, Traits)]\n#[cfg(feature = "serde", derive(Serialize))]\n` ) ;
131-
132- // And the following imports to be used.
133- expect ( [ ...imports . imports ] ) . toStrictEqual ( [ 'special::Traits' , 'serde::Serialize' ] ) ;
129+ expect ( render ) . toBe ( `#[derive(My, Traits)]\n#[cfg_attr(feature = "serde", derive(serde::Serialize))]\n` ) ;
134130 } ) ;
135131} ) ;
136132
@@ -248,8 +244,8 @@ describe('base traits', () => {
248244 // Then we expect both the base and enum traits to be rendered as separate feature flags.
249245 expect ( render ) . toBe (
250246 `#[derive(MyNonFeatureTrait)]\n` +
251- `#[cfg (feature = "base", derive(MyBaseTrait))]\n` +
252- `#[cfg (feature = "enum", derive(MyScalarEnumTrait))]\n` ,
247+ `#[cfg_attr (feature = "base", derive(MyBaseTrait))]\n` +
248+ `#[cfg_attr (feature = "enum", derive(MyScalarEnumTrait))]\n` ,
253249 ) ;
254250 } ) ;
255251
@@ -274,7 +270,7 @@ describe('base traits', () => {
274270
275271 // Then we expect the following traits to be rendered.
276272 expect ( render ) . toBe (
277- `#[cfg (feature = "base", derive(MyBaseTrait))]\n#[cfg (feature = "enum", derive(MyScalarEnumTrait))]\n` ,
273+ `#[cfg_attr (feature = "base", derive(MyBaseTrait))]\n#[cfg_attr (feature = "enum", derive(MyScalarEnumTrait))]\n` ,
278274 ) ;
279275 } ) ;
280276} ) ;
@@ -336,7 +332,7 @@ describe('overridden traits', () => {
336332 } ) ;
337333
338334 // Then we expect some of the overridden traits to be rendered under feature flags.
339- expect ( render ) . toBe ( `#[derive(MyNonFeatureTrait)]\n#[cfg (feature = "custom", derive(MyFeedbackTrait))]\n` ) ;
335+ expect ( render ) . toBe ( `#[derive(MyNonFeatureTrait)]\n#[cfg_attr (feature = "custom", derive(MyFeedbackTrait))]\n` ) ;
340336 } ) ;
341337} ) ;
342338
0 commit comments