summaryrefslogtreecommitdiff
path: root/test/files
diff options
context:
space:
mode:
Diffstat (limited to 'test/files')
-rw-r--r--test/files/run/code.check29
-rw-r--r--test/files/run/code.scala60
2 files changed, 89 insertions, 0 deletions
diff --git a/test/files/run/code.check b/test/files/run/code.check
new file mode 100644
index 0000000000..b946554fda
--- /dev/null
+++ b/test/files/run/code.check
@@ -0,0 +1,29 @@
+testing: ((x: Int) => x.$plus(ys.length))
+result = ((x: Int) => x.+{(x: <?>)Int}(ys.length{Int}){Int}){Int => Int}
+evaluated = <function1>
+testing: (() => {
+ val e: Element = new Element("someName");
+ e
+})
+result = (() => {
+ val e: Element = new Element{Element}{(name: <?>)Element}("someName"{String("someName")}){Element};
+ e{Element}
+}{Element}){() => Element}
+evaluated = Element(someName)
+testing: (() => truc.elem = 6)
+result = (() => truc.elem{Int} = 6{Int(6)}{Unit}){() => Unit}
+evaluated = null
+testing: (() => truc.elem = truc.elem.$plus(6))
+result = (() => truc.elem{Int} = truc.elem.+{(x: <?>)Int}(6{Int(6)}){Int}{Unit}){() => Unit}
+evaluated = null
+testing: (() => new baz.BazElement("someName"))
+result = (() => new baz.BazElement{baz.BazElement}{(name: <?>)baz.BazElement}("someName"{String("someName")}){baz.BazElement}){() => baz.BazElement}
+evaluated = BazElement(someName)
+testing: ((x: Int) => x.$plus(ys.length))
+result = ((x: Int) => x.+{(x: <?>)Int}(ys.length{Int}){Int}){Int => Int}
+evaluated = <function1>
+static: 2
+testing: (() => x.$plus(1))
+result = (() => x.+{(x: <?>)Int}(1{Int(1)}){Int}){() => Int}
+evaluated = 2
+1+1 = 2
diff --git a/test/files/run/code.scala b/test/files/run/code.scala
new file mode 100644
index 0000000000..e26f97b2a4
--- /dev/null
+++ b/test/files/run/code.scala
@@ -0,0 +1,60 @@
+import scala.tools.partest.utils.CodeTest
+
+case class Element(name: String)
+
+object Test extends App {
+ case class InnerElement(name: String)
+ def foo[T](ys: List[T]) = {
+ val fun: reflect.Code[Int => Int] = x => x + ys.length
+ fun
+ }
+ CodeTest(foo(List(2)), args)
+ CodeTest({() => val e = Element("someName"); e}, args)
+// CodeTest({() => val e = InnerElement("someName"); e}, args) // (does not work yet)
+ def titi() = {
+ var truc = 0
+ CodeTest(() => {
+ truc = 6
+ }, args)
+ }
+ def tata(): Unit = {
+ var truc = 0
+ CodeTest(() => {
+ truc = truc + 6
+ }, args)
+ }
+ titi()
+ tata()
+ new baz.A(args)
+
+ def show() {
+ def foo[T](ys: List[T]) = {
+ val fun: reflect.Code[Int => Int] = x => x + ys.length
+ CodeTest(fun, args)
+ }
+ foo(List(1, 2, 3))
+ }
+
+ show()
+
+ def evaltest(x: Int) = {
+ CodeTest.static(() => x + 1, args)
+ CodeTest(() => x + 1, args)
+ }
+
+ println("1+1 = "+evaltest(1))
+}
+
+
+package baz {
+
+ case class BazElement(name: String) { }
+
+ class A(args: Array[String]) {
+ CodeTest(() => new baz.BazElement("someName"), args)
+ }
+
+}
+
+
+