mm_cachebase 1.8.6 → 1.8.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mm_cachebase",
3
- "version": "1.8.6",
3
+ "version": "1.8.7",
4
4
  "description": "一个轻量级的本地缓存类库,提供与Redis兼容的API接口,支持过期时间设置、哈希表操作、数值操作、字符串操作等功能,以及完整的事件通知系统和多文件持久化功能。",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -39,6 +39,6 @@
39
39
  },
40
40
  "homepage": "https://gitee.com/qiuwenwu91/mm_cachebase#readme",
41
41
  "dependencies": {
42
- "mm_logs": "^1.5.2"
42
+ "mm_base_service": "^1.0.0"
43
43
  }
44
44
  }
package/simple_test.js CHANGED
@@ -1,70 +1,21 @@
1
- const { CacheBase } = require('./index');
2
- const fs = require('fs');
3
- const path = require('path');
4
-
5
- async function simpleTest() {
6
- console.log('====== 简单持久化测试 ======');
7
-
8
- const cacheDir = './test_simple_cache';
9
- const cacheFile = path.join(cacheDir, 'simple_cache.json');
10
-
11
- // 清理之前的测试文件
12
- if (fs.existsSync(cacheFile)) {
13
- fs.unlinkSync(cacheFile);
14
- console.log('已清理旧测试文件');
15
- }
16
-
17
- // 步骤1: 创建缓存并设置数据
18
- console.log('\n步骤1: 创建缓存并设置数据');
19
- const cache = new CacheBase({
20
- persist: true,
21
- scope: 'simple',
22
- dir: cacheDir
23
- });
24
-
25
- // 直接设置数据
26
- console.log('设置数据...');
27
- cache.data['test_key'] = { value: 'test_value', expire: 0 };
28
- cache.list = ['test_key'];
29
- console.log('当前data:', cache.data);
30
- console.log('当前list:', cache.list);
31
-
32
- // 步骤2: 手动保存
33
- console.log('\n步骤2: 手动保存数据');
34
- await cache.save();
35
-
36
- // 检查文件是否存在且有内容
37
- if (fs.existsSync(cacheFile)) {
38
- const content = fs.readFileSync(cacheFile, 'utf8');
39
- console.log('保存的文件内容:');
40
- console.log(content);
41
- } else {
42
- console.log('错误: 文件未创建');
43
- }
44
-
45
- // 步骤3: 销毁缓存
46
- console.log('\n步骤3: 销毁缓存');
47
- await cache.dispose();
48
-
49
- // 步骤4: 创建新缓存,应该加载数据
50
- console.log('\n步骤4: 创建新缓存,尝试加载数据');
51
- const newCache = new CacheBase({
52
- persist: true,
53
- scope: 'simple',
54
- dir: cacheDir
55
- });
56
-
57
- // 等待一点时间让_loadData完成
58
- await new Promise(resolve => setTimeout(resolve, 100));
59
-
60
- // 检查是否加载了数据
61
- console.log('加载后的data:', newCache.data);
62
- console.log('加载后的list:', newCache.list);
63
- console.log('test_key值:', newCache.data.test_key ? newCache.data.test_key.value : 'undefined');
64
-
65
- // 清理
66
- await newCache.dispose();
67
- console.log('\n测试完成!');
68
- }
69
-
70
- simpleTest().catch(console.error);
1
+ // 简单的模块加载测试
2
+ console.log('尝试加载CacheBase模块...');
3
+ try {
4
+ const { CacheBase } = require('./index.js');
5
+ console.log('成功加载CacheBase模块!');
6
+ const cache = new CacheBase();
7
+ console.log('成功创建CacheBase实例!');
8
+ console.log('模块导出检查:', Object.keys(require('./index.js')));
9
+ } catch (error) {
10
+ console.error('模块加载失败:', error);
11
+ // 检查文件是否存在
12
+ const fs = require('fs');
13
+ const stats = fs.statSync('./index.js');
14
+ console.log('文件大小:', stats.size, 'bytes');
15
+ // 检查文件末尾
16
+ const buffer = Buffer.alloc(100);
17
+ const fd = fs.openSync('./index.js', 'r');
18
+ const bytesRead = fs.readSync(fd, buffer, 0, 100, stats.size - 100);
19
+ fs.closeSync(fd);
20
+ console.log('文件末尾内容:', buffer.toString('utf8', 0, bytesRead));
21
+ }
@@ -0,0 +1,27 @@
1
+ // 简单测试脚本
2
+ const { CacheBase } = require('./index.js');
3
+
4
+ async function simpleTest() {
5
+ console.log('开始简单测试...');
6
+ const cache = new CacheBase();
7
+
8
+ // 测试incr方法
9
+ console.log('测试incr方法:');
10
+ const result = cache.incr('test_counter');
11
+ console.log('incr结果:', result);
12
+ console.log('当前_data对象:', cache._data);
13
+ console.log('当前_types对象:', cache._types);
14
+
15
+ // 直接设置一个值再测试
16
+ console.log('\n直接设置值后测试:');
17
+ cache._data.test_counter2 = 5;
18
+ const result2 = cache.incr('test_counter2');
19
+ console.log('incr结果2:', result2);
20
+ console.log('当前_data对象:', cache._data);
21
+ }
22
+
23
+ simpleTest().catch(console.error);
24
+
25
+ setTimeout(() => {
26
+ process.exit(0);
27
+ }, 5000);