diff options
author | Martin Odersky <odersky@gmail.com> | 2013-04-05 12:15:45 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2013-04-05 12:15:45 +0200 |
commit | f8d5c8401ab7e4a31c9f4430ad64e27d8cb08bac (patch) | |
tree | 64d0916d98f35a63da221bbdf95d44bc4467e759 /test/test/sigtest.sc | |
parent | 2dcae86ae6937ad2f8cd8b05734eb9feb964404e (diff) | |
download | dotty-f8d5c8401ab7e4a31c9f4430ad64e27d8cb08bac.tar.gz dotty-f8d5c8401ab7e4a31c9f4430ad64e27d8cb08bac.tar.bz2 dotty-f8d5c8401ab7e4a31c9f4430ad64e27d8cb08bac.zip |
Refactored test framework
Moves worksheets to test. Factored out class DottyTest and made it usable from worksheets. Added worksheet test for signatures.
Diffstat (limited to 'test/test/sigtest.sc')
-rw-r--r-- | test/test/sigtest.sc | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/test/test/sigtest.sc b/test/test/sigtest.sc new file mode 100644 index 000000000..44fa4f110 --- /dev/null +++ b/test/test/sigtest.sc @@ -0,0 +1,31 @@ +package test + +import dotty.tools.dotc._ +import core._ +import Decorators._ +import Types._, Symbols._ + +object sigtest extends DottyTest { + println("Welcome to the Scala worksheet") //> Welcome to the Scala worksheet + val int = ctx.requiredClass("scala.Int") //> int : dotty.tools.dotc.core.Symbols.ClassSymbol = class Int + int.signature //> res0: dotty.tools.dotc.core.Denotations.Signature = List() + val intmeth = methType("x")(int.symbolicRef)() //> intmeth : dotty.tools.dotc.core.Types.MethodType = MethodType(List(x), List + //| (TypeRef(ThisType(module class scala),Int)), TypeRef(ThisType(module class s + //| cala),Unit)) + intmeth.signature //> res1: dotty.tools.dotc.core.Denotations.Signature = List(Int) + val arraymeth = methType("x")(defn.ArrayType.appliedTo(int.symbolicRef))() + //> arraymeth : dotty.tools.dotc.core.Types.MethodType = MethodType(List(x), Li + //| st(RefinedType(TypeRef(ThisType(module class scala),Array), scala$Array$$T, + //| TypeAlias(TypeRef(ThisType(module class scala),Int)) | hash = -634207123)), + //| TypeRef(ThisType(module class scala),Unit)) + arraymeth.signature //> res2: dotty.tools.dotc.core.Denotations.Signature = List(Object[]) + val curriedmeth = methType("x", "y")(defn.IntType, defn.BooleanType)(methType("z")(defn.ArrayType.appliedTo(defn.IntType))()) + //> curriedmeth : dotty.tools.dotc.core.Types.MethodType = MethodType(List(x, y + //| ), List(TypeRef(ThisType(module class scala),Int), TypeRef(ThisType(module c + //| lass scala),Boolean)), MethodType(List(z), List(RefinedType(TypeRef(ThisType + //| (module class scala),Array), scala$Array$$T, TypeAlias(TypeRef(ThisType(modu + //| le class scala),Int)) | hash = -250095115)), TypeRef(ThisType(module class s + //| cala),Unit))) + curriedmeth.signature //> res3: dotty.tools.dotc.core.Denotations.Signature = List(Int, Boolean, Objec + //| t[]) +}
\ No newline at end of file |