Exemple #1
0
        public async Task ReturnsEmptyResultWhenDefinitionIsNotFound()
        {
            var source1 = @"using System;

class Foo {
}";
            var source2 = @"class Bar {
    private Baz foo;
}";

            var workspace = TestHelpers.CreateSimpleWorkspace(new Dictionary <string, string> {
                { "foo.cs", source1 }, { "bar.cs", source2 }
            });
            var controller         = new OmnisharpController(workspace, null);
            var definitionResponse = await controller.GotoDefinition(new GotoDefinitionRequest
            {
                FileName = "bar.cs",
                Line     = 2,
                Column   = 14,
                Timeout  = 60000
            });

            Assert.Null(definitionResponse.FileName);
            Assert.Equal(0, definitionResponse.Line);
            Assert.Equal(0, definitionResponse.Column);
        }
        public async Task ReturnsEmptyResultWhenDefinitionIsNotFound()
        {
            var source1 = @"using System;

class Foo {
}";
            var source2 = @"class Bar {
    private Baz foo;
}";

            var workspace = TestHelpers.CreateSimpleWorkspace(new Dictionary<string, string> {
                { "foo.cs", source1 }, { "bar.cs", source2}
            });
            var controller = new OmnisharpController(workspace, null);
            var definitionResponse = await controller.GotoDefinition(new GotoDefinitionRequest
            {
                FileName = "bar.cs",
                Line = 2,
                Column = 14,
                Timeout = 60000
            });

            Assert.Null(definitionResponse.FileName);
            Assert.Equal(0, definitionResponse.Line);
            Assert.Equal(0, definitionResponse.Column);
        }
Exemple #3
0
        public async Task ReturnsPositionInMetadata_WhenSymbolIsExtensionMethod()
        {
            var controller         = new OmnisharpController(CreateTestWorkspace(), null);
            var definitionResponse = await controller.GotoDefinition(new GotoDefinitionRequest
            {
                FileName     = "bar.cs",
                Line         = 11,
                Column       = 17,
                Timeout      = 60000,
                WantMetadata = true
            });

            Assert.Null(definitionResponse.FileName);
            Assert.NotNull(definitionResponse.MetadataSource);
            Assert.Equal("System.Core", definitionResponse.MetadataSource.AssemblyName);
            Assert.Equal("System.Linq.Enumerable", definitionResponse.MetadataSource.TypeName);
            Assert.NotEqual(0, definitionResponse.Line);
            Assert.NotEqual(0, definitionResponse.Column);
        }
Exemple #4
0
        public async Task ReturnsFullNameInMetadata_WhenSymbolIsType()
        {
            var controller         = new OmnisharpController(CreateTestWorkspace(), null);
            var definitionResponse = await controller.GotoDefinition(new GotoDefinitionRequest
            {
                FileName     = "bar.cs",
                Line         = 10,
                Column       = 23,
                Timeout      = 60000,
                WantMetadata = true
            });

            Assert.Null(definitionResponse.FileName);
            Assert.NotNull(definitionResponse.MetadataSource);
            Assert.Equal("mscorlib", definitionResponse.MetadataSource.AssemblyName);
            Assert.Equal("System.String", definitionResponse.MetadataSource.TypeName);
            Assert.NotEqual(0, definitionResponse.Line);
            Assert.NotEqual(0, definitionResponse.Column);
        }
Exemple #5
0
        public async Task ReturnsPositionInMetadata_WhenSymbolIsMethod()
        {
            var controller         = new OmnisharpController(CreateTestWorkspace(), null);
            var definitionResponse = await controller.GotoDefinition(new GotoDefinitionRequest
            {
                FileName     = "bar.cs",
                Line         = 7,
                Column       = 20,
                Timeout      = 60000,
                WantMetadata = true
            });

            Assert.Null(definitionResponse.FileName);
            Assert.NotNull(definitionResponse.MetadataSource);
            Assert.Equal("mscorlib", definitionResponse.MetadataSource.AssemblyName);
            Assert.Equal("System.Console", definitionResponse.MetadataSource.TypeName);
            // We probably shouldn't hard code metadata locations (they could change randomly)
            Assert.NotEqual(0, definitionResponse.Line);
            Assert.NotEqual(0, definitionResponse.Column);
        }
        public async Task ReturnsPositionInMetadata_WhenSymbolIsMethod()
        {
            var controller = new OmnisharpController(CreateTestWorkspace(), null);
            var definitionResponse = await controller.GotoDefinition(new GotoDefinitionRequest
            {
                FileName = "bar.cs",
                Line = 7,
                Column = 20,
                Timeout = 60000,
                WantMetadata = true
            });

            Assert.Null(definitionResponse.FileName);
            Assert.NotNull(definitionResponse.MetadataSource);
            Assert.Equal("mscorlib", definitionResponse.MetadataSource.AssemblyName);
            Assert.Equal("System.Console", definitionResponse.MetadataSource.TypeName);
            // We probably shouldn't hard code metadata locations (they could change randomly)
            Assert.NotEqual(0, definitionResponse.Line);
            Assert.NotEqual(0, definitionResponse.Column);
        }
        public async Task ReturnsPositionInMetadata_WhenSymbolIsExtensionMethod()
        {
            var controller = new OmnisharpController(CreateTestWorkspace(), null);
            var definitionResponse = await controller.GotoDefinition(new GotoDefinitionRequest
            {
                FileName = "bar.cs",
                Line = 11,
                Column = 17,
                Timeout = 60000,
                WantMetadata = true
            });

            Assert.Null(definitionResponse.FileName);
            Assert.NotNull(definitionResponse.MetadataSource);
            Assert.Equal("System.Core", definitionResponse.MetadataSource.AssemblyName);
            Assert.Equal("System.Linq.Enumerable", definitionResponse.MetadataSource.TypeName);
            Assert.NotEqual(0, definitionResponse.Line);
            Assert.NotEqual(0, definitionResponse.Column);
        }
        public async Task ReturnsFullNameInMetadata_WhenSymbolIsType()
        {
            var controller = new OmnisharpController(CreateTestWorkspace(), null);
            var definitionResponse = await controller.GotoDefinition(new GotoDefinitionRequest
            {
                FileName = "bar.cs",
                Line = 10,
                Column = 23,
                Timeout = 60000,
                WantMetadata = true
            });

            Assert.Null(definitionResponse.FileName);
            Assert.NotNull(definitionResponse.MetadataSource);
            Assert.Equal("mscorlib", definitionResponse.MetadataSource.AssemblyName);
            Assert.Equal("System.String", definitionResponse.MetadataSource.TypeName);
            Assert.NotEqual(0, definitionResponse.Line);
            Assert.NotEqual(0, definitionResponse.Column);
        }