mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-18 12:33:30 +01:00
New travis build
This commit is contained in:
@@ -802,15 +802,17 @@ var Client = (function (_EventEmitter) {
|
|||||||
|
|
||||||
if (data.color) data.color = Color.toDec(data.color);
|
if (data.color) data.color = Color.toDec(data.color);
|
||||||
|
|
||||||
self.guildRoleCreateIgnoreList[res.body.id] = function () {
|
self.guildRoleCreateIgnoreList[res.body.id] = true;
|
||||||
self.updateRole(perm, data).then(function (perm) {
|
|
||||||
cb(null, perm);
|
server.addRole(res.body);
|
||||||
resolve(perm);
|
|
||||||
})["catch"](function (err) {
|
self.updateRole(perm, data).then(function (perm) {
|
||||||
cb(err);
|
cb(null, perm);
|
||||||
reject(err);
|
resolve(perm);
|
||||||
});
|
})["catch"](function (err) {
|
||||||
};
|
cb(err);
|
||||||
|
reject(err);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@@ -825,6 +827,11 @@ var Client = (function (_EventEmitter) {
|
|||||||
|
|
||||||
var server = role.server.id;
|
var server = role.server.id;
|
||||||
|
|
||||||
|
var tempRole = role;
|
||||||
|
for (var key in data) {
|
||||||
|
tempRole[key] = data[key];
|
||||||
|
}
|
||||||
|
|
||||||
if (isNaN(Color.toDec(data.color))) {
|
if (isNaN(Color.toDec(data.color))) {
|
||||||
var err = new Error("Invalid Color");
|
var err = new Error("Invalid Color");
|
||||||
reject(err);
|
reject(err);
|
||||||
@@ -833,10 +840,10 @@ var Client = (function (_EventEmitter) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
request.patch(Endpoints.SERVERS + "/" + server + "/roles/" + role.id).set("authorization", self.token).send({
|
request.patch(Endpoints.SERVERS + "/" + server + "/roles/" + role.id).set("authorization", self.token).send({
|
||||||
color: Color.toDec(data.color) || role.color,
|
color: tempRole.color,
|
||||||
hoist: data.hoist || role.hoist,
|
hoist: tempRole.hoist,
|
||||||
name: data.name || role.name,
|
name: tempRole.name,
|
||||||
permissions: data.packed || role.packed
|
permissions: tempRole.packed
|
||||||
}).end(function (err, res) {
|
}).end(function (err, res) {
|
||||||
if (err) {
|
if (err) {
|
||||||
cb(err);
|
cb(err);
|
||||||
@@ -1302,15 +1309,21 @@ var Client = (function (_EventEmitter) {
|
|||||||
|
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
if (self.serverCreateListener[data.id]) {
|
if (data.owner_id === self.user.id) {
|
||||||
var cbs = self.serverCreateListener[data.id];
|
var keepCheck = setInterval(function () {
|
||||||
cbs[0](server); //promise then callback
|
if (self.serverCreateListener[data.id]) {
|
||||||
cbs[1](null, server); //legacy callback
|
var cbs = self.serverCreateListener[data.id];
|
||||||
self.serverCreateListener[data.id] = null;
|
cbs[0](server); //promise then callback
|
||||||
|
cbs[1](null, server); //legacy callback
|
||||||
|
self.serverCreateListener[data.id] = null;
|
||||||
|
self.emit("serverCreate", server);
|
||||||
|
clearInterval(keepCheck);
|
||||||
|
}
|
||||||
|
}, 50);
|
||||||
|
} else {
|
||||||
|
self.emit("serverCreate", server);
|
||||||
}
|
}
|
||||||
|
|
||||||
self.emit("serverCreate", server);
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "CHANNEL_CREATE":
|
case "CHANNEL_CREATE":
|
||||||
@@ -1469,8 +1482,6 @@ var Client = (function (_EventEmitter) {
|
|||||||
var role = data.role;
|
var role = data.role;
|
||||||
|
|
||||||
if (self.guildRoleCreateIgnoreList[data.role.id]) {
|
if (self.guildRoleCreateIgnoreList[data.role.id]) {
|
||||||
server.addRole(role);
|
|
||||||
self.guildRoleCreateIgnoreList[data.role.id]();
|
|
||||||
self.guildRoleCreateIgnoreList[data.role.id] = null;
|
self.guildRoleCreateIgnoreList[data.role.id] = null;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ var ServerPermissions = (function () {
|
|||||||
manageRoles: this.manageRoles,
|
manageRoles: this.manageRoles,
|
||||||
manageChannels: this.manageChannels,
|
manageChannels: this.manageChannels,
|
||||||
readMessages: this.readMessages,
|
readMessages: this.readMessages,
|
||||||
sendMessages: this.sendMessage,
|
sendMessages: this.sendMessages,
|
||||||
sendTTSMessages: this.sendTTSMessages,
|
sendTTSMessages: this.sendTTSMessages,
|
||||||
manageMessages: this.manageMessages,
|
manageMessages: this.manageMessages,
|
||||||
embedLinks: this.embedLinks,
|
embedLinks: this.embedLinks,
|
||||||
@@ -64,7 +64,7 @@ var ServerPermissions = (function () {
|
|||||||
this.packed |= 1 << location;
|
this.packed |= 1 << location;
|
||||||
} else {
|
} else {
|
||||||
// not allowed
|
// not allowed
|
||||||
this.packed &= 1 << location;
|
this.packed &= ~(1 << location);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -844,18 +844,19 @@ class Client extends EventEmitter {
|
|||||||
if(data.color)
|
if(data.color)
|
||||||
data.color = Color.toDec(data.color);
|
data.color = Color.toDec(data.color);
|
||||||
|
|
||||||
self.guildRoleCreateIgnoreList[res.body.id] = function () {
|
self.guildRoleCreateIgnoreList[res.body.id] = true;
|
||||||
self.updateRole(perm, data)
|
|
||||||
.then((perm) => {
|
server.addRole(res.body);
|
||||||
cb(null, perm);
|
|
||||||
resolve(perm);
|
self.updateRole(perm, data)
|
||||||
})
|
.then((perm) => {
|
||||||
.catch((err) => {
|
cb(null, perm);
|
||||||
cb(err);
|
resolve(perm);
|
||||||
reject(err);
|
})
|
||||||
});
|
.catch((err) => {
|
||||||
|
cb(err);
|
||||||
}
|
reject(err);
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -873,6 +874,11 @@ class Client extends EventEmitter {
|
|||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
|
|
||||||
var server = role.server.id;
|
var server = role.server.id;
|
||||||
|
|
||||||
|
var tempRole = role;
|
||||||
|
for(var key in data){
|
||||||
|
tempRole[key] = data[key];
|
||||||
|
}
|
||||||
|
|
||||||
if(isNaN(Color.toDec(data.color))){
|
if(isNaN(Color.toDec(data.color))){
|
||||||
var err = new Error("Invalid Color");
|
var err = new Error("Invalid Color");
|
||||||
@@ -885,10 +891,10 @@ class Client extends EventEmitter {
|
|||||||
.patch(`${Endpoints.SERVERS}/${server}/roles/${role.id}`)
|
.patch(`${Endpoints.SERVERS}/${server}/roles/${role.id}`)
|
||||||
.set("authorization", self.token)
|
.set("authorization", self.token)
|
||||||
.send({
|
.send({
|
||||||
color: Color.toDec(data.color) || role.color,
|
color: tempRole.color,
|
||||||
hoist: data.hoist || role.hoist,
|
hoist: tempRole.hoist,
|
||||||
name: data.name || role.name,
|
name: tempRole.name,
|
||||||
permissions: data.packed || role.packed
|
permissions: tempRole.packed
|
||||||
})
|
})
|
||||||
.end(function (err, res) {
|
.end(function (err, res) {
|
||||||
if (err) {
|
if (err) {
|
||||||
@@ -1331,15 +1337,21 @@ class Client extends EventEmitter {
|
|||||||
|
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
if (self.serverCreateListener[data.id]) {
|
if(data.owner_id === self.user.id){
|
||||||
var cbs = self.serverCreateListener[data.id];
|
var keepCheck = setInterval(() => {
|
||||||
cbs[0](server); //promise then callback
|
if (self.serverCreateListener[data.id]) {
|
||||||
cbs[1](null, server); //legacy callback
|
var cbs = self.serverCreateListener[data.id];
|
||||||
self.serverCreateListener[data.id] = null;
|
cbs[0](server); //promise then callback
|
||||||
|
cbs[1](null, server); //legacy callback
|
||||||
|
self.serverCreateListener[data.id] = null;
|
||||||
|
self.emit("serverCreate", server);
|
||||||
|
clearInterval(keepCheck);
|
||||||
|
}
|
||||||
|
}, 50);
|
||||||
|
}else{
|
||||||
|
self.emit("serverCreate", server);
|
||||||
}
|
}
|
||||||
|
|
||||||
self.emit("serverCreate", server);
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "CHANNEL_CREATE":
|
case "CHANNEL_CREATE":
|
||||||
@@ -1500,8 +1512,6 @@ class Client extends EventEmitter {
|
|||||||
var role = data.role;
|
var role = data.role;
|
||||||
|
|
||||||
if (self.guildRoleCreateIgnoreList[data.role.id]) {
|
if (self.guildRoleCreateIgnoreList[data.role.id]) {
|
||||||
server.addRole(role);
|
|
||||||
self.guildRoleCreateIgnoreList[data.role.id]();
|
|
||||||
self.guildRoleCreateIgnoreList[data.role.id] = null;
|
self.guildRoleCreateIgnoreList[data.role.id] = null;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ class ServerPermissions {
|
|||||||
manageRoles: this.manageRoles,
|
manageRoles: this.manageRoles,
|
||||||
manageChannels: this.manageChannels,
|
manageChannels: this.manageChannels,
|
||||||
readMessages: this.readMessages,
|
readMessages: this.readMessages,
|
||||||
sendMessages: this.sendMessage,
|
sendMessages: this.sendMessages,
|
||||||
sendTTSMessages: this.sendTTSMessages,
|
sendTTSMessages: this.sendTTSMessages,
|
||||||
manageMessages: this.manageMessages,
|
manageMessages: this.manageMessages,
|
||||||
embedLinks: this.embedLinks,
|
embedLinks: this.embedLinks,
|
||||||
@@ -119,7 +119,7 @@ class ServerPermissions {
|
|||||||
|
|
||||||
} else {
|
} else {
|
||||||
// not allowed
|
// not allowed
|
||||||
this.packed &= (1 << location);
|
this.packed &= ~(1 << location);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
204
test/bot.js
204
test/bot.js
@@ -1,134 +1,132 @@
|
|||||||
|
/* global process */
|
||||||
/*
|
/*
|
||||||
this file should be used for travis builds only
|
this file should be used for travis builds only
|
||||||
|
or testing local builds
|
||||||
*/
|
*/
|
||||||
|
|
||||||
var Discord = require("../");
|
var Discord = require("../");
|
||||||
var mybot = new Discord.Client();
|
var mybot = new Discord.Client();
|
||||||
|
|
||||||
var server, channel, message, sentMessage = false;
|
var server, channel, message, role, sentMessage = false, actions = [], current = -1;
|
||||||
|
|
||||||
function init(){
|
function next() {
|
||||||
|
current++;
|
||||||
|
if (current !== 0) {
|
||||||
|
console.log("Success on test", current, actions[current]);
|
||||||
|
}
|
||||||
|
if (current === actions.length)
|
||||||
|
done();
|
||||||
|
else
|
||||||
|
actions[current].apply(this, arguments);
|
||||||
|
}
|
||||||
|
|
||||||
|
function init() {
|
||||||
console.log("preparing...");
|
console.log("preparing...");
|
||||||
}
|
}
|
||||||
|
|
||||||
mybot.once("ready", function(){
|
actions.push(() => {
|
||||||
console.log("ready! beginning tests");
|
mybot.createServer("test-server", "london").then(next).catch(error);
|
||||||
success1();
|
|
||||||
});
|
});
|
||||||
|
|
||||||
function success1(){ //make server
|
actions.push((_server) => {
|
||||||
mybot.createServer("test-server", "london").then(success2).catch(error);
|
|
||||||
}
|
|
||||||
|
|
||||||
function success2(_server){ //make channel
|
|
||||||
console.log("test 1 successful");
|
|
||||||
server = _server;
|
server = _server;
|
||||||
mybot.createChannel(server, "test-channel", "text").then(success3).catch(error);
|
mybot.createChannel(server, "test-channel", "text").then(next).catch(error);
|
||||||
}
|
});
|
||||||
|
|
||||||
function success3(_channel){ //send message
|
actions.push((_channel) => {
|
||||||
console.log("test 2 successful");
|
|
||||||
channel = _channel;
|
channel = _channel;
|
||||||
mybot.sendMessage(channel, [mybot.user.avatarURL, "an", "array", "of", "messages"]).then(success4).catch(error);
|
mybot.sendMessage(channel, [mybot.user.avatarURL, "an", "array", "of", "messages"]).then(next).catch(error);
|
||||||
}
|
});
|
||||||
|
|
||||||
function success4(_message){ //delete message
|
actions.push((message) => {
|
||||||
console.log("test 3 successful");
|
mybot.deleteMessage(message).then(next).catch(error);
|
||||||
message = _message;
|
});
|
||||||
mybot.deleteMessage(message).then(success5).catch(error);
|
|
||||||
}
|
|
||||||
|
|
||||||
function success5(){ //send ping
|
actions.push(() => {
|
||||||
console.log("test 4 successful");
|
mybot.createRole(server, {
|
||||||
mybot.sendMessage(channel, "ping").then(function(msg){
|
name: "Custom Role",
|
||||||
message = msg;
|
color: 0xff0000,
|
||||||
}).catch(error);
|
sendMessages: false
|
||||||
setTimeout(checkError, 30 * 1000);
|
}).then(next).catch(error);
|
||||||
}
|
});
|
||||||
|
|
||||||
function success7(){
|
actions.push((_role) => {
|
||||||
console.log("test 6 successful");
|
role = _role;
|
||||||
mybot.deleteChannel(channel).then(success8).catch(error);
|
if (role.name === "Custom Role" && !role.sendMessages) {
|
||||||
}
|
next();
|
||||||
|
} else {
|
||||||
function success8(){
|
error(new Error("bad role; " + role));
|
||||||
console.log("test 7 successful");
|
|
||||||
mybot.createInvite(server).then(success9).catch(error);
|
|
||||||
}
|
|
||||||
|
|
||||||
function success9(invite){
|
|
||||||
console.log("test 8 successful");
|
|
||||||
if(invite.code){
|
|
||||||
success10();
|
|
||||||
}else{
|
|
||||||
error("reference error");
|
|
||||||
}
|
}
|
||||||
}
|
});
|
||||||
|
|
||||||
function success10(){
|
actions.push(() => {
|
||||||
console.log("test 9 succesful");
|
mybot.deleteRole(role).then(next).catch(error);
|
||||||
mybot.leaveServer(server).then(success11).catch(error);
|
});
|
||||||
}
|
|
||||||
|
|
||||||
function success11(){
|
actions.push(() => {
|
||||||
console.log("test 10 succesful");
|
mybot.sendMessage(channel, "ping").catch(error);
|
||||||
mybot.joinServer(process.env["ds_invite"]).then(success12).catch(error);
|
});
|
||||||
}
|
|
||||||
|
|
||||||
function success12(_server){
|
actions.push((message) => {
|
||||||
console.log("test 11 successful");
|
mybot.updateMessage(message, "pong").then(next).catch(error);
|
||||||
server = mybot.getServer("id", _server.id);
|
});
|
||||||
if(server){
|
|
||||||
success13();
|
actions.push((message) => {
|
||||||
}else{
|
mybot.deleteMessage(message).then(next).catch(error);
|
||||||
error("reference error");
|
})
|
||||||
|
|
||||||
|
actions.push(() => {
|
||||||
|
mybot.sendFile(server, "./test/image.png").then(next).catch(error);
|
||||||
|
})
|
||||||
|
|
||||||
|
actions.push(() => {
|
||||||
|
mybot.leaveServer(server).then(next).catch(error);
|
||||||
|
});
|
||||||
|
|
||||||
|
// phase 2
|
||||||
|
|
||||||
|
actions.push(() => {
|
||||||
|
mybot.joinServer(process.env["ds_invite"]).then(next).catch(error);
|
||||||
|
});
|
||||||
|
|
||||||
|
actions.push((_server) => {
|
||||||
|
server = _server;
|
||||||
|
mybot.sendMessage(server.getMember("username", "hydrabolt"), "Travis Build test").then(next).catch(error);
|
||||||
|
});
|
||||||
|
|
||||||
|
actions.push((_message) => {
|
||||||
|
mybot.deleteMessage(_message).then(next).catch(error);
|
||||||
|
});
|
||||||
|
|
||||||
|
actions.push(() => {
|
||||||
|
mybot.logout().then(next).catch(error);
|
||||||
|
});
|
||||||
|
|
||||||
|
mybot.on("message", function (message) {
|
||||||
|
if(!message.isPrivate){
|
||||||
|
if (message.channel.equals(channel)) {
|
||||||
|
if (message.content === "ping") {
|
||||||
|
sentMessage = true;
|
||||||
|
next(message);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
})
|
||||||
|
|
||||||
function success13(){
|
mybot.once("ready", function () {
|
||||||
console.log("test 12 successful");
|
console.log("ready! beginning tests");
|
||||||
mybot.sendFile(server, "./test/image.png").then(function(msg){
|
next();
|
||||||
mybot.deleteMessage(msg).then(success14).catch(error);
|
});
|
||||||
}).catch(error);
|
|
||||||
}
|
|
||||||
|
|
||||||
function success14(msg){
|
mybot.login(process.env["ds_email"], process.env["ds_password"]).then(init).catch(error);
|
||||||
console.log("test 13 successful");
|
|
||||||
mybot.leaveServer(server).then(success15).catch(error);
|
|
||||||
}
|
|
||||||
|
|
||||||
function success15(){
|
function done() {
|
||||||
console.log("test 14 successful");
|
console.log("Finished! Build successful.");
|
||||||
mybot.logout().then(done).catch(error);
|
|
||||||
}
|
|
||||||
|
|
||||||
function done(){
|
|
||||||
console.log("All tests completed succesfully.");
|
|
||||||
process.exit(0);
|
process.exit(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
function checkError(){
|
function error(e) {
|
||||||
if(!sentMessage){
|
console.log("FAILED DURING TEST", current);
|
||||||
error("failure receiving messages");
|
console.log(e.stack);
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function error(err){
|
|
||||||
console.log("error", err);
|
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
mybot.on("message", function(message){
|
|
||||||
|
|
||||||
if(message.channel.equals(channel)){
|
|
||||||
if(message.content === "ping"){
|
|
||||||
console.log("test 5 successful");
|
|
||||||
sentMessage = true;
|
|
||||||
|
|
||||||
mybot.updateMessage(message, "pong").then(success7).catch(error);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
mybot.login(process.env["ds_email"], process.env["ds_password"]).then(init).catch(error);
|
|
||||||
Reference in New Issue
Block a user