Esempio n. 1
0
        public void CanReturnSingleModifier()
        {
            Data.TypeData data   = GetType("internal class Test { }");
            SyntaxToken[] tokens = data.Modifiers;

            Assert.True(tokens.Length == 1 && tokens[0].IsKind(SyntaxKind.InternalKeyword));
        }
        public void ReturnsOneDeclaration_When_PartialIsRedundant()
        {
            Data.TypeData           data = GetType("partial class Test { }");
            TypeDeclarationSyntax[] decl = data.GetPartialDeclarations().ToArray();

            Assert.True(decl.Length == 1 && decl[0].IsEquivalentTo(data.Declaration));
        }
        public void CanReturnsMultipleDeclarations()
        {
            TypeDeclarationSyntax firstDecl = GetNode <TypeDeclarationSyntax>("public partial sealed class Test { }");

            Data.TypeData           data = GetType("partial class Test { }");
            TypeDeclarationSyntax[] decl = data.GetPartialDeclarations().ToArray();

            Assert.True(decl.Length == 2 && decl.Any(d => d.IsEquivalentTo(firstDecl)) && decl.Any(d => d.IsEquivalentTo(data.Declaration)));
        }
Esempio n. 4
0
 public void ReturnsTypesInParentFirstOrderWithItselfLast_When_IncludeSelfIsTrue()
 {
     Data.TypeData data            = GetType("class Test { class Parent { class Child { } } }", 2);
     ITypeData[]   containingTypes = data.GetContainingTypes(true).ToArray();
     Assert.True(
         containingTypes.Length == 3 &&
         containingTypes[0].Symbol.Name == "Test" &&
         containingTypes[1].Symbol.Name == "Parent" &&
         containingTypes[2] == data
         );
 }
Esempio n. 5
0
        public void ReturnsAllModifiers_When_IsPartial()
        {
            Compilation.UpdateCompilation("public partial class Test { }");
            Data.TypeData data   = GetType("partial sealed class Test { }");
            SyntaxToken[] tokens = data.Modifiers;

            Assert.True(
                tokens.Any(t => t.IsKind(SyntaxKind.PublicKeyword)) &&
                tokens.Any(t => t.IsKind(SyntaxKind.SealedKeyword)) &&
                tokens.Any(t => t.IsKind(SyntaxKind.PartialKeyword))
                );
        }
Esempio n. 6
0
        public void DoesNotReturnIdenticalModifiers()
        {
            Compilation.UpdateCompilation("public sealed partial class Test { }");
            Data.TypeData data   = GetType("public sealed partial class Test { }");
            SyntaxToken[] tokens = data.Modifiers;

            Assert.True(
                tokens.Length == 3 &&
                tokens.Any(t => t.IsKind(SyntaxKind.PublicKeyword)) &&
                tokens.Any(t => t.IsKind(SyntaxKind.SealedKeyword)) &&
                tokens.Any(t => t.IsKind(SyntaxKind.PartialKeyword))
                );
        }
Esempio n. 7
0
        public void CanReturnMultipleModifiers()
        {
            Data.TypeData data   = GetType("class Parent { protected internal unsafe readonly ref partial struct Test { }}", 1);
            SyntaxToken[] tokens = data.Modifiers;

            Assert.True(
                tokens.Any(t => t.IsKind(SyntaxKind.ProtectedKeyword)) &&
                tokens.Any(t => t.IsKind(SyntaxKind.InternalKeyword)) &&
                tokens.Any(t => t.IsKind(SyntaxKind.UnsafeKeyword)) &&
                tokens.Any(t => t.IsKind(SyntaxKind.ReadOnlyKeyword)) &&
                tokens.Any(t => t.IsKind(SyntaxKind.RefKeyword)) &&
                tokens.Any(t => t.IsKind(SyntaxKind.PartialKeyword))
                );
        }
Esempio n. 8
0
 public void ReturnsTypesInParentFirstOrder()
 {
     Data.TypeData data            = GetType("class Test { class Parent { class Child { } } }", 2);
     ITypeData[]   containingTypes = data.GetContainingTypes(false).ToArray();
     Assert.True(containingTypes.Length == 2 && containingTypes[0].Symbol.Name == "Test" && containingTypes[1].Symbol.Name == "Parent");
 }
Esempio n. 9
0
 public void ReturnsOnlyItself_When_IsNotNestedType_And_IncludeSelfIsTrue()
 {
     Data.TypeData data            = GetType("class Test { }");
     ITypeData[]   containingTypes = data.GetContainingTypes(true).ToArray();
     Assert.True(containingTypes.Length == 1 && data == containingTypes[0]);
 }
Esempio n. 10
0
 public void ReturnsEmpty_When_IsNotNestedType()
 {
     Data.TypeData data            = GetType("class Test { }");
     ITypeData[]   containingTypes = data.GetContainingTypes(false).ToArray();
     Assert.True(containingTypes.Length == 0);
 }
Esempio n. 11
0
 public void CanReturnSingleType()
 {
     Data.TypeData data            = GetType("class Parent { class Child { } }", 1);
     ITypeData[]   containingTypes = data.GetContainingTypes(false).ToArray();
     Assert.True(containingTypes.Length == 1 && containingTypes[0].Symbol.Name == "Parent");
 }
Esempio n. 12
0
 public void CanReturnMultipleTypes()
 {
     Data.TypeData data            = GetType("class Test { class Parent { class Child { } } }", 2);
     ITypeData[]   containingTypes = data.GetContainingTypes(false).ToArray();
     Assert.True(containingTypes.Length == 2 && containingTypes.Any(t => t.Symbol.Name == "Parent") && containingTypes.Any(t => t.Symbol.Name == "Test"));
 }
Esempio n. 13
0
 public void ReturnsEmpty_When_DeclHasNoModifiers()
 {
     Data.TypeData data   = GetType("class Test { }");
     SyntaxToken[] tokens = data.Modifiers;
     Assert.True(tokens.Length == 0);
 }