39 lines
		
	
	
		
			810 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			810 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| #!/usr/bin/env node
 | |
| 
 | |
| 'use strict'
 | |
| 
 | |
| const fs = require('fs')
 | |
| const path = require('path')
 | |
| const check = require('check-types')
 | |
| const bfj = require('../src')
 | |
| 
 | |
| console.log('reading json')
 | |
| 
 | |
| let time = process.hrtime()
 | |
| 
 | |
| bfj.read(getDataPath('.json'))
 | |
|   .then(data => {
 | |
|     reportTime()
 | |
|     console.log('writing json')
 | |
|     return bfj.write(getDataPath('-result.json'), data)
 | |
|   })
 | |
|   .then(() => done('succeeded'))
 | |
|   .catch(error => done(error.stack, 1))
 | |
| 
 | |
| function getDataPath (suffix) {
 | |
|   return path.resolve(__dirname, process.argv[2] + suffix)
 | |
| }
 | |
| 
 | |
| function reportTime () {
 | |
|   let interimTime = process.hrtime(time)
 | |
|   console.log('%d seconds and %d nanoseconds', interimTime[0], interimTime[1])
 | |
|   time = process.hrtime()
 | |
| }
 | |
| 
 | |
| function done (message, code) {
 | |
|   reportTime()
 | |
|   console.log(message)
 | |
|   process.exit(code)
 | |
| }
 | |
| 
 |