File tree Expand file tree Collapse file tree 2 files changed +86
-0
lines changed Expand file tree Collapse file tree 2 files changed +86
-0
lines changed Original file line number Diff line number Diff line change
1
+ /**
2
+ * @fileoverview Prevent multiple component definition per file
3
+ * @author Yannick Croissant
4
+ */
5
+ 'use strict' ;
6
+
7
+ // ------------------------------------------------------------------------------
8
+ // Requirements
9
+ // ------------------------------------------------------------------------------
10
+
11
+ var eslint = require ( 'eslint' ) . linter ;
12
+ var ESLintTester = require ( 'eslint-tester' ) ;
13
+
14
+ // ------------------------------------------------------------------------------
15
+ // Tests
16
+ // ------------------------------------------------------------------------------
17
+
18
+ var eslintTester = new ESLintTester ( eslint ) ;
19
+ eslintTester . addRuleTest ( 'lib/rules/no-multi-comp' , {
20
+
21
+ valid : [
22
+ {
23
+ code : 'var Hello = require(\'./components/Hello\');var HelloJohn = React.createClass({render: function() {return <Hello name="John" />;}});' ,
24
+ settings : {
25
+ ecmascript : 6 ,
26
+ jsx : true
27
+ }
28
+ }
29
+ ] ,
30
+
31
+ invalid : [
32
+ {
33
+ code : 'var Hello = React.createClass({render: function() {return <div>Hello {this.props.name}</div>;}});var HelloJohn = React.createClass({render: function() {return <Hello name="John" />;}});' ,
34
+ settings : {
35
+ ecmascript : 6 ,
36
+ jsx : true
37
+ } ,
38
+ errors : [ {
39
+ message : 'Declare only one React component per file'
40
+ } ]
41
+ }
42
+ ]
43
+ } ) ;
Original file line number Diff line number Diff line change
1
+ /**
2
+ * @fileoverview Prevent missing propTypes in a React component definition
3
+ * @author Yannick Croissant
4
+ */
5
+ 'use strict' ;
6
+
7
+ // ------------------------------------------------------------------------------
8
+ // Requirements
9
+ // ------------------------------------------------------------------------------
10
+
11
+ var eslint = require ( 'eslint' ) . linter ;
12
+ var ESLintTester = require ( 'eslint-tester' ) ;
13
+
14
+ // ------------------------------------------------------------------------------
15
+ // Tests
16
+ // ------------------------------------------------------------------------------
17
+
18
+ var eslintTester = new ESLintTester ( eslint ) ;
19
+ eslintTester . addRuleTest ( 'lib/rules/prop-types' , {
20
+
21
+ valid : [
22
+ {
23
+ code : 'var Hello = React.createClass({propTypes: {name: React.PropTypes.string.isRequired},render: function() {return <div>Hello {this.props.name}</div>;}});' ,
24
+ settings : {
25
+ ecmascript : 6 ,
26
+ jsx : true
27
+ }
28
+ }
29
+ ] ,
30
+
31
+ invalid : [
32
+ {
33
+ code : 'var Hello = React.createClass({render: function() {return <div>Hello {this.props.name}</div>;}});' ,
34
+ settings : {
35
+ ecmascript : 6 ,
36
+ jsx : true
37
+ } ,
38
+ errors : [ {
39
+ message : 'Component definition is missing props validation'
40
+ } ]
41
+ }
42
+ ]
43
+ } ) ;
You can’t perform that action at this time.
0 commit comments