Merge branch 'develop' into refactor-content

This commit is contained in:
Blade Barringer
2015-09-28 07:52:02 -05:00
4 changed files with 156 additions and 87 deletions

View File

@@ -4,7 +4,12 @@ The files in this folder are automatically pulled from Transifex, with
exception of the original American-English strings which are managed
directly through GitHub in `locales/en`.
Do not edit files in any locales directory except for `locales/en`!
When you need to change any text, edit only the files in `locales/en`.
Do not edit files in any other locales directory. You do not need to
request that your changes be translated; changes are automatically
copied to Transifex on a regular basis.
Before starting to translate, please read [Guidance for Linguists](http://habitrpg.wikia.com/wiki/Guidance_for_Linguists)
and note especially its information about the [Translations Trello card](https://trello.com/c/SvTsLdRF/12-translations).
If you want to help with translations, please first read [Guidance for
Linguists](http://habitrpg.wikia.com/wiki/Guidance_for_Linguists) and
note especially its information about the [Translations Trello
card](https://trello.com/c/SvTsLdRF/12-translations).

View File

@@ -0,0 +1,6 @@
You may edit any files in this directory. Do not edit files in any
other locales directory.
For more information read:
https://github.com/HabitRPG/habitrpg/blob/develop/common/locales/README.md

View File

@@ -89,11 +89,11 @@
"node": "0.10.x"
},
"scripts": {
"test": "$(npm bin)/gulp test",
"start": "$(npm bin)/gulp run:dev",
"sprites": "$(npm bin)/gulp sprites:compile",
"postinstall": "$(npm bin)/bower --config.interactive=false install -f; $(npm bin)/gulp build;",
"coverage": "COVERAGE=true $(npm bin)/mocha --require register-handlers.js --reporter html-cov > coverage.html; open coverage.html"
"test": "gulp test",
"start": "gulp run:dev",
"sprites": "gulp sprites:compile",
"postinstall": "bower --config.interactive=false install -f; gulp build;",
"coverage": "COVERAGE=true mocha --require register-handlers.js --reporter html-cov > coverage.html; open coverage.html"
},
"devDependencies": {
"chai": "^2.3.0",

View File

@@ -31,103 +31,109 @@ describe "Users", ->
], done
it "Should choose a new group leader when deleting a user", (done) ->
userToDelete = undefined
userToBecomeLeader = undefined
guildToHaveNewLeader = undefined
async.waterfall [
(cb) ->
registerManyUsers 2, cb
context "handle group changes when user cancels", ->
it "Should choose a new group leader when deleting a user", (done) ->
userToDelete = undefined
userToBecomeLeader = undefined
guildToHaveNewLeader = undefined
async.waterfall [
(cb) ->
registerManyUsers 2, cb
(_users, cb) ->
userToDelete = _users[0]
userToBecomeLeader = _users[1]
User.findByIdAndUpdate userToDelete._id,
$set:
"balance": 4
, (err, _user) ->
(_users, cb) ->
userToDelete = _users[0]
userToBecomeLeader = _users[1]
User.findByIdAndUpdate userToDelete._id,
$set:
"balance": 4
, (err, _user) ->
cb()
(cb) ->
request.post(baseURL + "/groups").send(
name: "GuildToGainNewLeader"
type: "guild"
)
.set("X-API-User", userToDelete._id)
.set("X-API-Key", userToDelete.apiToken)
.end (res) ->
expectCode res, 200
guildToHaveNewLeader = res.body
expect(guildToHaveNewLeader.leader).to.eql(userToDelete._id)
cb()
(cb) ->
request.post(baseURL + "/groups").send(
name: "GuildToGainNewLeader"
type: "guild"
)
.set("X-API-User", userToDelete._id)
.set("X-API-Key", userToDelete.apiToken)
.end (res) ->
expectCode res, 200
guildToHaveNewLeader = res.body
expect(guildToHaveNewLeader.leader).to.eql(userToDelete._id)
cb()
(cb) ->
inviteURL = baseURL + "/groups/" + guildToHaveNewLeader._id + "/invite"
request.post(inviteURL)
.send( uuids: [userToBecomeLeader._id])
.end (res) ->
expectCode res, 200
cb()
(cb) ->
inviteURL = baseURL + "/groups/" + guildToHaveNewLeader._id + "/invite"
request.post(inviteURL)
.send( uuids: [userToBecomeLeader._id])
(cb) ->
request.post(baseURL + "/groups/" + guildToHaveNewLeader._id + "/join")
.set("X-API-User", userToBecomeLeader._id)
.set("X-API-Key", userToBecomeLeader.apiToken)
.end (res) ->
expectCode res, 200
cb()
(cb) ->
request.del(baseURL + "/user")
.set("X-API-User", userToDelete._id)
.set("X-API-Key", userToDelete.apiToken)
.end (res) ->
expectCode res, 200
cb()
(cb) ->
request.post(baseURL + "/groups/" + guildToHaveNewLeader._id + "/join")
(cb) ->
request.get(baseURL + "/groups/" + guildToHaveNewLeader._id)
.set("X-API-User", userToBecomeLeader._id)
.set("X-API-Key", userToBecomeLeader.apiToken)
.end (res) ->
expectCode res, 200
g = res.body
userInGroup = _.find(g.members, (member) -> return member._id == userToDelete._id; )
expect(userInGroup).to.equal(undefined)
expect(g.leader._id).to.equal(userToBecomeLeader._id)
cb()
(cb) ->
request.del(baseURL + "/user")
.set("X-API-User", userToDelete._id)
.set("X-API-Key", userToDelete.apiToken)
.end (res) ->
expectCode res, 200
cb()
], done
(cb) ->
request.get(baseURL + "/groups/" + guildToHaveNewLeader._id)
.set("X-API-User", userToBecomeLeader._id)
.set("X-API-Key", userToBecomeLeader.apiToken)
.end (res) ->
expectCode res, 200
g = res.body
userInGroup = _.find(g.members, (member) -> return member._id == userToDelete._id; )
expect(userInGroup).to.equal(undefined)
expect(g.leader._id).to.equal(userToBecomeLeader._id)
cb()
context "handle group and invite removals", ->
guild = undefined
party = undefined
before (done) ->
User.findByIdAndUpdate user._id,
$set:
"balance": 4
, (err, _user) ->
async.waterfall [
(cb) ->
request.post(baseURL + "/groups").send(
name: "TestPrivateGroup"
type: "party"
)
.end (res) ->
expectCode res, 200
party = res.body
cb()
], done
(cb) ->
request.post(baseURL + "/groups").send(
name: "TestPrivateGroup"
type: "guild"
)
.end (res) ->
expectCode res, 200
guild = res.body
cb()
it 'Should remove a user from a group when deleting a user', (done) ->
userToDelete = undefined
guild = undefined
party = undefined
User.findByIdAndUpdate user._id,
$set:
"balance": 4
, (err, _user) ->
], done
it 'Should remove a user from a group when deleting a user', (done) ->
userToDelete = undefined
async.waterfall [
(cb) ->
request.post(baseURL + "/groups").send(
name: "TestPrivateGroup"
type: "party"
)
.end (res) ->
expectCode res, 200
party = res.body
cb()
(cb) ->
request.post(baseURL + "/groups").send(
name: "TestPrivateGroup"
type: "guild"
)
.end (res) ->
expectCode res, 200
guild = res.body
cb()
(cb) ->
registerManyUsers 1, cb
@@ -192,3 +198,55 @@ describe "Users", ->
cb()
], done
it 'Should remove invitations when deleting a user', (done) ->
userToDeleteInvites = undefined
async.waterfall [
(cb) ->
registerManyUsers 1, cb
# Send them invitations
(_users, cb) ->
userToDeleteInvites = _users[0]
inviteURL = baseURL + "/groups/" + party._id + "/invite"
request.post(inviteURL)
.send( uuids: [userToDeleteInvites._id])
.end (res) ->
expectCode res, 200
cb()
(cb) ->
inviteURL = baseURL + "/groups/" + guild._id + "/invite"
request.post(inviteURL)
.send( uuids: [userToDeleteInvites._id])
.end (res) ->
expectCode res, 200
cb()
(cb) ->
request.del(baseURL + "/user")
.set("X-API-User", userToDeleteInvites._id)
.set("X-API-Key", userToDeleteInvites.apiToken)
.end (res) ->
expectCode res, 200
cb()
(cb) ->
request.get(baseURL + "/groups/" + party._id)
.end (res) ->
expectCode res, 200
g = res.body
userInviteForGroup = _.find(g.invites, (invite) -> return invite._id == userToDeleteInvites._id; )
expect(userInviteForGroup).to.equal(undefined)
cb()
(cb) ->
request.get(baseURL + "/groups/" + guild._id)
.end (res) ->
expectCode res, 200
g = res.body
userInviteForGroup = _.find(g.invites, (invite) -> return invite._id == userToDeleteInvites._id; )
expect(userInviteForGroup).to.equal(undefined)
cb()
], done