This commit is contained in:
Sean Toner 2017-07-11 19:12:23 +00:00 committed by GitHub
commit 62d6127867
7 changed files with 1255 additions and 35 deletions

View file

@ -1,4 +1,4 @@
{
"presets": ["env"],
"presets": ["env", "flow"],
"plugins": ["transform-react-jsx"]
}

9
.flowconfig Normal file
View file

@ -0,0 +1,9 @@
[ignore]
[include]
[libs]
[options]
[lints]

2
.gitignore vendored
View file

@ -3,3 +3,5 @@
node_modules/
dist/
/.vagrant
lib/
testlib/

View file

@ -7,23 +7,31 @@
"author": "",
"license": "LGPL-2.1",
"scripts": {
"build": "webpack"
"build": "webpack",
"flow-tests": "babel tests/ -d testlib/",
"flow-src": "babel src/ -d lib/"
},
"devDependencies": {
"babel-cli": "^6.24.1",
"babel-core": "^6.25.0",
"babel-loader": "^7.0.0",
"babel-plugin-transform-react-jsx": "^6.24.1",
"babel-preset-env": "^1.5.2",
"babel-preset-flow": "^6.23.0",
"copy-webpack-plugin": "~3.0.1",
"enzyme": "^2.9.1",
"eslint": "^3.0.0",
"eslint-loader": "~1.6.1",
"eslint-plugin-react": "~6.9.0",
"flow-bin": "^0.49.1",
"jshint": "~2.9.1",
"jshint-loader": "~0.8.3",
"react-test-renderer": "^15.6.1",
"tape": "^4.7.0",
"webpack": "^2.6.1"
},
"dependencies": {
"react": "^15.6.0",
"react-dom": "^15.6.0"
"react": "^15.6.1",
"react-dom": "^15.6.1"
}
}

View file

@ -0,0 +1,22 @@
import React, { Component } from 'react';
function TestComponent(props) {
return (
<p>Hello {props.name}</p>
);
}
export default class TestApp extends Component {
constructor(props) {
super(props);
}
render() {
return (
<div className="testing">
This is just a test
<TestComponent name="Sean"/>
</div>
);
}
}

20
tests/concept.test.js Normal file
View file

@ -0,0 +1,20 @@
// @flow
import React from 'react'
import { shallow, mount, ShallowWrapper } from 'enzyme';
import TestApp, { TestComponent } from "../lib/components/test-component";
var test = require('tape'); // assign the tape library to the variable "test"
test('should return -1 when the value is not present in Array', (t) => {
let testArray: Array<number> = [1, 2, 3];
t.equal(-1, testArray.indexOf(4)); // 4 is not present in this array so passes
t.end();
});
test("should have 'Sean' in the TestComponent sub-component", (t) => {
const app: ShallowWrapper = shallow(<TestApp />);
t.equal(app.find("TestComponent").prop("name"), "Sean");
t.end();
});

1221
yarn.lock

File diff suppressed because it is too large Load diff