Skip to content
This repository has been archived by the owner on Nov 28, 2018. It is now read-only.

Commit

Permalink
Added CloudFlare header tests
Browse files Browse the repository at this point in the history
  • Loading branch information
lafama committed Feb 9, 2015
1 parent 67313b7 commit c615cf2
Showing 1 changed file with 66 additions and 0 deletions.
66 changes: 66 additions & 0 deletions test.js
Original file line number Diff line number Diff line change
Expand Up @@ -571,3 +571,69 @@ describe('an array of cidr blocks',function(){
});
});
});

//CloudFlare Tests
describe('enforcing cloudflare based client IP address blacklist restrictions', function(){

beforeEach(function(){
this.ipfilter = ipfilter([ '127.0.0.1' ], { log: false });
this.req = {
session: {},
headers: [],
connection: {
remoteAddress: ''
}
};
});

it('should allow all non-blacklisted forwarded ips', function( done ){
this.req.headers['cf-connecting-ip'] = '127.0.0.2';
this.ipfilter( this.req, {}, function(){
done();
});
});

it('should deny all blacklisted forwarded ips', function( done ){
this.req.headers['cf-connecting-ip'] = '127.0.0.1';
var res = {
end: function(){
assert.equal( 401, res.statusCode );
done();
}
};

this.ipfilter( this.req, res, function(){});
});

});
describe('enforcing cloudflare based client IP address whitelist restrictions', function(){
beforeEach(function(){
this.ipfilter = ipfilter([ '127.0.0.1' ], { log: false, mode: 'allow' });
this.req = {
session: {},
headers: [],
connection: {
remoteAddress: ''
}
};
});

it('should allow whitelisted forwarded ips', function( done ){
this.req.headers['cf-connecting-ip'] = '127.0.0.1';
this.ipfilter( this.req, {}, function(){
done();
});
});
it('should deny all non-whitelisted forwarded ips', function( done ){
this.req.headers['cf-connecting-ip'] = '127.0.0.2';
var res = {
end: function(){
assert.equal( 401, res.statusCode );
done();
}
};

this.ipfilter( this.req, res, function(){});
});

})

0 comments on commit c615cf2

Please sign in to comment.