From bebdfe8ce8dd737a34625ed1ee6336dbdecf058c Mon Sep 17 00:00:00 2001 From: Tim Chevalier Date: Fri, 23 Mar 2012 21:43:10 -0700 Subject: [PATCH] Add another test for cross-crate method calls --- src/test/auxiliary/cci_class_3.rs | 17 +++++++++++++++++ src/test/run-pass/class-methods-cross-crate.rs | 13 +++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 src/test/auxiliary/cci_class_3.rs create mode 100644 src/test/run-pass/class-methods-cross-crate.rs diff --git a/src/test/auxiliary/cci_class_3.rs b/src/test/auxiliary/cci_class_3.rs new file mode 100644 index 00000000000..a09a5e66a96 --- /dev/null +++ b/src/test/auxiliary/cci_class_3.rs @@ -0,0 +1,17 @@ +mod kitties { + +class cat { + priv { + let mutable meows : uint; + } + + let how_hungry : int; + + new(in_x : uint, in_y : int) { meows = in_x; how_hungry = in_y; } + + fn speak() { meows += 1u; } + fn meow_count() -> uint { meows } + +} + +} diff --git a/src/test/run-pass/class-methods-cross-crate.rs b/src/test/run-pass/class-methods-cross-crate.rs new file mode 100644 index 00000000000..d6fb30dc7b2 --- /dev/null +++ b/src/test/run-pass/class-methods-cross-crate.rs @@ -0,0 +1,13 @@ +// xfail-fast +// aux-build:cci_class_3.rs +use cci_class_3; +import cci_class_3::kitties::*; + +fn main() { + let nyan : cat = cat(52u, 99); + let kitty = cat(1000u, 2); + assert(nyan.how_hungry == 99); + assert(kitty.how_hungry == 2); + nyan.speak(); + assert(nyan.meow_count() == 53u); +}