Skip to content

Commit

Permalink
add some TC, add script test:watch, fix wrong info in package.json
Browse files Browse the repository at this point in the history
  • Loading branch information
b6pzeusbc54tvhw5jgpyw8pwz2x6gs committed May 12, 2017
1 parent 93784cc commit 3d11a85
Show file tree
Hide file tree
Showing 2 changed files with 63 additions and 28 deletions.
12 changes: 7 additions & 5 deletions package.json
@@ -1,15 +1,16 @@
{
"name": "define-selectors",
"version": "0.1.0",
"version": "0.1.1",
"description": "to define selectors ignoring order",
"main": "lib/index.js",
"files": [
"lib"
],
"scripts": {
"clean": "rimraf lib",
"test": "mocha --require babel-polyfill --compilers js:babel-register",
"lint": "eslint -c .eslintrc.js --no-eslintrc --max-warnings 0 ./",
"test": "mocha --require babel-polyfill --compilers js:babel-register",
"test:watch": "node_modules/.bin/nodemon --exec 'node_modules/.bin/mocha --require babel-polyfill --compilers js:babel-register || exit 1'",
"test:cov": "better-npm-run test:cov",
"compile:commonjs": "better-npm-run compile:commonjs",
"prepublish": "npm run clean && npm run compile:commonjs"
Expand All @@ -31,7 +32,7 @@
},
"repository": {
"type": "git",
"url": "git+https://github.com/b6pzeusbc54tvhw5jgpyw8pwz2x6gs/define-reselect.git"
"url": "git+https://github.com/b6pzeusbc54tvhw5jgpyw8pwz2x6gs/define-selectors.git"
},
"keywords": [
"reselect",
Expand All @@ -44,9 +45,9 @@
"author": "Alfred UC <b6pzeusbc54tvhw5jgpyw8pwz2x6gs@gmail.com> (https://github.com/b6pzeusbc54tvhw5jgpyw8pwz2x6gs)",
"license": "MIT",
"bugs": {
"url": "https://github.com/b6pzeusbc54tvhw5jgpyw8pwz2x6gs/define-reselect/issues"
"url": "https://github.com/b6pzeusbc54tvhw5jgpyw8pwz2x6gs/define-selectors/issues"
},
"homepage": "https://github.com/b6pzeusbc54tvhw5jgpyw8pwz2x6gs/define-reselect#readme",
"homepage": "https://github.com/b6pzeusbc54tvhw5jgpyw8pwz2x6gs/define-selectors#readme",
"devDependencies": {
"babel-cli": "^6.24.1",
"babel-eslint": "6",
Expand All @@ -62,6 +63,7 @@
"eslint": "^3.19.0",
"eslint-plugin-import": "^2.2.0",
"mocha": "^3.3.0",
"nodemon": "^1.11.0",
"nyc": "^10.2.0",
"rimraf": "^2.6.1"
},
Expand Down
79 changes: 56 additions & 23 deletions test/index.js
Expand Up @@ -6,21 +6,11 @@ export const selectNav = state => state.nav
export const selectPage = state => state.page
export const selectFoo = state => state.foo

const selectors = {

selectNavAndPageAndFoo: [
[ 'selectNavAndPage', selectFoo ],
(navAndPage, foo) => {
return `${navAndPage}/${foo}`
},
],

selectNavAndPage: [
[ selectNav, selectPage ],
(nav, page) => {
return `${nav}/${page}`
},
],
const selectNavPageFooResultFunc = (navPage, foo) => {
return `${navPage}/${foo}`
}
const selectNavPageResultFunc = (nav, page) => {
return `${nav}/${page}`
}

const state = {
Expand All @@ -29,18 +19,61 @@ const state = {
foo: 'fooC',
}

let selectNavAndPageAndFoo, selectNavAndPage
describe('define-reselect test', () => {

it('defineSelectors should work', () => {
const defined = defineSelectors( selectors )
selectNavAndPageAndFoo = defined.selectNavAndPageAndFoo
selectNavAndPage = defined.selectNavAndPage
describe('defineSelectors should work', () => {

let selectNavPageFoo, selectNavPage

it('basic defineSelectors should work', () => {
const defined = defineSelectors({
selectNavPageFoo: [
[ 'selectNavPage', selectFoo ],
selectNavPageFooResultFunc,
],
selectNavPage: [
[ selectNav, selectPage ],
selectNavPageResultFunc,
],
})
selectNavPageFoo = defined.selectNavPageFoo
selectNavPage = defined.selectNavPage
})

it('basic selectors should work', () => {
expect( selectNavPageFoo(state) ).to.equal( 'navA/pageB/fooC' )
expect( selectNavPage(state) ).to.equal( 'navA/pageB' )
})
})

it('selectors should work', () => {
expect( selectNavAndPageAndFoo(state) ).to.equal( 'navA/pageB/fooC' )
expect( selectNavAndPage(state) ).to.equal( 'navA/pageB' )
describe('cacheSize options should work', () => {
let selectNavPageFooWithCacheSize2, selectNavPageWithCacheSize3
it('cacheSize', () => {

const defined = defineSelectors({
selectNavPageFooWithCacheSize2: [
[ 'selectNavPageWithCacheSize3', selectFoo ],
selectNavPageFooResultFunc,
void 0, 2,
],
selectNavPageWithCacheSize3: [
[ selectNav, selectPage ],
selectNavPageResultFunc,
void 0, 3,
],
})
selectNavPageFooWithCacheSize2 = defined.selectNavPageFooWithCacheSize2
selectNavPageWithCacheSize3 = defined.selectNavPageWithCacheSize3
})

it('selectors with cacheSize should work', () => {
expect( selectNavPageFooWithCacheSize2(state) ).to.equal( 'navA/pageB/fooC' )
expect( selectNavPageWithCacheSize3(state) ).to.equal( 'navA/pageB' )
})
})



})


0 comments on commit 3d11a85

Please sign in to comment.