constants tests and documentation

This commit is contained in:
2021-03-04 11:10:28 -06:00
parent 3031212380
commit d70918e264
4 changed files with 60 additions and 17 deletions

View File

@@ -1,6 +1,5 @@
import Socket from 'net';
import package_json from '../../package.json'
import * as constants from '../utils/constants'
import packet from './packet';
@@ -18,8 +17,8 @@ export default class connection {
}
connected = false;
host_or_ip = "";
password = "";
host_or_ip = '';
password = '';
port = 20000;
reject;
resolve;
@@ -35,12 +34,12 @@ export default class connection {
try {
await new Promise((resolve, reject) => {
this.socket =
Socket.createConnection(this.port, this.host_or_ip, err => {
if (err) {
return reject(err)
}
return resolve()
});
Socket.createConnection(this.port, this.host_or_ip, err => {
if (err) {
return reject(err)
}
return resolve()
});
});
} catch (err) {
return Promise.reject(new Error(`'connect()' failed: ${err}`));
@@ -59,7 +58,7 @@ export default class connection {
};
this.socket.on('data', chunk => {
buffer = buffer ? Buffer.concat([ buffer, chunk ]) : chunk;
buffer = buffer ? Buffer.concat([buffer, chunk]) : chunk;
if (buffer.length > 4) {
const size = buffer.readUInt32BE(0);
if (buffer.length >= size + 4) {
@@ -73,8 +72,12 @@ export default class connection {
const response = new packet(this.password);
response.buffer = new Uint8Array(packet_data);
response.decrypt()
.then(() => {resolve(response)})
.catch(e => {reject(e)})
.then(() => {
resolve(response)
})
.catch(e => {
reject(e)
})
}
}
}
@@ -120,11 +123,9 @@ export default class connection {
packet.token = this.password;
packet.encode_top_utf8(method_name);
packet.encode_top_ui64(optional_thread_id || 1);
packet.encode_top_utf8(
constants.instance_id ||
'c2e3da6656a9f5cd7b95f159687da459656738af7a6d0de533f526d67af14cac');
packet.encode_top_utf8(constants.instance_id);
packet.encode_top_ui32(0); // Service flags
packet.encode_top_utf8(package_json.version);
packet.encode_top_utf8(constants.get_version());
await packet.encrypt();
packet.encode_top_ui32(packet.buffer.length);
return new Promise((resolve, reject) => {