Skip to content

Commit 6a72cfc

Browse files
committed
feat: instrument .tsx
1 parent d35e8a3 commit 6a72cfc

File tree

5 files changed

+39
-5
lines changed

5 files changed

+39
-5
lines changed

guess.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,15 @@ var path = require('path');
33

44
var ts = require('typescript');
55

6-
var pattern = 'test/**/*.ts';
6+
var pattern = 'test/**/*.@(ts|tsx)';
77
var cwd = process.cwd();
88
var packageData = require(path.join(cwd, 'package.json'));
99

1010
if (packageData &&
1111
typeof packageData.directories === 'object' &&
1212
typeof packageData.directories.test === 'string') {
1313
var testDir = packageData.directories.test;
14-
pattern = testDir + ((testDir.lastIndexOf('/', 0) === 0) ? '' : '/') + '**/*.ts';
14+
pattern = testDir + ((testDir.lastIndexOf('/', 0) === 0) ? '' : '/') + '**/*.@(ts|tsx)';
1515
}
1616

1717
var tsconfigPath = ts.findConfigFile(cwd, fs.existsSync);

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,9 @@
99
"main": "index.js",
1010
"scripts": {
1111
"demo": "mocha --require './guess' test/demo.ts",
12-
"test": "run-p test:*",
12+
"test": "run-s test:*",
1313
"test:ts": "mocha --require './guess' test/*_test.ts",
14+
"test:tsx": "mocha --require './guess' test/*_test.tsx",
1415
"test:outdir": "cd test/test-outdir && mocha --require ../../guess test/*_test.ts"
1516
},
1617
"dependencies": {

test/test-outdir/test/to_be_instrumented_test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import assert = require('assert')
44
import expect = require('expect.js')
55
import MyComponent from '../lib/mycomponent.tsx';
66

7-
describe('test for outDir option', function() {
7+
describe('espower-typescript: `outDir` option', function() {
88
beforeEach(function() {
99
this.expectPowerAssertMessage = (body: () => void, expectedLines: string) => {
1010
try {

test/to_be_instrumented_test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import assert = require('assert')
44
import expect = require('expect.js')
55
import MyComponent from './lib/mycomponent.tsx';
66

7-
describe('power-assert message', function() {
7+
describe('espower-typescript: ts', function() {
88

99
beforeEach(function() {
1010
this.expectPowerAssertMessage = (body: () => void, expectedLines: string) => {

test/to_be_instrumented_test.tsx

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
'use strict';
2+
3+
import assert = require('assert')
4+
import expect = require('expect.js')
5+
import React = require('react');
6+
7+
describe('espower-typescript: tsx', function() {
8+
9+
beforeEach(function() {
10+
this.expectPowerAssertMessage = (body: () => void, expectedLines: string) => {
11+
try {
12+
body();
13+
expect().fail('AssertionError should be thrown');
14+
} catch(e) {
15+
expect(e.message.split('\n').slice(2, -1).join('\n')).to.eql(expectedLines);
16+
}
17+
}
18+
});
19+
20+
it('jsx:react', function() {
21+
let Foo = (): any => {
22+
return (<input />);
23+
};
24+
25+
let expected =
26+
` assert.equal(1, Foo())
27+
|
28+
Object{"$$typeof":Symbol(react.element),type:"input",key:null,ref:null,props:#Object#,_owner:null,_store:#Object#}`;
29+
this.expectPowerAssertMessage(() => {
30+
assert.equal(1, Foo());
31+
}, expected);
32+
});
33+
});

0 commit comments

Comments
 (0)