コード例 #1
0
ファイル: NamedTypeTests.cs プロジェクト: rajeshpillai/rook
 public void CanBeConstructedFromNongenericClrTypes()
 {
     var intType = new NamedType(typeof(int));
     intType.Name.ShouldEqual("System.Int32");
     intType.GenericArguments.ShouldBeEmpty();
     intType.ToString().ShouldEqual("int");
 }
コード例 #2
0
ファイル: NamedTypeTests.cs プロジェクト: rajeshpillai/rook
 public void CanBeConstructedFromClosedGenericClrTypes()
 {
     var closedEnumerable = new NamedType(typeof(IEnumerable<int>));
     closedEnumerable.Name.ShouldEqual("System.Collections.Generic.IEnumerable");
     closedEnumerable.GenericArguments.Single().ShouldEqual(new NamedType(typeof(int)));
     closedEnumerable.ToString().ShouldEqual("System.Collections.Generic.IEnumerable<int>");
 }
コード例 #3
0
ファイル: NamedTypeTests.cs プロジェクト: rajeshpillai/rook
        public void CanBeConstructedFromEmptyRookClassDeclarations()
        {
            var @class = "class Foo { }".ParseClass();

            var foo = new NamedType(@class);
            foo.Name.ShouldEqual("Foo");
            foo.GenericArguments.ShouldBeEmpty();
            foo.ToString().ShouldEqual("Foo");
        }
コード例 #4
0
ファイル: NamedTypeTests.cs プロジェクト: rajeshpillai/rook
 public void CanBeConstructedFromOpenGenericClrTypes()
 {
     using (TypeVariable.TestFactory())
     {
         var openEnumerable = new NamedType(typeof(IEnumerable<>));
         openEnumerable.Name.ShouldEqual("System.Collections.Generic.IEnumerable");
         openEnumerable.GenericArguments.Single().ShouldEqual(new TypeVariable(0));
         openEnumerable.ToString().ShouldEqual("System.Collections.Generic.IEnumerable<0>");
     }
 }
コード例 #5
0
ファイル: NamedTypeTests.cs プロジェクト: rajeshpillai/rook
        public void CanBeConstructedFromRookClassDeclarationsIncludingMethods()
        {
            var @class = "class Foo { int Square(int x) x*x; }".ParseClass();

            var foo = new NamedType(@class);
            foo.Name.ShouldEqual("Foo");
            foo.GenericArguments.ShouldBeEmpty();
            foo.ToString().ShouldEqual("Foo");

            foo.Methods.ShouldList(
                method =>
                {
                    method.Identifier.ShouldEqual("Square");
                    method.Type.ShouldEqual(NamedType.Function(new[] {NamedType.Integer}, NamedType.Integer));
                });
        }