Skip to content

Conversation

caylazabel
Copy link

my tests work and then they dont work when i try to fix things.

"indent": [ "error", 2 ],
"quotes": [ "error", "single" ],
"semi": ["error", "always"],
"linebreak-style": [ "error", "unix" ]

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No comma dangle. Boo. :p

'use strict';

const fs = require('fs');
const readFiles = require('./lib/file-reader.js')

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're requiring in your file reader here in the index, but you're not using it here.

Write a version of the function call for the readFiles method so that you can call it here in the index file, and not just in the test file.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Basically, I want you to create a function much like how you did in your tests to take the data from your three files and print them out or do something with them in a meaningful way.

var result = [];

fs.readFile(pathArray[0],function(err, data){
if (err) return callback(err);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice use of returning the callback of the error.


const fs = require('fs');

const readFileHelper = module.exports = function(pathArray, callback) {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work making the input an array of paths.

if (err) return callback(err);
result.push(data.toString('hex', 0,8));
console.log('my result:', result);
callback(null, result);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work calling the callback at the bottom with the resulting information and a null for the first argument. Perfect ansynchronous callback pattern.

describe('with bad file paths', function(){
it('should return an error', function(){
readFile([`${__dirname}/dont-exist.txt`], function(err){
expect(!!err).to.equal(true);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good stuff with the double bang here.


describe('with file good file paths', function(){
before((done) => {
this.paths = [

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work using the before block like Brian did during class.

done();
});
it('should have correct order of hex strings', (done) => {
var expectedResult = ['3166696c65206e75', '3366696c65206e75', '3266696c65206e75'];

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perfect way to check the call is being made asynchronously.

expect(data[1]).to.equal(expectedResult[1]);
expect(data[2]).to.equal(expectedResult[2]);
console.log('data', data);
done();

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great use of done here to end things.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants