mirror of
https://github.com/discordeno/discordeno.git
synced 2026-05-21 10:50:09 +00:00
* Do some code changes & run prettier and eslint
* Fix test:test-type script
* Apply code review suggestions
* update heartbeat interval & add a reason for the specific value
* Fix husky error
* Update to TS 5.5
And use ${configDir}
* Fix test.json tsconfig base
---------
Co-authored-by: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com>
127 lines
3.8 KiB
TypeScript
127 lines
3.8 KiB
TypeScript
import { ChannelTypes } from '@discordeno/types'
|
|
import { use as chaiUse, expect } from 'chai'
|
|
import chaiAsPromised from 'chai-as-promised'
|
|
import { describe, it } from 'mocha'
|
|
import { e2eCache, rest } from './utils.js'
|
|
chaiUse(chaiAsPromised)
|
|
|
|
before(async () => {
|
|
if (!e2eCache.guild) {
|
|
e2eCache.guild = await rest.createGuild({
|
|
name: 'Discordeno-test',
|
|
})
|
|
}
|
|
})
|
|
|
|
after(async () => {
|
|
if (e2eCache.guild.id && !e2eCache.deletedGuild) {
|
|
e2eCache.deletedGuild = true
|
|
await rest.deleteGuild(e2eCache.guild.id)
|
|
}
|
|
})
|
|
|
|
describe('Manage Guilds', async () => {
|
|
it('Create and delete a guild', async () => {
|
|
const guild = await rest.createGuild({
|
|
name: 'Discordeno-test',
|
|
})
|
|
expect(e2eCache.guild.id).to.be.exist
|
|
await rest.deleteGuild(guild.id)
|
|
// Make sure the guild was deleted
|
|
const deleted = await rest.getGuild(guild.id).catch(() => undefined)
|
|
expect(deleted).to.be.equal(undefined)
|
|
})
|
|
|
|
it('Get a guild', async () => {
|
|
const exists = await rest.getGuild(e2eCache.guild.id)
|
|
expect(exists).to.be.exist
|
|
expect(exists.id).to.be.exist
|
|
expect(exists.name).to.equal(e2eCache.guild.name)
|
|
})
|
|
|
|
it('AFK channel', async () => {
|
|
const voiceChannel = await rest.createChannel(e2eCache.guild.id, {
|
|
name: 'edit-guild-test',
|
|
type: ChannelTypes.GuildVoice,
|
|
})
|
|
expect(voiceChannel.id).to.be.exist
|
|
|
|
const edited = await rest.editGuild(e2eCache.guild.id, {
|
|
name: 'Discordeno-test-edited',
|
|
afkChannelId: voiceChannel.id,
|
|
// afkTimeout: 5,
|
|
})
|
|
expect(edited.name).to.equal('Discordeno-test-edited')
|
|
expect(e2eCache.guild.afkChannelId).to.not.equal(voiceChannel.id)
|
|
expect(edited.afkChannelId).to.equal(voiceChannel.id)
|
|
// expect(guild.afkTimeout).to.equal(0);
|
|
// expect(edited.afkTimeout).to.equal(5);
|
|
|
|
const edited2 = await rest.editGuild(e2eCache.guild.id, { afkChannelId: null })
|
|
expect(edited.afkChannelId).to.not.equal(edited2.afkChannelId)
|
|
// Use boolean to check both undefined or null
|
|
expect(!!edited2.afkChannelId).to.equal(false)
|
|
|
|
await rest.deleteChannel(voiceChannel.id)
|
|
})
|
|
|
|
// it("Edit a guild's afk settings", async () => {
|
|
|
|
// });
|
|
|
|
it('Get audit logs', async () => {
|
|
const auditLogs = await rest.getAuditLog(e2eCache.guild.id, { limit: 1 })
|
|
expect(auditLogs.auditLogEntries.length).to.be.exist
|
|
})
|
|
|
|
// Get available voice regions
|
|
it('Get available voice regions', async () => {
|
|
const regions = await rest.getVoiceRegions(e2eCache.guild.id)
|
|
expect(regions.length).to.be.exist
|
|
})
|
|
|
|
it('Banning members', async () => {
|
|
await rest.banMember(
|
|
e2eCache.guild.id,
|
|
'379643682984296448',
|
|
{
|
|
deleteMessageSeconds: 604800,
|
|
},
|
|
'Blame Wolf',
|
|
)
|
|
const fetchedBan = await rest.getBan(e2eCache.guild.id, '379643682984296448')
|
|
|
|
// Assertions
|
|
expect(fetchedBan).to.be.exist
|
|
expect(fetchedBan.user.id).to.equal('379643682984296448')
|
|
|
|
await rest.banMember(e2eCache.guild.id, '416477607966670869')
|
|
const fetchedBans = await rest.getBans(e2eCache.guild.id)
|
|
|
|
// Assertions
|
|
expect(fetchedBans).to.be.exist
|
|
expect(fetchedBans.length).to.greaterThanOrEqual(2)
|
|
|
|
await rest.unbanMember(e2eCache.guild.id, '416477607966670869')
|
|
await rest.unbanMember(e2eCache.guild.id, '379643682984296448')
|
|
|
|
const unbanned = await rest.getBans(e2eCache.guild.id)
|
|
expect(unbanned.length).to.equal(0)
|
|
})
|
|
|
|
// Get vanity URL
|
|
it('Get vanity URL', async () => {
|
|
await expect(rest.getVanityUrl(e2eCache.guild.id)).to.eventually.rejected
|
|
})
|
|
|
|
// Get a welcome screen
|
|
// it('Get welcome screen', async () => {
|
|
// const screen = await rest.getWelcomeScreen(e2ecache.guild.id)
|
|
// await rest.editWelcomeScreen(e2ecache.guild.id, {
|
|
// enabled: true,
|
|
// description: 'some description',
|
|
// })
|
|
|
|
// })
|
|
})
|