public void lookup_system_guid() { var repository = new MsdnCodeDocMemberRepository(); var model = repository.GetMemberModel("System.Guid"); Assert.NotNull(model); Assert.True(model.HasSummaryContents); Assert.True(model.SummaryContents.First().Node.OuterXml.Contains("GUID")); }
public void cache_performance_test() { var repository = new MsdnCodeDocMemberRepository(); var requestNames = new[] { "System.Guid", "System.Object", "System.Array"}; var firstRequestStopwatch = new Stopwatch(); firstRequestStopwatch.Start(); var firstRequests = Array.ConvertAll(requestNames, x => repository.GetMemberModel(x)); firstRequests.Should().NotContainNulls(); firstRequestStopwatch.Stop(); var secondRequestStopwatch = new Stopwatch(); secondRequestStopwatch.Start(); // the request is a different code reference but for the same member var secondRequests = Array.ConvertAll(requestNames, x => repository.GetMemberModel("T:" + x)); secondRequests.Should().NotContainNulls(); secondRequestStopwatch.Stop(); // the second set of requests should be (a lot) less than 3/4 of the first request var secondRequestTargetTime = new TimeSpan(firstRequestStopwatch.Elapsed.Ticks * 3 / 4); secondRequestStopwatch.Elapsed.Should().BeLessThan(secondRequestTargetTime); }
public MsdnSimpleUsageFacts() { SharedRepository = new MsdnCodeDocMemberRepository(); }