public void register_and_fetch() { var headers = new Header[] { new Header("a", "1"), new Header("b", "2"), new Header("c", "3") }; var hash = Guid.NewGuid().ToString(); var cache = new HeadersCache(); cache.Register(hash, headers); cache.Current(hash).ShouldHaveTheSameElementsAs(headers); }
public void register_saves_a_copy_of_the_enumerable_and_not_the_same() { var headers = new Header[] { new Header("a", "1"), new Header("b", "2"), new Header("c", "3") }; var hash = Guid.NewGuid().ToString(); var cache = new HeadersCache(); cache.Register(hash, headers); cache.Current(hash).ShouldNotBeTheSameAs(headers); }
protected override void beforeEach() { theWriter = new StubOutputWriter(); Services.Inject <IOutputWriter>(theWriter); theWriter.Output.AppendHeader(HttpResponseHeaders.ETag, "12345"); theWriter.Output.AppendHeader("a", "1"); theHeaders = new HeadersCache(); Services.Inject <IHeadersCache>(theHeaders); theResultingOutput = ClassUnderTest.CreateOutput(theResource, () => MockFor <IActionBehavior>().Invoke()); }
public void eject_clears_it_out() { var headers = new Header[] { new Header("a", "1"), new Header("b", "2"), new Header("c", "3") }; var hash = Guid.NewGuid().ToString(); var cache = new HeadersCache(); cache.Register(hash, headers); cache.Eject(hash); cache.Current(hash).Any().ShouldBeFalse(); }
public void SetUp() { theHeaders = new KeyValues(); var requestData = new RequestData(new FlatValueSource(theHeaders, RequestDataSource.Header.ToString())); theServiceArguments = new ServiceArguments(); theServiceArguments.Set(typeof(IRequestData), requestData); stash <IHttpWriter>(); stash <ICurrentChain>(); theCache = new HeadersCache(); theHash = Guid.NewGuid().ToString(); theSource = MockRepository.GenerateMock <Func <ServiceArguments, string> >(); theSource.Stub(x => x.Invoke(theServiceArguments)).Return(theHash); theFilter = new EtagInvocationFilter(theCache, theSource); }