New bugs
andrei.eremeev
andrei.eremeev at oracle.com
Tue Mar 3 20:59:57 UTC 2015
I tried classpath manually.
-> new Test();
| Error:
| cannot find symbol
| symbol: class Test
| new Test();
| ^---^
-> /cp .
| Path . added to classpath
-> new Test();
| Error:
| cannot find symbol
| symbol: class Test
| new Test();
| ^---^
-> | State engine terminated. Resetting...
andrei-eremeev at aeremeev:/export/data/repositories/repl/langtools/repl$
ls Test*
Test.class Test.java
As you can see, current directory contains class Test, but REPL cannot
find it.
I will add a thorough test suite for classpath (API and shell) tomorrow.
Andrei Eremeev
On 03/03/2015 11:53 PM, Robert Field wrote:
>
> On 03/03/15 12:21, andrei.eremeev wrote:
>> Hi REPL team,
>>
>> 1. /c or /classes prints "class" for enums and annotations, while
>> "interface" is printed for interfaces.
>> -> @interface A {}
>> | Added annotation interface A
>>
>> -> /c
>> | class A
>>
>> -> enum A {}
>> | Replaced enum A
>>
>> -> /c
>> | class A
>>
>> -> interface A {}
>> | Replaced interface A
>>
>> -> /c
>> | interface A
>
> Thanks for the test and TODO. Fortunately that will be easy to fix ;-)
>
>>
>> 2. IllegalArgumentException is not thrown when currentDeclaration is
>> called on the snippet declared in another state.
>> See the provided example (The appropriate test will be pushed soon).
>>
>> SnippetInfo info = assertEval1("class A { void f() {} }");
>> EvalProcessing evalProcessing =
>> EvalProcessing.create(newTestingInputStream(),
>> newPrintStream(newByteArrayOutputStream()),
>> newPrintStream(newByteArrayOutputStream()));
>> try(EvalState state = evalProcessing.evalState()) {
>> List<EvalResult> results = state.eval("class A { int f() { return
>> 0; } }");
>> assertEquals(results.size(),1,"Too much snippets");
>> EvalResult result = results.get(0);
>> assertTrue(result.outcome.success,"Compilation failed");
>> state.currentResolution(info.key());
>> }
>
> Thanks for the test and TODO.
>
>>
>> 3. It looks like addToClasspath is broken, REPL cannot find any
>> classes added to classpath.
>
> My ad hoc tests worked. Given that testing this needs side files,
> wasn't sure of the "right" way to add to the test framework. Can you
> add tests that show it failing?
>
> Thanks,
> Robert
>
>>
>> Andrei Eremeev
>
More information about the kulla-dev
mailing list