diff --git a/challenges/basic-javascript.json b/challenges/basic-javascript.json index 42233ed0e62..9d4e5b0b121 100644 --- a/challenges/basic-javascript.json +++ b/challenges/basic-javascript.json @@ -259,7 +259,7 @@ "challengeSeed": [ "var firstName = \"Madeline\";", "", - "var thirdToLastLetterOfFirstName = firstName[firstName.length - 2];", + "var thirdToLastLetterOfFirstName = firstName[firstName.length - 3];", "", "var lastName = \"Chen\";", "", @@ -601,7 +601,7 @@ ], "challengeSeed": [ "var myArray = ['John', 23, ['dog', 3]];", - "var removed = myArray;//This should be ['John'] and myArray should now be ['John', 23]", + "var removed = myArray;//This should be ['John'] and myArray should now be [23, ['dog', 3]]", "", "", "(function(y, z){return('myArray = ' + JSON.stringify(y) + ' & removed = ' + JSON.stringify(z));})(myArray, removed);" @@ -725,9 +725,9 @@ "", "Now that we have an objects we need to know how to add and remove properties from it", "We add properties to objects like this", - "myObject['myProperty'] = \"myValue\";", + "myObject.myProperty = \"myValue\";", "They can also be deleted like this", - "delete(myObject[\"myProperty\"]);", + "delete(myObject.myProperty);", "Let's add the property bark", "" ], @@ -752,7 +752,7 @@ " \"friends\": []", "};", "", - "//Let's add the property age to myDog", + "//Let's add the property bark to myDog", "", "", "//Now delete the property tails", @@ -1027,7 +1027,7 @@ ], "tests":[ "assert(test === 2, 'Your RegEx should have found two numbers in the testString');", - "assert(editorValue.match(/\\/\\\\d\\+\\//gi), 'You should be using the following expression /\\d+/gi to find the numbers in the testString');" + "assert(editor.getValue().match(/\\/\\\\d\\+\\//gi), 'You should be using the following expression /\\d+/gi to find the numbers in the testString');" ], "challengeSeed":[ "var test = (function(){", @@ -1058,7 +1058,7 @@ ], "tests":[ "assert(test === 7, 'Your RegEx should have found seven spaces in the testString');", - "assert(editorValue.match(/\\/\\\\s\\+\\//gi), 'You should be using the following expression /\\s+/gi to find the spaces in the testString');" + "assert(editor.getValue().match(/\\/\\\\s\\+\\//gi), 'You should be using the following expression /\\s+/gi to find the spaces in the testString');" ], "challengeSeed":[ "var test = (function(){", @@ -1087,7 +1087,7 @@ ], "tests":[ "assert(test === 36, 'Your RegEx should have found seven spaces in the testString');", - "assert(editorValue.match(/\\/\\\\S\\/gi/gi), 'You should be using the following expression /\\S+/gi to find the spaces in the testString');" + "assert(editor.getValue().match(/\\/\\\\S\\/gi/gi), 'You should be using the following expression /\\S+/gi to find the spaces in the testString');" ], "challengeSeed":[ "var test = (function(){", diff --git a/loopbackMigration.js b/loopbackMigration.js index f6b98b8b7b1..333629438af 100644 --- a/loopbackMigration.js +++ b/loopbackMigration.js @@ -38,13 +38,13 @@ function createConnection(URI) { } function createQuery(db, collection, options, batchSize) { - return Rx.Observable.create(function (observer) { + return Rx.Observable.create(function(observer) { var cursor = db.collection(collection).find({}, options); cursor.batchSize(batchSize || 20); // Cursor.each will yield all doc from a batch in the same tick, // or schedule getting next batch on nextTick debug('opening cursor for %s', collection); - cursor.each(function (err, doc) { + cursor.each(function(err, doc) { if (err) { return observer.onError(err); } @@ -55,7 +55,7 @@ function createQuery(db, collection, options, batchSize) { observer.onNext(doc); }); - return Rx.Disposable.create(function () { + return Rx.Disposable.create(function() { debug('closing cursor for %s', collection); cursor.close(); }); @@ -86,13 +86,13 @@ var users = dbObservable .map(function(user) { // flatten user assign(user, user.portfolio, user.profile); - return user; - }) - .map(function(user) { if (user.username) { return user; } user.username = 'fcc' + uuid.v4().slice(0, 8); + if (user.github) { + user.isGithubCool = true; + } return user; }) .shareReplay(); @@ -122,7 +122,7 @@ var userIdentityCount = users return { provider: provider, externalId: user[provider], - userId: user.id + userId: user._id || user.id }; }) .filter(function(ident) { @@ -161,33 +161,15 @@ var storyCount = dbObservable }) .count(); -var commentCount = dbObservable - .flatMap(function(db) { - return createQuery(db, 'comments', {}); - }) - .bufferWithCount(20) - .withLatestFrom(dbObservable, function(comments, db) { - return { - comments: comments, - db: db - }; - }) - .flatMap(function(dats) { - return insertMany(dats.db, 'comment', dats.comments, { w: 1 }); - }) - .count(); - Rx.Observable.combineLatest( userIdentityCount, userSavesCount, storyCount, - commentCount, - function(userIdentCount, userCount, storyCount, commentCount) { + function(userIdentCount, userCount, storyCount) { return { userIdentCount: userIdentCount * 20, userCount: userCount * 20, - storyCount: storyCount * 20, - commentCount: commentCount * 20 + storyCount: storyCount * 20 }; }) .subscribe(