Last change
on this file since 14721 was
14721,
checked in by Mark Evenson, 9 years ago
|
Intermediary JNEW-RUNTIME-CLASS work: start adding failing tests.
Run the failing tests via
CL-USER> (asdf:load-system :abcl) (asdf:test-system :abcl-test-lisp)
c.f. <http://abcl.org/trac/ticket/330> and <http://abcl.org/trac/ticket/346>.
Start editing documentation for JNEW-RUNTIME-CLASS.
Add failing tests for cases that should work, indicating that we have
basic problems with the code at this point.
|
File size:
1.7 KB
|
Line | |
---|
1 | (in-package :abcl.test.lisp) |
---|
2 | |
---|
3 | |
---|
4 | ;; method with no arguments |
---|
5 | (deftest runtime-class.1 |
---|
6 | (java:jnew-runtime-class |
---|
7 | "Actor" |
---|
8 | :fields `(("name" "java.lang.String")) |
---|
9 | :methods `(("getName" "java.lang.String" nil |
---|
10 | (lambda (this) |
---|
11 | (java:jfield this "name"))))) |
---|
12 | t) |
---|
13 | |
---|
14 | ;; method with primitive type |
---|
15 | (deftest runtime-class.2 |
---|
16 | (java:jnew-runtime-class |
---|
17 | "Actor" |
---|
18 | :fields `(("name" "java.lang.String")) |
---|
19 | :methods `(("getName" "java.lang.String" (:int) |
---|
20 | (lambda (this) |
---|
21 | (java:jfield this "name"))))) |
---|
22 | t) |
---|
23 | |
---|
24 | ;; inheritance of type |
---|
25 | |
---|
26 | (deftest runtime-class.3 |
---|
27 | (progn |
---|
28 | (java:jnew-runtime-class |
---|
29 | "foo.Actor" |
---|
30 | :fields `(("name" "java.lang.String"))) |
---|
31 | (java:jnew-runtime-class |
---|
32 | "foo.StageActor" |
---|
33 | :superclass "foo.Actor" |
---|
34 | :fields (list '("givenName" "java.lang.String")))) |
---|
35 | t) |
---|
36 | |
---|
37 | |
---|
38 | #| |
---|
39 | // Simple constructor test |
---|
40 | public class Actor { |
---|
41 | String name; |
---|
42 | |
---|
43 | public Actor(String name) { |
---|
44 | this.name = name; |
---|
45 | } |
---|
46 | |
---|
47 | public String getName() { |
---|
48 | return name; |
---|
49 | } |
---|
50 | |
---|
51 | } |
---|
52 | |# |
---|
53 | |
---|
54 | ;; constructor |
---|
55 | (deftest runtime-class.4 |
---|
56 | (java:jnew-runtime-class |
---|
57 | "Actor" |
---|
58 | :constructors `(("java.lang.String") |
---|
59 | (lambda (name) |
---|
60 | (setf (jfield this "name") |
---|
61 | name))) |
---|
62 | :methods `(("getName" "java.lang.String" ("java.lang.String") ;; no-arg methods not working |
---|
63 | (lambda (this dummy) |
---|
64 | (declare (ignore dummy)) |
---|
65 | (java:jfield this "name")))) |
---|
66 | :fields `(("name" "java.lang.String"))) |
---|
67 | t) |
---|
68 | |
---|
69 | |
---|
70 | |
---|
Note: See
TracBrowser
for help on using the repository browser.