Skip to content
This repository was archived by the owner on Jun 8, 2019. It is now read-only.

Commit cf92786

Browse files
committed
feat(test): Add test suite.
1 parent 3db4e12 commit cf92786

File tree

19 files changed

+461
-2
lines changed

19 files changed

+461
-2
lines changed

.babelrc

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,13 @@
55
"plugins": [
66
"transform-object-rest-spread",
77
"transform-runtime"
8-
]
8+
],
9+
"env": {
10+
"test": {
11+
"plugins": [
12+
// Makes power-assert work
13+
"espower"
14+
]
15+
}
16+
}
917
}

.eslintignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
test/**/expected.js

.eslintrc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
"ecmaVersion": 6,
44
"sourceType": "module",
55
"ecmaFeatures": {
6-
"experimentalObjectRestSpread": true
6+
"experimentalObjectRestSpread": true,
7+
"jsx": true
78
}
89
},
910
"extends": "eslint:recommended",

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
node_modules
22
*.log
33
lib
4+
test/fixtures/*/actual.json

package.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,21 @@
1616
},
1717
"devDependencies": {
1818
"babel-cli": "^6.1.18",
19+
"babel-core": "^6.13.2",
20+
"babel-plugin-espower": "^2.3.1",
1921
"babel-plugin-transform-object-rest-spread": "^6.1.18",
2022
"babel-plugin-transform-runtime": "^6.1.18",
2123
"babel-preset-es2015": "^6.1.18",
24+
"babel-preset-react": "^6.11.1",
2225
"eslint": "^2.9.0",
26+
"mocha": "^3.0.2",
27+
"power-assert": "^1.4.1",
2328
"rimraf": "^2.4.3"
2429
},
2530
"scripts": {
2631
"lint": "eslint src/",
2732
"clean": "rimraf lib/",
33+
"test": "env NODE_ENV=test mocha --compilers js:babel-core/register",
2834
"build": "babel src/ --out-dir lib/",
2935
"preversion": "npm run lint && npm run clean && npm run build",
3036
"prepublish": "npm run clean && npm run build"
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import {FormattedHTMLMessage} from 'react-intl';
2+
import React from 'react';
3+
4+
export default class Foo extends React.Component {
5+
render() {
6+
return <FormattedHTMLMessage id="foo.bar.baz" defaultMessage="<h1>Hello World!</h1>" description="The default message." />;
7+
}
8+
}
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
'use strict';
2+
3+
Object.defineProperty(exports, "__esModule", {
4+
value: true
5+
});
6+
7+
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
8+
9+
var _reactIntl = require('react-intl');
10+
11+
var _react = require('react');
12+
13+
var _react2 = _interopRequireDefault(_react);
14+
15+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16+
17+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
18+
19+
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
20+
21+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
22+
23+
var Foo = function (_React$Component) {
24+
_inherits(Foo, _React$Component);
25+
26+
function Foo() {
27+
_classCallCheck(this, Foo);
28+
29+
return _possibleConstructorReturn(this, Object.getPrototypeOf(Foo).apply(this, arguments));
30+
}
31+
32+
_createClass(Foo, [{
33+
key: 'render',
34+
value: function render() {
35+
return _react2.default.createElement(_reactIntl.FormattedHTMLMessage, { id: 'foo.bar.baz', defaultMessage: '<h1>Hello World!</h1>', description: 'The default message.' });
36+
}
37+
}]);
38+
39+
return Foo;
40+
}(_react2.default.Component);
41+
42+
exports.default = Foo;
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[
2+
{
3+
"id": "foo.bar.baz",
4+
"description": "The default message.",
5+
"defaultMessage": "<h1>Hello World!</h1>"
6+
}
7+
]
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import {FormattedMessage} from 'react-intl';
2+
import React from 'react';
3+
4+
export default class Foo extends React.Component {
5+
render() {
6+
return <FormattedMessage id="foo.bar.baz" defaultMessage="Hello World!" description="The default message." />;
7+
}
8+
}
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
'use strict';
2+
3+
Object.defineProperty(exports, "__esModule", {
4+
value: true
5+
});
6+
7+
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
8+
9+
var _reactIntl = require('react-intl');
10+
11+
var _react = require('react');
12+
13+
var _react2 = _interopRequireDefault(_react);
14+
15+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16+
17+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
18+
19+
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
20+
21+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
22+
23+
var Foo = function (_React$Component) {
24+
_inherits(Foo, _React$Component);
25+
26+
function Foo() {
27+
_classCallCheck(this, Foo);
28+
29+
return _possibleConstructorReturn(this, Object.getPrototypeOf(Foo).apply(this, arguments));
30+
}
31+
32+
_createClass(Foo, [{
33+
key: 'render',
34+
value: function render() {
35+
return _react2.default.createElement(_reactIntl.FormattedMessage, { id: 'foo.bar.baz', defaultMessage: 'Hello World!', description: 'The default message.' });
36+
}
37+
}]);
38+
39+
return Foo;
40+
}(_react2.default.Component);
41+
42+
exports.default = Foo;
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[
2+
{
3+
"id": "foo.bar.baz",
4+
"description": "The default message.",
5+
"defaultMessage": "Hello World!"
6+
}
7+
]
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
import {defineMessages} from 'react-intl';
2+
import React from 'react';
3+
4+
export default class Foo extends React.Component {
5+
render() {
6+
const msgs = defineMessages({
7+
header: {
8+
id: 'foo.bar.baz',
9+
defaultMessage: 'Hello World!',
10+
description: 'The default message',
11+
},
12+
content: {
13+
id: 'foo.bar.biff',
14+
defaultMessage: 'Hello Nurse!',
15+
description: 'Another message',
16+
},
17+
});
18+
return (
19+
<div>
20+
<h1>{this.props.intl.formatMessage(msgs.header)}</h1>
21+
<p>{this.props.intl.formatMessage(msgs.content)}</p>
22+
</div>
23+
);
24+
}
25+
}
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
'use strict';
2+
3+
Object.defineProperty(exports, "__esModule", {
4+
value: true
5+
});
6+
7+
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
8+
9+
var _reactIntl = require('react-intl');
10+
11+
var _react = require('react');
12+
13+
var _react2 = _interopRequireDefault(_react);
14+
15+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16+
17+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
18+
19+
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
20+
21+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
22+
23+
var Foo = function (_React$Component) {
24+
_inherits(Foo, _React$Component);
25+
26+
function Foo() {
27+
_classCallCheck(this, Foo);
28+
29+
return _possibleConstructorReturn(this, Object.getPrototypeOf(Foo).apply(this, arguments));
30+
}
31+
32+
_createClass(Foo, [{
33+
key: 'render',
34+
value: function render() {
35+
var msgs = (0, _reactIntl.defineMessages)({
36+
header: {
37+
id: 'foo.bar.baz',
38+
defaultMessage: 'Hello World!',
39+
description: 'The default message'
40+
},
41+
content: {
42+
id: 'foo.bar.biff',
43+
defaultMessage: 'Hello Nurse!',
44+
description: 'Another message'
45+
}
46+
});
47+
return _react2.default.createElement(
48+
'div',
49+
null,
50+
_react2.default.createElement(
51+
'h1',
52+
null,
53+
this.props.intl.formatMessage(msgs.header)
54+
),
55+
_react2.default.createElement(
56+
'p',
57+
null,
58+
this.props.intl.formatMessage(msgs.content)
59+
)
60+
);
61+
}
62+
}]);
63+
64+
return Foo;
65+
}(_react2.default.Component);
66+
67+
exports.default = Foo;
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
[
2+
{
3+
"id": "foo.bar.baz",
4+
"description": "The default message",
5+
"defaultMessage": "Hello World!"
6+
},
7+
{
8+
"id": "foo.bar.biff",
9+
"description": "Another message",
10+
"defaultMessage": "Hello Nurse!"
11+
}
12+
]
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import {FormattedMessage} from 'react-intl';
2+
import React from 'react';
3+
4+
export default class Foo extends React.Component {
5+
render() {
6+
return <FormattedMessage id="foo.bar.baz" defaultMessage="Hello World!" />
7+
}
8+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
import {FormattedMessage} from 'react-i18n';
2+
import {defineMessages} from 'react-intl';
3+
import React from 'react';
4+
5+
export default class Foo extends React.Component {
6+
render() {
7+
const msgs = defineMessages({
8+
header: {
9+
id: 'foo.bar.baz',
10+
defaultMessage: 'Hello World!',
11+
description: 'The default message',
12+
},
13+
content: {
14+
id: 'foo.bar.biff',
15+
defaultMessage: 'Hello Nurse!',
16+
description: 'Another message',
17+
},
18+
});
19+
return (
20+
<div>
21+
<FormattedMessage id="foo.bar.baz" defaultMessage="Hello World!" description="The default message." />
22+
{msgs}
23+
</div>
24+
);
25+
}
26+
}
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
'use strict';
2+
3+
Object.defineProperty(exports, "__esModule", {
4+
value: true
5+
});
6+
7+
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
8+
9+
var _reactIntl = require('react-intl');
10+
11+
var _react = require('react');
12+
13+
var _react2 = _interopRequireDefault(_react);
14+
15+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16+
17+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
18+
19+
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
20+
21+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
22+
23+
var Foo = function (_React$Component) {
24+
_inherits(Foo, _React$Component);
25+
26+
function Foo() {
27+
_classCallCheck(this, Foo);
28+
29+
return _possibleConstructorReturn(this, Object.getPrototypeOf(Foo).apply(this, arguments));
30+
}
31+
32+
_createClass(Foo, [{
33+
key: 'render',
34+
value: function render() {
35+
var msgs = (0, _reactIntl.defineMessages)({
36+
header: {
37+
id: 'foo.bar.baz',
38+
defaultMessage: 'Hello World!',
39+
description: 'The default message'
40+
},
41+
content: {
42+
id: 'foo.bar.biff',
43+
defaultMessage: 'Hello Nurse!',
44+
description: 'Another message'
45+
}
46+
});
47+
return _react2.default.createElement(
48+
'div',
49+
null,
50+
_react2.default.createElement(
51+
'h1',
52+
null,
53+
this.props.intl.formatMessage(msgs.header)
54+
),
55+
_react2.default.createElement(
56+
'p',
57+
null,
58+
this.props.intl.formatMessage(msgs.content)
59+
)
60+
);
61+
}
62+
}]);
63+
64+
return Foo;
65+
}(_react2.default.Component);
66+
67+
exports.default = Foo;
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[
2+
{
3+
"id": "foo.bar.baz",
4+
"description": "The default message.",
5+
"defaultMessage": "Hello World!"
6+
}
7+
]

0 commit comments

Comments
 (0)