@@ -27,7 +27,7 @@ const parserOptions = {
27
27
28
28
const ERROR_MESSAGE = 'Typo in static class property declaration' ;
29
29
const ERROR_MESSAGE_ES5 = 'Typo in property declaration' ;
30
- const ERROR_MESSAGE_LIFECYCLE_METHOD = ' Typo in component lifecycle method declaration' ;
30
+ const ERROR_MESSAGE_LIFECYCLE_METHOD = ( { actual , expected } ) => ` Typo in component lifecycle method declaration: ${ actual } should be ${ expected } ` ;
31
31
32
32
const ruleTester = new RuleTester ( ) ;
33
33
ruleTester . run ( 'no-typos' , rule , {
@@ -840,43 +840,43 @@ ruleTester.run('no-typos', rule, {
840
840
` ,
841
841
parserOptions,
842
842
errors : [ {
843
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
843
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'GetDerivedStateFromProps' , expected : 'getDerivedStateFromProps' } ) ,
844
844
type : 'MethodDefinition'
845
845
} , {
846
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
846
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentWillMount' , expected : 'componentWillMount' } ) ,
847
847
type : 'MethodDefinition'
848
848
} , {
849
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
849
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'UNSAFE_ComponentWillMount' , expected : 'UNSAFE_componentWillMount' } ) ,
850
850
type : 'MethodDefinition'
851
851
} , {
852
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
852
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentDidMount' , expected : 'componentDidMount' } ) ,
853
853
type : 'MethodDefinition'
854
854
} , {
855
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
855
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentWillReceiveProps' , expected : 'componentWillReceiveProps' } ) ,
856
856
type : 'MethodDefinition'
857
857
} , {
858
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
858
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'UNSAFE_ComponentWillReceiveProps' , expected : 'UNSAFE_componentWillReceiveProps' } ) ,
859
859
type : 'MethodDefinition'
860
860
} , {
861
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
861
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ShouldComponentUpdate' , expected : 'shouldComponentUpdate' } ) ,
862
862
type : 'MethodDefinition'
863
863
} , {
864
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
864
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentWillUpdate' , expected : 'componentWillUpdate' } ) ,
865
865
type : 'MethodDefinition'
866
866
} , {
867
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
867
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'UNSAFE_ComponentWillUpdate' , expected : 'UNSAFE_componentWillUpdate' } ) ,
868
868
type : 'MethodDefinition'
869
869
} , {
870
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
870
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'GetSnapshotBeforeUpdate' , expected : 'getSnapshotBeforeUpdate' } ) ,
871
871
type : 'MethodDefinition'
872
872
} , {
873
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
873
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentDidUpdate' , expected : 'componentDidUpdate' } ) ,
874
874
type : 'MethodDefinition'
875
875
} , {
876
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
876
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentDidCatch' , expected : 'componentDidCatch' } ) ,
877
877
type : 'MethodDefinition'
878
878
} , {
879
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
879
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentWillUnmount' , expected : 'componentWillUnmount' } ) ,
880
880
type : 'MethodDefinition'
881
881
} ]
882
882
} , {
@@ -902,47 +902,47 @@ ruleTester.run('no-typos', rule, {
902
902
` ,
903
903
parserOptions,
904
904
errors : [ {
905
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
905
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'Getderivedstatefromprops' , expected : 'getDerivedStateFromProps' } ) ,
906
906
type : 'MethodDefinition'
907
907
} , {
908
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
908
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'Componentwillmount' , expected : 'componentWillMount' } ) ,
909
909
type : 'MethodDefinition'
910
910
} , {
911
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
911
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'UNSAFE_Componentwillmount' , expected : 'UNSAFE_componentWillMount' } ) ,
912
912
type : 'MethodDefinition'
913
913
} , {
914
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
914
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'Componentdidmount' , expected : 'componentDidMount' } ) ,
915
915
type : 'MethodDefinition'
916
916
} , {
917
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
917
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'Componentwillreceiveprops' , expected : 'componentWillReceiveProps' } ) ,
918
918
type : 'MethodDefinition'
919
919
} , {
920
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
920
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'UNSAFE_Componentwillreceiveprops' , expected : 'UNSAFE_componentWillReceiveProps' } ) ,
921
921
type : 'MethodDefinition'
922
922
} , {
923
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
923
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'Shouldcomponentupdate' , expected : 'shouldComponentUpdate' } ) ,
924
924
type : 'MethodDefinition'
925
925
} , {
926
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
926
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'Componentwillupdate' , expected : 'componentWillUpdate' } ) ,
927
927
type : 'MethodDefinition'
928
928
} , {
929
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
929
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'UNSAFE_Componentwillupdate' , expected : 'UNSAFE_componentWillUpdate' } ) ,
930
930
type : 'MethodDefinition'
931
931
} , {
932
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
932
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'Getsnapshotbeforeupdate' , expected : 'getSnapshotBeforeUpdate' } ) ,
933
933
type : 'MethodDefinition'
934
934
} , {
935
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
935
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'Componentdidupdate' , expected : 'componentDidUpdate' } ) ,
936
936
type : 'MethodDefinition'
937
937
} , {
938
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
938
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'Componentdidcatch' , expected : 'componentDidCatch' } ) ,
939
939
type : 'MethodDefinition'
940
940
} , {
941
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
941
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'Componentwillunmount' , expected : 'componentWillUnmount' } ) ,
942
942
type : 'MethodDefinition'
943
943
} , {
944
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
945
- type : 'MethodDefinition'
944
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'Render' , expected : 'render' } ) ,
945
+ nodeType : 'MethodDefinition'
946
946
} ]
947
947
} , {
948
948
code : `
@@ -967,43 +967,43 @@ ruleTester.run('no-typos', rule, {
967
967
` ,
968
968
parserOptions,
969
969
errors : [ {
970
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
970
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'getderivedstatefromprops' , expected : 'getDerivedStateFromProps' } ) ,
971
971
type : 'MethodDefinition'
972
972
} , {
973
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
973
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'componentwillmount' , expected : 'componentWillMount' } ) ,
974
974
type : 'MethodDefinition'
975
975
} , {
976
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
976
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'unsafe_componentwillmount' , expected : 'UNSAFE_componentWillMount' } ) ,
977
977
type : 'MethodDefinition'
978
978
} , {
979
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
979
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'componentdidmount' , expected : 'componentDidMount' } ) ,
980
980
type : 'MethodDefinition'
981
981
} , {
982
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
982
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'componentwillreceiveprops' , expected : 'componentWillReceiveProps' } ) ,
983
983
type : 'MethodDefinition'
984
984
} , {
985
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
985
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'unsafe_componentwillreceiveprops' , expected : 'UNSAFE_componentWillReceiveProps' } ) ,
986
986
type : 'MethodDefinition'
987
987
} , {
988
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
988
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'shouldcomponentupdate' , expected : 'shouldComponentUpdate' } ) ,
989
989
type : 'MethodDefinition'
990
990
} , {
991
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
991
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'componentwillupdate' , expected : 'componentWillUpdate' } ) ,
992
992
type : 'MethodDefinition'
993
993
} , {
994
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
994
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'unsafe_componentwillupdate' , expected : 'UNSAFE_componentWillUpdate' } ) ,
995
995
type : 'MethodDefinition'
996
996
} , {
997
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
997
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'getsnapshotbeforeupdate' , expected : 'getSnapshotBeforeUpdate' } ) ,
998
998
type : 'MethodDefinition'
999
999
} , {
1000
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1000
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'componentdidupdate' , expected : 'componentDidUpdate' } ) ,
1001
1001
type : 'MethodDefinition'
1002
1002
} , {
1003
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1003
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'componentdidcatch' , expected : 'componentDidCatch' } ) ,
1004
1004
type : 'MethodDefinition'
1005
1005
} , {
1006
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1006
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'componentwillunmount' , expected : 'componentWillUnmount' } ) ,
1007
1007
type : 'MethodDefinition'
1008
1008
} ]
1009
1009
} , {
@@ -1583,25 +1583,25 @@ ruleTester.run('no-typos', rule, {
1583
1583
message : ERROR_MESSAGE_ES5 ,
1584
1584
type : 'Identifier'
1585
1585
} , {
1586
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1586
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentWillMount' , expected : 'componentWillMount' } ) ,
1587
1587
type : 'Property'
1588
1588
} , {
1589
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1589
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentDidMount' , expected : 'componentDidMount' } ) ,
1590
1590
type : 'Property'
1591
1591
} , {
1592
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1592
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentWillReceiveProps' , expected : 'componentWillReceiveProps' } ) ,
1593
1593
type : 'Property'
1594
1594
} , {
1595
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1595
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ShouldComponentUpdate' , expected : 'shouldComponentUpdate' } ) ,
1596
1596
type : 'Property'
1597
1597
} , {
1598
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1598
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentWillUpdate' , expected : 'componentWillUpdate' } ) ,
1599
1599
type : 'Property'
1600
1600
} , {
1601
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1601
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentDidUpdate' , expected : 'componentDidUpdate' } ) ,
1602
1602
type : 'Property'
1603
1603
} , {
1604
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1604
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentWillUnmount' , expected : 'componentWillUnmount' } ) ,
1605
1605
type : 'Property'
1606
1606
} ]
1607
1607
} , {
@@ -1635,25 +1635,25 @@ ruleTester.run('no-typos', rule, {
1635
1635
message : ERROR_MESSAGE_ES5 ,
1636
1636
type : 'Identifier'
1637
1637
} , {
1638
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1638
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentWillMount' , expected : 'componentWillMount' } ) ,
1639
1639
type : 'Property'
1640
1640
} , {
1641
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1641
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentDidMount' , expected : 'componentDidMount' } ) ,
1642
1642
type : 'Property'
1643
1643
} , {
1644
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1644
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentWillReceiveProps' , expected : 'componentWillReceiveProps' } ) ,
1645
1645
type : 'Property'
1646
1646
} , {
1647
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1647
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ShouldComponentUpdate' , expected : 'shouldComponentUpdate' } ) ,
1648
1648
type : 'Property'
1649
1649
} , {
1650
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1650
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentWillUpdate' , expected : 'componentWillUpdate' } ) ,
1651
1651
type : 'Property'
1652
1652
} , {
1653
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1653
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentDidUpdate' , expected : 'componentDidUpdate' } ) ,
1654
1654
type : 'Property'
1655
1655
} , {
1656
- message : ERROR_MESSAGE_LIFECYCLE_METHOD ,
1656
+ message : ERROR_MESSAGE_LIFECYCLE_METHOD ( { actual : 'ComponentWillUnmount' , expected : 'componentWillUnmount' } ) ,
1657
1657
type : 'Property'
1658
1658
} ]
1659
1659
/*
0 commit comments