Skip to content

Commit

Permalink
Merge branch 'master' into prisma-support
Browse files Browse the repository at this point in the history
  • Loading branch information
animir committed Feb 14, 2024
2 parents a71b687 + 013ab5c commit 28a695b
Show file tree
Hide file tree
Showing 6 changed files with 26 additions and 10 deletions.
2 changes: 2 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ jobs:
- uses: actions/setup-node@v4
with:
node-version: "lts/*"
cache: "npm"
cache-dependency-path: ./package.json
- name: Install dependencies
run: |
npm install
Expand Down
3 changes: 2 additions & 1 deletion test/ExpressBruteFlexible.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ const Memcached = require('memcached-mock');
const ExpressBruteFlexible = require('../lib/ExpressBruteFlexible');
const limiters = require('../index');
const redis = require("redis");
const redisOptions = require('./RedisOptions');

const makeRequest = (middleware, req, res, next) => new Promise((resolve) => {
middleware(req, res, (err) => {
Expand All @@ -32,7 +33,7 @@ describe('ExpressBruteFlexible', async function ExpressBruteFlexibleTest() {
};

const memcacheMockClient = new Memcached('localhost:11211');
const redisMockClient = redis.createClient();
const redisMockClient = redis.createClient(redisOptions);
await redisMockClient.connect();
await redisMockClient.flushAll();

Expand Down
2 changes: 1 addition & 1 deletion test/RateLimiterDynamo.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ describe('RateLimiterDynamo with fixed window', function RateLimiterDynamoTest()
accessKeyId: 'fake',
secretAccessKey: 'fake'
},
endpoint: 'http://localhost:8000'
endpoint: 'http://127.0.0.1:8000'
});

it('DynamoDb client connection', (done) => {
Expand Down
7 changes: 5 additions & 2 deletions test/RateLimiterRedis.ioredis.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,11 @@ describe('RateLimiterRedis with fixed window', function RateLimiterRedisTest() {
let redisMockClient;

beforeEach(async () => {
redisMockClient = new Redis();
//await redisMockClient.connect();
redisMockClient = new Redis({
port: 6379, // Redis port
host: '127.0.0.1', // Redis host
});
// await redisMockClient.connect();
});

afterEach(async ()=>{
Expand Down
13 changes: 7 additions & 6 deletions test/RateLimiterRedis.redis.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,14 @@ const { expect } = require('chai');
const sinon = require('sinon');
const RateLimiterRedis = require('../lib/RateLimiterRedis');
const redis = require("redis");
const redisOptions = require('./RedisOptions');

describe('RateLimiterRedis with fixed window', function RateLimiterRedisTest() {
this.timeout(5500);
let redisMockClient;

beforeEach(async () => {
redisMockClient = redis.createClient();
redisMockClient = redis.createClient(redisOptions);
await redisMockClient.connect();
await redisMockClient.flushAll();
});
Expand Down Expand Up @@ -325,7 +326,7 @@ describe('RateLimiterRedis with fixed window', function RateLimiterRedisTest() {
it('consume using insuranceLimiter when RedisClient error', async() => {
const testKey = 'rediserror2';

const redisClientClosed = redis.createClient();
const redisClientClosed = redis.createClient(redisOptions);
await redisClientClosed.connect();

const rateLimiter = new RateLimiterRedis({
Expand Down Expand Up @@ -353,7 +354,7 @@ describe('RateLimiterRedis with fixed window', function RateLimiterRedisTest() {
it('penalty using insuranceLimiter when RedisClient error', async () => {
const testKey = 'rediserror3';

const redisClientClosed = redis.createClient();
const redisClientClosed = redis.createClient(redisOptions);
await redisClientClosed.connect();

const rateLimiter = new RateLimiterRedis({
Expand All @@ -380,7 +381,7 @@ describe('RateLimiterRedis with fixed window', function RateLimiterRedisTest() {
it('reward using insuranceLimiter when RedisClient error', async () => {
const testKey = 'rediserror4';

const redisClientClosed = redis.createClient();
const redisClientClosed = redis.createClient(redisOptions);
await redisClientClosed.connect();

const rateLimiter = new RateLimiterRedis({
Expand Down Expand Up @@ -413,7 +414,7 @@ describe('RateLimiterRedis with fixed window', function RateLimiterRedisTest() {
it('block using insuranceLimiter when RedisClient error', async() => {
const testKey = 'rediserrorblock';

const redisClientClosed = redis.createClient();
const redisClientClosed = redis.createClient(redisOptions);
await redisClientClosed.connect();

const rateLimiter = new RateLimiterRedis({
Expand Down Expand Up @@ -717,7 +718,7 @@ describe('RateLimiterRedis with fixed window', function RateLimiterRedisTest() {
it('insurance limiter on error consume applies options.customDuration to set expire', async () => {
const testKey = 'consume.customDuration.onerror';

const redisClientClosed = redis.createClient();
const redisClientClosed = redis.createClient(redisOptions);
await redisClientClosed.connect();

const rateLimiter = new RateLimiterRedis({
Expand Down
9 changes: 9 additions & 0 deletions test/RedisOptions.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
// This object is used for setting the options for the redis client,
// so we can connect to the redis server in Docker, using ipv4 and not
// ipv6, which the client defaults to useing
module.exports = {
socket: {
host: '127.0.0.1',
port: 6379,
},
};

0 comments on commit 28a695b

Please sign in to comment.