mirror of
https://github.com/tiramisulabs/seyfert.git
synced 2025-07-01 20:46:08 +00:00
fix: dont encode cache data by default
This commit is contained in:
parent
6395dd5938
commit
24cfd39001
4
src/cache/adapters/default.ts
vendored
4
src/cache/adapters/default.ts
vendored
@ -14,10 +14,10 @@ export class MemoryAdapter<T> implements Adapter {
|
||||
constructor(
|
||||
public options: MemoryAdapterOptions<T> = {
|
||||
encode(data) {
|
||||
return JSON.stringify(data) as T;
|
||||
return data;
|
||||
},
|
||||
decode(data) {
|
||||
return JSON.parse(data as string);
|
||||
return data;
|
||||
},
|
||||
},
|
||||
) {}
|
||||
|
22
src/cache/adapters/limited.ts
vendored
22
src/cache/adapters/limited.ts
vendored
@ -47,10 +47,10 @@ export class LimitedMemoryAdapter<T> implements Adapter {
|
||||
limit: Number.POSITIVE_INFINITY,
|
||||
},
|
||||
encode(data) {
|
||||
return JSON.stringify(data) as T;
|
||||
return data;
|
||||
},
|
||||
decode(data) {
|
||||
return JSON.parse(data as string);
|
||||
return data;
|
||||
},
|
||||
} satisfies LimitedMemoryAdapterOptions<T>,
|
||||
options,
|
||||
@ -111,10 +111,6 @@ export class LimitedMemoryAdapter<T> implements Adapter {
|
||||
const existsRelation = self.relationships.has(relationshipNamespace);
|
||||
if (existsRelation) {
|
||||
switch (relationshipNamespace) {
|
||||
case 'guild':
|
||||
case 'user':
|
||||
self.removeToRelationship(namespace, k.split('.')[1]);
|
||||
break;
|
||||
case 'ban':
|
||||
case 'member':
|
||||
case 'voice_state':
|
||||
@ -134,6 +130,11 @@ export class LimitedMemoryAdapter<T> implements Adapter {
|
||||
case 'message':
|
||||
self.removeToRelationship(namespace, k.split('.')[1]);
|
||||
break;
|
||||
// case 'guild':
|
||||
// case 'user':
|
||||
default:
|
||||
self.removeToRelationship(namespace, k.split('.')[1]);
|
||||
break;
|
||||
}
|
||||
}
|
||||
},
|
||||
@ -214,10 +215,6 @@ export class LimitedMemoryAdapter<T> implements Adapter {
|
||||
?.delete(`${parentNamespace}.${keySplit.at(1)}.${keySplit.at(2)}`);
|
||||
}
|
||||
break;
|
||||
case 'user':
|
||||
case 'guild':
|
||||
this.storage.get(parentNamespace)?.delete(`${parentNamespace}.${keySplit.at(1)}`);
|
||||
break;
|
||||
case 'channel':
|
||||
case 'emoji':
|
||||
case 'presence':
|
||||
@ -237,6 +234,11 @@ export class LimitedMemoryAdapter<T> implements Adapter {
|
||||
}
|
||||
}
|
||||
break;
|
||||
// case 'user':
|
||||
// case 'guild':
|
||||
default:
|
||||
this.storage.get(parentNamespace)?.delete(`${parentNamespace}.${keySplit.at(1)}`);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
53
tests/cache.test.js
Normal file
53
tests/cache.test.js
Normal file
@ -0,0 +1,53 @@
|
||||
//@ts-check
|
||||
const { describe, test } = require('node:test');
|
||||
const { Client } = require('../lib/index');
|
||||
const { LimitedMemoryAdapter, MemoryAdapter } = require('../lib/index');
|
||||
|
||||
// all intents
|
||||
const intents = 53608447;
|
||||
|
||||
describe('test memory cache adapter', () => {
|
||||
const adapter = new MemoryAdapter();
|
||||
|
||||
test('discord cache', () => {
|
||||
const client = new Client({
|
||||
getRC: () => ({
|
||||
locations: {
|
||||
base: '',
|
||||
output: '',
|
||||
},
|
||||
intents,
|
||||
token: '',
|
||||
}),
|
||||
});
|
||||
client.setServices({
|
||||
cache: {
|
||||
adapter,
|
||||
},
|
||||
});
|
||||
return client.cache.testAdapter();
|
||||
});
|
||||
});
|
||||
|
||||
describe('test limited memory cache adapter', () => {
|
||||
const adapter = new LimitedMemoryAdapter();
|
||||
|
||||
test('discord cache', () => {
|
||||
const client = new Client({
|
||||
getRC: () => ({
|
||||
locations: {
|
||||
base: '',
|
||||
output: '',
|
||||
},
|
||||
intents,
|
||||
token: '',
|
||||
}),
|
||||
});
|
||||
client.setServices({
|
||||
cache: {
|
||||
adapter,
|
||||
},
|
||||
});
|
||||
return client.cache.testAdapter();
|
||||
});
|
||||
});
|
Loading…
x
Reference in New Issue
Block a user