Example #1
0
        public async Task GetName_ReturnsValueFromFirstAttributeWithValue()
        {
            var methodName  = nameof(GetNameTests.SingleAttribute);
            var compilation = await GetCompilationForGetName();

            Assert.True(TopLevelParameterNameAnalyzer.SymbolCache.TryCreate(compilation, out var symbolCache));

            var type   = compilation.GetTypeByMetadataName(typeof(GetNameTests).FullName);
            var method = (IMethodSymbol)type.GetMembers(methodName).First();

            var parameter = method.Parameters[0];
            var name      = TopLevelParameterNameAnalyzer.GetName(symbolCache, parameter);

            Assert.Equal("testModelName", name);
        }
Example #2
0
        public async Task GetName_ReturnsFirstName_IfMultipleAttributesAreSpecified()
        {
            var methodName  = nameof(GetNameTests.MultipleAttributes);
            var compilation = await GetCompilationForGetName();

            Assert.True(TopLevelParameterNameAnalyzer.SymbolCache.TryCreate(compilation, out var symbolCache));

            var type   = compilation.GetTypeByMetadataName(typeof(GetNameTests).FullName);
            var method = (IMethodSymbol)type.GetMembers(methodName).First();

            var parameter = method.Parameters[0];
            var name      = TopLevelParameterNameAnalyzer.GetName(symbolCache, parameter);

            Assert.Equal("name1", name);
        }
Example #3
0
        public async Task GetName_ReturnsName_IfAttributeDoesNotSpecifyName()
        {
            var methodName  = nameof(GetNameTests.SingleAttributeWithoutName);
            var compilation = await GetCompilationForGetName();

            var symbolCache = new TopLevelParameterNameAnalyzer.SymbolCache(compilation);

            var type   = compilation.GetTypeByMetadataName(typeof(GetNameTests).FullName);
            var method = (IMethodSymbol)type.GetMembers(methodName).First();

            var parameter = method.Parameters[0];
            var name      = TopLevelParameterNameAnalyzer.GetName(symbolCache, parameter);

            Assert.Equal("param", name);
        }