update deps, migrate to pnpm

This commit is contained in:
Jorrin
2024-03-29 21:23:32 +01:00
parent f8a5120064
commit 21f1fd3cee
35 changed files with 15210 additions and 25328 deletions

View File

@@ -1,5 +1,5 @@
import { FeatureMap, Flags, flags, flagsAllowedInFeatures } from "@/entrypoint/utils/targets";
import { describe, it, expect } from "vitest";
import { FeatureMap, Flags, flags, flagsAllowedInFeatures } from '@/entrypoint/utils/targets';
import { describe, it, expect } from 'vitest';
describe('flagsAllowedInFeatures()', () => {
function checkFeatures(featureMap: FeatureMap, flags: Flags[], output: boolean) {
@@ -7,71 +7,131 @@ describe('flagsAllowedInFeatures()', () => {
}
it('should check required correctly', () => {
checkFeatures({
requires: [],
disallowed: []
}, [], true);
checkFeatures({
requires: [flags.CORS_ALLOWED],
disallowed: []
}, [flags.CORS_ALLOWED], true);
checkFeatures({
requires: [flags.CORS_ALLOWED],
disallowed: []
}, [], false);
checkFeatures({
requires: [flags.CORS_ALLOWED, flags.IP_LOCKED],
disallowed: []
}, [flags.CORS_ALLOWED, flags.IP_LOCKED], true);
checkFeatures({
requires: [flags.IP_LOCKED],
disallowed: []
}, [flags.CORS_ALLOWED], false);
checkFeatures({
requires: [flags.IP_LOCKED],
disallowed: []
}, [], false);
checkFeatures(
{
requires: [],
disallowed: [],
},
[],
true,
);
checkFeatures(
{
requires: [flags.CORS_ALLOWED],
disallowed: [],
},
[flags.CORS_ALLOWED],
true,
);
checkFeatures(
{
requires: [flags.CORS_ALLOWED],
disallowed: [],
},
[],
false,
);
checkFeatures(
{
requires: [flags.CORS_ALLOWED, flags.IP_LOCKED],
disallowed: [],
},
[flags.CORS_ALLOWED, flags.IP_LOCKED],
true,
);
checkFeatures(
{
requires: [flags.IP_LOCKED],
disallowed: [],
},
[flags.CORS_ALLOWED],
false,
);
checkFeatures(
{
requires: [flags.IP_LOCKED],
disallowed: [],
},
[],
false,
);
});
it('should check disallowed correctly', () => {
checkFeatures({
requires: [],
disallowed: []
}, [], true);
checkFeatures({
requires: [],
disallowed: [flags.CORS_ALLOWED]
}, [], true);
checkFeatures({
requires: [],
disallowed: [flags.CORS_ALLOWED]
}, [flags.CORS_ALLOWED], false);
checkFeatures({
requires: [],
disallowed: [flags.CORS_ALLOWED]
}, [flags.IP_LOCKED], true);
checkFeatures({
requires: [],
disallowed: [flags.CORS_ALLOWED, flags.IP_LOCKED]
}, [flags.CORS_ALLOWED], false);
checkFeatures(
{
requires: [],
disallowed: [],
},
[],
true,
);
checkFeatures(
{
requires: [],
disallowed: [flags.CORS_ALLOWED],
},
[],
true,
);
checkFeatures(
{
requires: [],
disallowed: [flags.CORS_ALLOWED],
},
[flags.CORS_ALLOWED],
false,
);
checkFeatures(
{
requires: [],
disallowed: [flags.CORS_ALLOWED],
},
[flags.IP_LOCKED],
true,
);
checkFeatures(
{
requires: [],
disallowed: [flags.CORS_ALLOWED, flags.IP_LOCKED],
},
[flags.CORS_ALLOWED],
false,
);
});
it('should pass mixed tests', () => {
checkFeatures({
requires: [flags.CORS_ALLOWED],
disallowed: [flags.IP_LOCKED]
}, [], false);
checkFeatures({
requires: [flags.CORS_ALLOWED],
disallowed: [flags.IP_LOCKED]
}, [flags.CORS_ALLOWED], true);
checkFeatures({
requires: [flags.CORS_ALLOWED],
disallowed: [flags.IP_LOCKED]
}, [flags.IP_LOCKED], false);
checkFeatures({
requires: [flags.CORS_ALLOWED],
disallowed: [flags.IP_LOCKED]
}, [flags.IP_LOCKED, flags.CORS_ALLOWED], false);
checkFeatures(
{
requires: [flags.CORS_ALLOWED],
disallowed: [flags.IP_LOCKED],
},
[],
false,
);
checkFeatures(
{
requires: [flags.CORS_ALLOWED],
disallowed: [flags.IP_LOCKED],
},
[flags.CORS_ALLOWED],
true,
);
checkFeatures(
{
requires: [flags.CORS_ALLOWED],
disallowed: [flags.IP_LOCKED],
},
[flags.IP_LOCKED],
false,
);
checkFeatures(
{
requires: [flags.CORS_ALLOWED],
disallowed: [flags.IP_LOCKED],
},
[flags.IP_LOCKED, flags.CORS_ALLOWED],
false,
);
});
});