| 
 | 1 | +/**  | 
 | 2 | + * @fileoverview Tests for jsx-no-namespace  | 
 | 3 | + * @author Yacine Hmito  | 
 | 4 | + */  | 
 | 5 | + | 
 | 6 | +'use strict';  | 
 | 7 | + | 
 | 8 | +// ------------------------------------------------------------------------------  | 
 | 9 | +// Requirements  | 
 | 10 | +// ------------------------------------------------------------------------------  | 
 | 11 | + | 
 | 12 | +const RuleTester = require('eslint').RuleTester;  | 
 | 13 | +const rule = require('../../../lib/rules/no-namespace');  | 
 | 14 | + | 
 | 15 | +const parserOptions = {  | 
 | 16 | + ecmaVersion: 2018,  | 
 | 17 | + sourceType: 'module',  | 
 | 18 | + ecmaFeatures: {  | 
 | 19 | + jsx: true  | 
 | 20 | + }  | 
 | 21 | +};  | 
 | 22 | + | 
 | 23 | +// ------------------------------------------------------------------------------  | 
 | 24 | +// Tests  | 
 | 25 | +// ------------------------------------------------------------------------------  | 
 | 26 | + | 
 | 27 | +const ruleTester = new RuleTester({parserOptions});  | 
 | 28 | +ruleTester.run('jsx-no-namespace', rule, {  | 
 | 29 | + valid: [{  | 
 | 30 | + code: '<testcomponent />'  | 
 | 31 | + }, {  | 
 | 32 | + code: 'React.createElement("testcomponent")'  | 
 | 33 | + }, {  | 
 | 34 | + code: '<testComponent />'  | 
 | 35 | + }, {  | 
 | 36 | + code: 'React.createElement("testComponent")'  | 
 | 37 | + }, {  | 
 | 38 | + code: '<test_component />'  | 
 | 39 | + }, {  | 
 | 40 | + code: 'React.createElement("test_component")'  | 
 | 41 | + }, {  | 
 | 42 | + code: '<TestComponent />'  | 
 | 43 | + }, {  | 
 | 44 | + code: 'React.createElement("TestComponent")'  | 
 | 45 | + }, {  | 
 | 46 | + code: '<object.testcomponent />'  | 
 | 47 | + }, {  | 
 | 48 | + code: 'React.createElement("object.testcomponent")'  | 
 | 49 | + }, {  | 
 | 50 | + code: '<object.testComponent />'  | 
 | 51 | + }, {  | 
 | 52 | + code: 'React.createElement("object.testComponent")'  | 
 | 53 | + }, {  | 
 | 54 | + code: '<object.test_component />'  | 
 | 55 | + }, {  | 
 | 56 | + code: 'React.createElement("object.test_component")'  | 
 | 57 | + }, {  | 
 | 58 | + code: '<object.TestComponent />'  | 
 | 59 | + }, {  | 
 | 60 | + code: 'React.createElement("object.TestComponent")'  | 
 | 61 | + }, {  | 
 | 62 | + code: '<Object.testcomponent />'  | 
 | 63 | + }, {  | 
 | 64 | + code: 'React.createElement("Object.testcomponent")'  | 
 | 65 | + }, {  | 
 | 66 | + code: '<Object.testComponent />'  | 
 | 67 | + }, {  | 
 | 68 | + code: 'React.createElement("Object.testComponent")'  | 
 | 69 | + }, {  | 
 | 70 | + code: '<Object.test_component />'  | 
 | 71 | + }, {  | 
 | 72 | + code: 'React.createElement("Object.test_component")'  | 
 | 73 | + }, {  | 
 | 74 | + code: '<Object.TestComponent />'  | 
 | 75 | + }, {  | 
 | 76 | + code: 'React.createElement("Object.TestComponent")'  | 
 | 77 | + }],  | 
 | 78 | + | 
 | 79 | + invalid: [{  | 
 | 80 | + code: '<ns:testcomponent />',  | 
 | 81 | + errors: [{message: 'React component ns:testcomponent must not be in a namespace as React does not support them'}]  | 
 | 82 | + }, {  | 
 | 83 | + code: 'React.createElement("ns:testcomponent")',  | 
 | 84 | + errors: [{message: 'React component ns:testcomponent must not be in a namespace as React does not support them'}]  | 
 | 85 | + }, {  | 
 | 86 | + code: '<ns:testComponent />',  | 
 | 87 | + errors: [{message: 'React component ns:testComponent must not be in a namespace as React does not support them'}]  | 
 | 88 | + }, {  | 
 | 89 | + code: 'React.createElement("ns:testComponent")',  | 
 | 90 | + errors: [{message: 'React component ns:testComponent must not be in a namespace as React does not support them'}]  | 
 | 91 | + }, {  | 
 | 92 | + code: '<ns:test_component />',  | 
 | 93 | + errors: [{message: 'React component ns:test_component must not be in a namespace as React does not support them'}]  | 
 | 94 | + }, {  | 
 | 95 | + code: 'React.createElement("ns:test_component")',  | 
 | 96 | + errors: [{message: 'React component ns:test_component must not be in a namespace as React does not support them'}]  | 
 | 97 | + }, {  | 
 | 98 | + code: '<ns:TestComponent />',  | 
 | 99 | + errors: [{message: 'React component ns:TestComponent must not be in a namespace as React does not support them'}]  | 
 | 100 | + }, {  | 
 | 101 | + code: 'React.createElement("ns:TestComponent")',  | 
 | 102 | + errors: [{message: 'React component ns:TestComponent must not be in a namespace as React does not support them'}]  | 
 | 103 | + }, {  | 
 | 104 | + code: '<Ns:testcomponent />',  | 
 | 105 | + errors: [{message: 'React component Ns:testcomponent must not be in a namespace as React does not support them'}]  | 
 | 106 | + }, {  | 
 | 107 | + code: 'React.createElement("Ns:testcomponent")',  | 
 | 108 | + errors: [{message: 'React component Ns:testcomponent must not be in a namespace as React does not support them'}]  | 
 | 109 | + }, {  | 
 | 110 | + code: '<Ns:testComponent />',  | 
 | 111 | + errors: [{message: 'React component Ns:testComponent must not be in a namespace as React does not support them'}]  | 
 | 112 | + }, {  | 
 | 113 | + code: 'React.createElement("Ns:testComponent")',  | 
 | 114 | + errors: [{message: 'React component Ns:testComponent must not be in a namespace as React does not support them'}]  | 
 | 115 | + }, {  | 
 | 116 | + code: '<Ns:test_component />',  | 
 | 117 | + errors: [{message: 'React component Ns:test_component must not be in a namespace as React does not support them'}]  | 
 | 118 | + }, {  | 
 | 119 | + code: 'React.createElement("Ns:test_component")',  | 
 | 120 | + errors: [{message: 'React component Ns:test_component must not be in a namespace as React does not support them'}]  | 
 | 121 | + }, {  | 
 | 122 | + code: '<Ns:TestComponent />',  | 
 | 123 | + errors: [{message: 'React component Ns:TestComponent must not be in a namespace as React does not support them'}]  | 
 | 124 | + }, {  | 
 | 125 | + code: 'React.createElement("Ns:TestComponent")',  | 
 | 126 | + errors: [{message: 'React component Ns:TestComponent must not be in a namespace as React does not support them'}]  | 
 | 127 | + }]  | 
 | 128 | +});  | 
0 commit comments