Files
Superalgos/Deprecated-Code/OperationsModule/test/cloneAdminTest.js
T
2020-11-20 20:28:04 +01:00

181 lines
4.4 KiB
JavaScript

var assert = require('chai').assert
const axios = require('axios')
const { activeCloneList } = require('./activeCloneList')
require('dotenv').config()
var cloneList = activeCloneList("Poloniex")
describe('Admin clones Clones', function () {
it('Remove clones', async function () {
this.timeout(300000)
var clones = await getClones()
for (let clone of clones) {
await removeClone(clone.id, clone.botName)
}
assert.isOk('everything', 'everything is ok')
})
// it('Add COSS Live Indicator Clones', async function () {
// this.timeout(1000000)
// var error
// var clones = activeCloneList("Coss")
// try {
// for (let clone of clones) {
// await createClone(clone)
// }
// } catch (err) {
// console.log('Error: ' + err)
// error = err
// }
// assert.equal(error, undefined)
// })
// it('Add POLONIEX Live Indicator Clones', async function () {
// this.timeout(1000000)
// var error
// var clones = activeCloneList("Poloniex")
// try {
// for (let clone of clones) {
// await createClone(clone)
// }
// } catch (err) {
// console.log('Error: ' + err)
// error = err
// }
// assert.equal(error, undefined)
// })
describe('Poloniex clones', function () {
it('Add Charly', async function () {
this.timeout(10000)
await createClone(cloneList[0])
await createClone(cloneList[1])
assert.isOk('everything', 'everything is ok')
})
it('Add Bruce', async function () {
this.timeout(10000)
await createClone(cloneList[2])
assert.isOk('everything', 'everything is ok')
})
it('Add Olivia', async function () {
this.timeout(10000)
await createClone(cloneList[3])
await createClone(cloneList[4])
assert.isOk('everything', 'everything is ok')
})
it('Add Tom', async function () {
this.timeout(10000)
await createClone(cloneList[5])
await createClone(cloneList[6])
assert.isOk('everything', 'everything is ok')
})
it('Add Chris', async function () {
this.timeout(10000)
await createClone(cloneList[7])
await createClone(cloneList[8])
assert.isOk('everything', 'everything is ok')
})
it('Add Paula', async function () {
this.timeout(10000)
await createClone(cloneList[9])
await createClone(cloneList[10])
assert.isOk('everything', 'everything is ok')
})
it('Add Gauss', async function () {
this.timeout(6000)
await createClone(cloneList[11])
await createClone(cloneList[12])
assert.isOk('everything', 'everything is ok')
})
})
})
async function getClones() {
try {
const clones = await axios({
url: process.env.GATEWAY_ENDPOINT,
method: 'post',
data: {
query: `
query {
operations_Clones(queryLogs: false) {
id
botName
}
}
`,
},
headers: {
authorization: 'Bearer ' + process.env.ACCESS_TOKEN
}
})
console.log('getClones ok ')
return clones.data.data.operations_Clones
} catch (error) {
console.log('getClones error: ' + error.response.data.errors[0])
throw error
}
}
async function removeClone(cloneId, botName) {
try {
await axios({
url: process.env.GATEWAY_ENDPOINT,
method: 'post',
data: {
query: `
mutation ($id: ID!){
operations_RemoveClone(
id: $id
)
}
`,
variables: {
id: cloneId
},
},
headers: {
authorization: 'Bearer ' + process.env.ACCESS_TOKEN
}
})
console.log('removeClone ok: ' + botName)
return true
} catch (error) {
console.log('removeClone error: ' + error.response.data.errors[0])
throw error
}
}
async function createClone(clone) {
try {
const clones = await axios({
url: process.env.GATEWAY_ENDPOINT,
method: 'post',
data: {
query: `
mutation ($clone: operations_CloneInput){
operations_AddClone(
clone: $clone
) {
id
teamName
botName
processName
}
}
`,
variables: {
clone: clone
},
},
headers: {
authorization: 'Bearer ' + process.env.ACCESS_TOKEN
}
})
console.log('createClone id: ' + clones.data.data.operations_AddClone.id + ', botId: ' + clone.botId)
return clones.data.data.operations_AddClone
} catch (error) {
console.log('createClone error: ' + error.response.data.errors[0])
throw error
}
}