46 lines
1.1 KiB
JavaScript
46 lines
1.1 KiB
JavaScript
import test from 'brittle'
|
|
import {
|
|
parseRedisInfo,
|
|
parseRedisAddr,
|
|
isRedisEnabled,
|
|
} from '../server/services/collectors/redis.js'
|
|
|
|
const SAMPLE = `# Server
|
|
redis_version:7.2.0
|
|
# Memory
|
|
used_memory:1048576
|
|
used_memory_peak:2097152
|
|
used_memory_rss:3145728
|
|
# Clients
|
|
connected_clients:12
|
|
blocked_clients:1
|
|
# Stats
|
|
instantaneous_ops_per_sec:42
|
|
keyspace_hits:90
|
|
keyspace_misses:10
|
|
`
|
|
|
|
test('parseRedisInfo', (t) => {
|
|
const info = parseRedisInfo(SAMPLE)
|
|
t.is(info.redis_version, '7.2.0')
|
|
t.is(info.used_memory, '1048576')
|
|
t.is(info.connected_clients, '12')
|
|
t.is(info.instantaneous_ops_per_sec, '42')
|
|
})
|
|
|
|
test('parseRedisAddr', (t) => {
|
|
t.is(parseRedisAddr('10.0.0.2:6380').port, 6380)
|
|
t.is(parseRedisAddr('redis://localhost:6379/0').host, 'localhost')
|
|
t.is(parseRedisAddr('redis://localhost:6379/0').port, 6379)
|
|
})
|
|
|
|
test('isRedisEnabled', (t) => {
|
|
const prev = process.env.PEARDATA_REDIS
|
|
delete process.env.PEARDATA_REDIS
|
|
t.absent(isRedisEnabled())
|
|
process.env.PEARDATA_REDIS = '1'
|
|
t.ok(isRedisEnabled())
|
|
if (prev == null) delete process.env.PEARDATA_REDIS
|
|
else process.env.PEARDATA_REDIS = prev
|
|
})
|