mirror of
https://github.com/fluxerapp/fluxer
synced 2026-10-18 21:45:31 +09:00
ci: add tests (#1141)
This commit is contained in:
1 parent
ad99de22bc
commit
545814abc1
152 files changed
+287
-532
No files matched your search
@@ -1,5 +1,7 @@
|
||||
// SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
|
||||
import {GuildFeatures} from '@fluxer/constants/src/GuildConstants';
|
||||
import {MAX_GUILD_MEMBERS_VERY_LARGE_GUILD} from '@fluxer/constants/src/LimitConstants';
|
||||
import type {LimitConfigSnapshot, LimitRule} from '@fluxer/limits/src/LimitTypes';
|
||||
import {describe, expect, test} from 'vitest';
|
||||
import {createDefaultLimitConfig, mergeWithCurrentDefaults} from '../../constants/LimitConfig';
|
||||
@@ -13,17 +15,27 @@ interface LegacyLimitConfigSnapshot extends Omit<LimitConfigSnapshot, 'rules'> {
|
||||
}
|
||||
|
||||
describe('Limit config defaults', () => {
|
||||
test('hosted defaults include only premium and default tier limit rules', () => {
|
||||
test('hosted defaults include premium, default, and very large guild limit rules', () => {
|
||||
const config = createDefaultLimitConfig({selfHosted: false});
|
||||
const premiumRule = config.rules.find((rule) => rule.id === 'premium');
|
||||
const defaultRule = config.rules.find((rule) => rule.id === 'default');
|
||||
const veryLargeGuildRule = config.rules.find((rule) => rule.id === 'very_large_guild');
|
||||
expect(premiumRule).toBeDefined();
|
||||
expect(defaultRule).toBeDefined();
|
||||
expect(config.rules.map((rule) => rule.id)).toEqual(['premium', 'default']);
|
||||
expect(veryLargeGuildRule).toMatchObject({
|
||||
filters: {guildFeatures: [GuildFeatures.VERY_LARGE_GUILD]},
|
||||
limits: {max_guild_members: MAX_GUILD_MEMBERS_VERY_LARGE_GUILD},
|
||||
});
|
||||
expect(config.rules.map((rule) => rule.id)).toEqual(['premium', 'default', 'very_large_guild']);
|
||||
});
|
||||
test('self-hosted defaults include only default tier limit rule', () => {
|
||||
test('self-hosted defaults include default and very large guild limit rules', () => {
|
||||
const config = createDefaultLimitConfig({selfHosted: true});
|
||||
expect(config.rules.map((rule) => rule.id)).toEqual(['default']);
|
||||
const veryLargeGuildRule = config.rules.find((rule) => rule.id === 'very_large_guild');
|
||||
expect(veryLargeGuildRule).toMatchObject({
|
||||
filters: {guildFeatures: [GuildFeatures.VERY_LARGE_GUILD]},
|
||||
limits: {max_guild_members: MAX_GUILD_MEMBERS_VERY_LARGE_GUILD},
|
||||
});
|
||||
expect(config.rules.map((rule) => rule.id)).toEqual(['default', 'very_large_guild']);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
Reference in new issue
Block a user