예제 #1
0
 public RateLimiterTest()
 {
     _identityService    = new Mock <IIdentityService>();
     _resourceRepository = new Mock <IResourceRepository>();
     _dateTimeService    = new DateTimeService();
     _limitProvider      = new SlidingWindowWithInterval();
     _limitRuleFilter    = new GeoLocationRuleFilter();
 }
        public RateLimitFeatureTests()
        {
            redisManager = A.Fake<IRedisClientsManager>();
            limitProvider = A.Fake<ILimitProvider>();
            keyGenerator = A.Fake<ILimitKeyGenerator>();

            var fixture = new Fixture().Customize(new AutoFakeItEasyCustomization());
            limit = fixture.Create<Limits>();
            A.CallTo(() => limitProvider.GetLimits(A<IRequest>.Ignored)).Returns(limit);
        }
예제 #3
0
        public RateLimitFeatureTests()
        {
            redisManager  = A.Fake <IRedisClientsManager>();
            limitProvider = A.Fake <ILimitProvider>();
            keyGenerator  = A.Fake <ILimitKeyGenerator>();

            var fixture = new Fixture().Customize(new AutoFakeItEasyCustomization());

            limit = fixture.Create <Limits>();
            A.CallTo(() => limitProvider.GetLimits(A <IRequest> .Ignored)).Returns(limit);
        }
 public InMemoryTokenBucket(ILimitProvider limitProvider)
 {
     _limitProvider = limitProvider;
     _bucket        = new ConcurrentDictionary <string, Lazy <VisitContext> >();
 }