summaryrefslogtreecommitdiff
path: root/test/disabled/presentation/timeofday/src/timeofday.scala
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2011-12-05 10:05:01 -0800
committerPaul Phillips <paulp@improving.org>2011-12-05 10:05:01 -0800
commit09ba583b1e08b96d9b1d703a1c0c6bdaa55ae7f7 (patch)
treefc8661a15dc929c43a815445507a35e05f266185 /test/disabled/presentation/timeofday/src/timeofday.scala
parent8b1e0225fdde17be06d064dece1f1851bd5bde03 (diff)
downloadscala-09ba583b1e08b96d9b1d703a1c0c6bdaa55ae7f7.tar.gz
scala-09ba583b1e08b96d9b1d703a1c0c6bdaa55ae7f7.tar.bz2
scala-09ba583b1e08b96d9b1d703a1c0c6bdaa55ae7f7.zip
Disabled non-deterministic tests.
Everyone's favorite "will they or won't they" tests, akka and timeofday. They will be welcomed back into the fold once they can stick to a decision on whether to pass or fail.
Diffstat (limited to 'test/disabled/presentation/timeofday/src/timeofday.scala')
-rw-r--r--test/disabled/presentation/timeofday/src/timeofday.scala35
1 files changed, 35 insertions, 0 deletions
diff --git a/test/disabled/presentation/timeofday/src/timeofday.scala b/test/disabled/presentation/timeofday/src/timeofday.scala
new file mode 100644
index 0000000000..d6355097f1
--- /dev/null
+++ b/test/disabled/presentation/timeofday/src/timeofday.scala
@@ -0,0 +1,35 @@
+object timeofday {
+ class DateError extends Exception
+
+ /** Simulating properties in Scala
+ * (example 4.2.1 in ScalaReference.pdf)
+ */
+ class TimeOfDayVar {
+ private var h, m, s: Int = 0
+
+ def hours = h
+
+ /** A method 'ident_=' is a setter for 'ident'. 'code.ident = ...' will
+ * be translated to a call to 'ident_='
+ */
+ def hours_= (h: Int) =
+ if (0 <= h && h < 24) this.h = h
+ else throw new DateError()
+
+ def minutes = m
+ def minutes_= (m: Int) =
+ if (0 <= m && m < 60) this.m = m
+ else throw new DateError()
+
+ def seconds = s
+ def seconds_= (s: Int) =
+ if (0 <= s && s < 60) this./*!*/s = s
+ else throw new DateError()
+ }
+
+ def main(args: Array[String]) {
+ val d = new TimeOfDayVar
+ d.hours = 8; d./*!*/minutes = 30; d.seconds = 0
+ d.hours/*#*/ = 25 // throws a DateError exception
+ }
+} \ No newline at end of file