public void Get_GivenCachedProjectFileWithDifferentCasing_ReturnsRootElement()
        {
            string             projectFile        = NativeMethodsShared.IsUnixLike ? "/foo" : "c:\\foo";
            string             projectFileToCache = NativeMethodsShared.IsUnixLike ? "/Foo" : "c:\\Foo";
            ProjectRootElement rootElementToCache = ProjectRootElement.Create(projectFileToCache);

            var cache = new SimpleProjectRootElementCache();

            cache.AddEntry(rootElementToCache);

            ProjectRootElement actualRootElement = cache.Get(projectFile, null, false, null);

            actualRootElement.ShouldBe(rootElementToCache);
        }
        public void Get_GivenOpenFuncWhichAddsRootElementWithDifferentCasing_ReturnsRootElement()
        {
            string             projectFile        = NativeMethodsShared.IsUnixLike ? "/foo" : "c:\\foo";
            string             projectFileToCache = NativeMethodsShared.IsUnixLike ? "/Foo" : "c:\\Foo";
            ProjectRootElement rootElementToCache = ProjectRootElement.Create(projectFileToCache);

            ProjectRootElement OpenFunc(string pathArg, ProjectRootElementCacheBase cacheArg)
            {
                return(rootElementToCache);
            }

            var cache = new SimpleProjectRootElementCache();

            cache.AddEntry(rootElementToCache);

            ProjectRootElement actualRootElement = cache.Get(projectFile, OpenFunc, false, null);

            actualRootElement.ShouldBe(rootElementToCache);
        }