aboutsummaryrefslogtreecommitdiffstats
path: root/gentests.js
diff options
context:
space:
mode:
authorbrunobar79 <brunobar79@gmail.com>2018-07-03 07:24:24 +0800
committerbrunobar79 <brunobar79@gmail.com>2018-07-03 07:24:24 +0800
commitce0232fa1eeb2033a93618552189b5394b24fb4f (patch)
tree61ce00b98bb8320ded2311a660de564c8df0cad5 /gentests.js
parent73b6d5ff95d8152641b206fb39d4fa95998bc192 (diff)
downloadtangerine-wallet-browser-ce0232fa1eeb2033a93618552189b5394b24fb4f.tar
tangerine-wallet-browser-ce0232fa1eeb2033a93618552189b5394b24fb4f.tar.gz
tangerine-wallet-browser-ce0232fa1eeb2033a93618552189b5394b24fb4f.tar.bz2
tangerine-wallet-browser-ce0232fa1eeb2033a93618552189b5394b24fb4f.tar.lz
tangerine-wallet-browser-ce0232fa1eeb2033a93618552189b5394b24fb4f.tar.xz
tangerine-wallet-browser-ce0232fa1eeb2033a93618552189b5394b24fb4f.tar.zst
tangerine-wallet-browser-ce0232fa1eeb2033a93618552189b5394b24fb4f.zip
fix gentests.js warnings
Diffstat (limited to 'gentests.js')
-rw-r--r--gentests.js132
1 files changed, 69 insertions, 63 deletions
diff --git a/gentests.js b/gentests.js
index 8f31d8b67..5f1d716fd 100644
--- a/gentests.js
+++ b/gentests.js
@@ -1,6 +1,5 @@
const fs = require('fs')
const async = require('async')
-const path = require('path')
const promisify = require('pify')
// start(/\.selectors.js/, generateSelectorTest).catch(console.error)
@@ -8,7 +7,6 @@ const promisify = require('pify')
startContainer(/\.container.js/, generateContainerTest).catch(console.error)
async function getAllFileNames (dirName) {
- const rootPath = path.join(__dirname, dirName)
const allNames = (await promisify(fs.readdir)(dirName))
const fileNames = allNames.filter(name => name.match(/^.+\./))
const dirNames = allNames.filter(name => name.match(/^[^.]+$/))
@@ -16,7 +14,7 @@ async function getAllFileNames (dirName) {
const fullPathDirNames = dirNames.map(d => `${dirName}/${d}`)
const subNameArrays = await promisify(async.map)(fullPathDirNames, getAllFileNames)
let subNames = []
- subNameArrays.forEach(subNameArray => subNames = [...subNames, ...subNameArray])
+ subNameArrays.forEach(subNameArray => { subNames = [...subNames, ...subNameArray] })
return [
...fileNames.map(name => dirName + '/' + name),
@@ -24,6 +22,7 @@ async function getAllFileNames (dirName) {
]
}
+/*
async function start (fileRegEx, testGenerator) {
const fileNames = await getAllFileNames('./ui/app')
const sFiles = fileNames.filter(name => name.match(fileRegEx))
@@ -46,12 +45,12 @@ async function start (fileRegEx, testGenerator) {
})
}
+*/
async function startContainer (fileRegEx, testGenerator) {
const fileNames = await getAllFileNames('./ui/app')
const sFiles = fileNames.filter(name => name.match(fileRegEx))
- let sFileMethodNames
async.each(sFiles, async (sFile, cb) => {
console.log(`sFile`, sFile)
const [, sRootPath, sPath] = sFile.match(/^(.+\/)([^/]+)$/)
@@ -62,64 +61,68 @@ async function startContainer (fileRegEx, testGenerator) {
__dirname + '/' + sFile,
'utf8',
async (err, result) => {
- console.log(`result`, result.length)
- const returnObjectStrings = result
- .match(/return\s(\{[\s\S]+?})\n}/g)
- .map(str => {
- return str
- .slice(0, str.length - 1)
- .slice(7)
- .replace(/\n/g, '')
- .replace(/\s\s+/g, ' ')
-
+ if (err) {
+ console.log('Error: ', err)
+ } else {
+ console.log(`result`, result.length)
+ const returnObjectStrings = result
+ .match(/return\s(\{[\s\S]+?})\n}/g)
+ .map(str => {
+ return str
+ .slice(0, str.length - 1)
+ .slice(7)
+ .replace(/\n/g, '')
+ .replace(/\s\s+/g, ' ')
+
+ })
+ const mapStateToPropsAssertionObject = returnObjectStrings[0]
+ .replace(/\w+:\s\w+\([\w,\s]+\),/g, str => {
+ const strKey = str.match(/^\w+/)[0]
+ return strKey + ': \'mock' + str.match(/^\w+/)[0].replace(/^./, c => c.toUpperCase()) + ':mockState\',\n'
+ })
+ .replace(/{\s\w.+/, firstLinePair => `{\n ${firstLinePair.slice(2)}`)
+ .replace(/\w+:.+,/g, s => ` ${s}`)
+ .replace(/}/g, s => ` ${s}`)
+ let mapDispatchToPropsMethodNames
+ if (returnObjectStrings[1]) {
+ mapDispatchToPropsMethodNames = returnObjectStrings[1].match(/\s\w+:\s/g).map(str => str.match(/\w+/)[0])
+ }
+ const proxyquireObject = ('{\n ' + result
+ .match(/import\s{[\s\S]+?}\sfrom\s.+/g)
+ .map(s => s.replace(/\n/g, ''))
+ .map((s, i) => {
+ const proxyKeys = s.match(/{.+}/)[0].match(/\w+/g)
+ return '\'' + s.match(/'(.+)'/)[1] + '\': { ' + (proxyKeys.length > 1
+ ? '\n ' + proxyKeys.join(': () => {},\n ') + ': () => {},\n '
+ : proxyKeys[0] + ': () => {},') + ' }'
+ })
+ .join(',\n ') + '\n}')
+ .replace('{ connect: () => {}, },', `{
+ connect: (ms, md) => {
+ mapStateToProps = ms
+ mapDispatchToProps = md
+ return () => ({})
+ },
+ },`)
+ // console.log(`proxyquireObject`, proxyquireObject);
+ // console.log(`mapStateToPropsAssertionObject`, mapStateToPropsAssertionObject);
+ // console.log(`mapDispatchToPropsMethodNames`, mapDispatchToPropsMethodNames);
+
+ const containerTest = generateContainerTest(sPath, {
+ mapStateToPropsAssertionObject,
+ mapDispatchToPropsMethodNames,
+ proxyquireObject,
})
- const mapStateToPropsAssertionObject = returnObjectStrings[0]
- .replace(/\w+:\s\w+\([\w,\s]+\),/g, str => {
- const strKey = str.match(/^\w+/)[0]
- return strKey + ': \'mock' + str.match(/^\w+/)[0].replace(/^./, c => c.toUpperCase()) + ':mockState\',\n'
- })
- .replace(/{\s\w.+/, firstLinePair => `{\n ${firstLinePair.slice(2)}`)
- .replace(/\w+:.+,/g, s => ` ${s}`)
- .replace(/}/g, s => ` ${s}`)
- let mapDispatchToPropsMethodNames
- if (returnObjectStrings[1]) {
- mapDispatchToPropsMethodNames = returnObjectStrings[1].match(/\s\w+:\s/g).map(str => str.match(/\w+/)[0])
+ // console.log(`containerTest`, `${__dirname}/${sRootPath}tests/${testFilePath}`, containerTest);
+ console.log('----')
+ console.log(`sRootPath`, sRootPath)
+ console.log(`testFilePath`, testFilePath)
+ await promisify(fs.writeFile)(
+ `${__dirname}/${sRootPath}tests/${testFilePath}`,
+ containerTest,
+ 'utf8'
+ )
}
- const proxyquireObject = ('{\n ' + result
- .match(/import\s{[\s\S]+?}\sfrom\s.+/g)
- .map(s => s.replace(/\n/g, ''))
- .map((s, i) => {
- const proxyKeys = s.match(/{.+}/)[0].match(/\w+/g)
- return '\'' + s.match(/'(.+)'/)[1] + '\': { ' + (proxyKeys.length > 1
- ? '\n ' + proxyKeys.join(': () => {},\n ') + ': () => {},\n '
- : proxyKeys[0] + ': () => {},') + ' }'
- })
- .join(',\n ') + '\n}')
- .replace('{ connect: () => {}, },', `{
- connect: (ms, md) => {
- mapStateToProps = ms
- mapDispatchToProps = md
- return () => ({})
- },
- },`)
- // console.log(`proxyquireObject`, proxyquireObject);
- // console.log(`mapStateToPropsAssertionObject`, mapStateToPropsAssertionObject);
- // console.log(`mapDispatchToPropsMethodNames`, mapDispatchToPropsMethodNames);
-
- const containerTest = generateContainerTest(sPath, {
- mapStateToPropsAssertionObject,
- mapDispatchToPropsMethodNames,
- proxyquireObject,
- })
- // console.log(`containerTest`, `${__dirname}/${sRootPath}tests/${testFilePath}`, containerTest);
- console.log('----')
- console.log(`sRootPath`, sRootPath)
- console.log(`testFilePath`, testFilePath)
- await promisify(fs.writeFile)(
- `${__dirname}/${sRootPath}tests/${testFilePath}`,
- containerTest,
- 'utf8'
- )
}
)
}, (err) => {
@@ -127,7 +130,7 @@ async function startContainer (fileRegEx, testGenerator) {
})
}
-
+/*
function generateMethodList (methodArray) {
return methodArray.map(n => ' ' + n).join(',\n') + ','
}
@@ -143,7 +146,7 @@ function generateMethodDescribeBlock (methodName, index) {
})`
return describeBlock
}
-
+*/
function generateDispatchMethodDescribeBlock (methodName, index) {
const describeBlock =
`${index ? ' ' : ''}describe('${methodName}()', () => {
@@ -154,12 +157,13 @@ function generateDispatchMethodDescribeBlock (methodName, index) {
})`
return describeBlock
}
-
+/*
function generateMethodDescribeBlocks (methodArray) {
return methodArray
.map((methodName, index) => generateMethodDescribeBlock(methodName, index))
.join('\n\n')
}
+*/
function generateDispatchMethodDescribeBlocks (methodArray) {
return methodArray
@@ -167,6 +171,7 @@ function generateDispatchMethodDescribeBlocks (methodArray) {
.join('\n\n')
}
+/*
function generateSelectorTest (name, methodArray) {
return `import assert from 'assert'
import {
@@ -192,6 +197,7 @@ describe('${name.match(/^[^.]+/)} utils', () => {
})`
}
+*/
function generateContainerTest (sPath, {
mapStateToPropsAssertionObject,