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(