Commit Graph

126 Commits

Author SHA1 Message Date
Alexey Andreev
5c436c3391 Improve node.js test runner: send response after each test, update timeout after each test. 2017-10-26 14:11:56 +03:00
Alexey Andreev
de14a57fe1 Change how method resolution work in DCE and devirtualization.
Since in Java 8 there are default methods in interface, method
resolution algorithm becomes more complicated. This alseocauses
several related changes.

1. Resolve methods as late as possible; do not resolve
   virtual call sites during DCE.
2. Due to several reasons we have to improve linking phase
   to preserve super methods that aren't actually ever called,
   but present in virtual call sites.

Related issue: #311
2017-10-22 17:56:31 +03:00
Alexey Andreev
daf0f03634 Fix Boolean.getBoolean(String). Fix various minor issues with system properties
See #306
2017-10-13 16:06:10 +03:00
Alexey Andreev
0b985b95d1 Implementing java.util.EnumMap 2017-10-12 15:13:55 +03:00
Alexey Andreev
e885ebdbbb Move tests from TArrayDequeTests to proper location 2017-10-10 23:59:55 +03:00
Alexey Andreev
26824f1399 Add some properties-related methods to System class 2017-10-10 12:56:51 +03:00
Alexey Andreev
dfaeb46c5e Implementing EnumSet 2017-10-08 21:40:45 +03:00
Alexey Andreev
669594fc9c JS: add reflection support for methods 2017-07-17 22:21:17 +03:00
Alexey Andreev
4171d468d4 JS: add reflection support for constructors 2017-07-17 22:21:17 +03:00
Alexey Andreev
c4c5635f88 Add reflection support for constructors 2017-07-17 22:21:16 +03:00
Alexey Andreev
31f9ca57ce Add reflection support for fields 2017-07-17 22:21:16 +03:00
Alexey Andreev
d4903d460b Reformat test code to conform checkstyle settings 2017-07-01 15:47:46 +03:00
Alexey Andreev
cdec4560ba Remove dumb comments containing only @author annotation 2017-07-01 13:13:52 +03:00
Alexey Andreev
d982f89ab6 Add missing folder to CLDR archive. Fix tests WRT changes in CLDR. 2017-06-25 13:36:35 +03:00
Alexey Andreev
59e5c16b31 Update version to 0.6.0-SNAPSHOT 2017-06-19 20:50:19 +03:00
Alexey Andreev
40b29cdfa1 Add support for altMetafactory 2017-06-18 21:22:44 +03:00
Alexey Andreev
2992c6e406 Wrap function by an object if returning value of native method is
a JSFunctor interface.

See #280
2017-06-11 00:15:41 +03:00
Alexey Andreev
45ba247265 When Java class gets exported to JS, generate bridges for its
methods so that these bridges perform type conversion
between Java and JS
2017-06-09 00:02:28 +03:00
Alexey Andreev
d324847fe6 Fix flaky test (hopefully) 2017-06-07 14:36:44 +03:00
Alexey Andreev
ba7f07de4b Copy default methods from interfaces to implementing classes 2017-06-06 22:42:21 +03:00
Alexey Andreev
ad14176277 Fix JSO tests from previous commits 2017-05-31 22:52:34 +03:00
Alexey Andreev
933a5c3efc Code style fixes 2017-05-30 22:49:40 +03:00
marciodel
5ecfb3620c Support for default and static methods in Functors 2017-05-30 22:45:14 +03:00
Alexey Andreev
3791b806b9 Weaken rules for names of JSProperty methods
First, accept first character if it's a non-letter character.
Second, don't validate name of method when JSProperty specifies
name of the JS property explicitly.

See #277
2017-05-29 23:54:43 +03:00
Alexey Andreev
c0ed3d54d7 Fix base64 support
(cherry picked from commit 5da32e3a65)

# Conflicts:
#	tests/src/test/java/org/teavm/classlib/java/lang/TestResourcesSupplier.java
2017-05-29 23:26:34 +03:00
Alexey Andreev
b1b98097ee Improve ResourceSupplier API
(cherry picked from commit 539a12227f)

# Conflicts:
#	classlib/src/main/java/org/teavm/classlib/java/lang/ClassLoaderNativeGenerator.java
#	tests/src/test/java/org/teavm/classlib/java/lang/TestResourcesSupplier.java
2017-05-29 23:22:59 +03:00
Alexey Andreev
25b298b1d0 JS: fix ClassLoader.getResourceBundle for non-existent resources 2017-05-29 23:19:07 +03:00
Alexey Andreev
2d5f6a81c2 Improve peformance of Long.hashCode 2017-05-07 22:18:10 +03:00
Alexey Andreev
48d14570b2 Make Long/Float/Double/Integer compare/hashCode methods cross-platform 2017-05-07 22:06:44 +03:00
Alexey Andreev
e884bb35c9 Fix System.setErr/setOut methods 2017-05-07 21:32:35 +03:00
Alexey Andreev
293e82a3c0 In class inference add rules for known types of method parameters
and method return value
2017-04-27 00:14:14 +03:00
Alexey Andreev
3c4ec550c4 Fix test runner 2017-04-23 23:51:16 +03:00
Alexey Andreev
6ecfefe9c8 Testing travis setup 2017-04-22 20:08:30 +03:00
Alexey Andreev
6298e2c498 Testing travis setup 2017-04-22 18:57:06 +03:00
Alexey Andreev
60bcf97933 Use websocket client to run tests 2017-04-22 18:14:55 +03:00
Alexey Andreev
90f61fe87b Update travis configuration to run tests in headless chrome 2017-04-22 11:32:46 +03:00
Alexey Andreev
519cd71636 Change presentation of test suites in headless chrome runner 2017-04-22 11:32:19 +03:00
Alexey Andreev
80194f054e Fix flaky test 2017-04-22 00:47:47 +03:00
Alexey Andreev
8e67fe0168 Escape undefined unicode characters in string literal 2017-04-22 00:38:04 +03:00
Alexey Andreev
d5db7270be Move expected exception handling off test runner.
Implement it in launcher genertor instead
2017-04-22 00:26:43 +03:00
Alexey Andreev
e6606302cc Add test runner on headless chrome 2017-04-21 23:51:35 +03:00
Alexey Andreev
4847731328 Fix SOE when calling Throwable.getCause()
Fix https://github.com/konsoletyper/teavm/issues/249
2017-03-27 22:27:59 +03:00
Davin McCall
95f07d80a7 Add a test for an issue which I believe is caused by failure to identify
an asynchronous method.

Unfortunately I am unable to actually produce a failing test; instead an
exception message is generated during test execution. This seems to be an
issue with the test runner mechanism.
2017-02-25 19:06:56 +03:00
Davin McCall
651532c203 Add test for asynchronous class initialisation from asynchronous constructor.
(cherry picked from commit 34961e4)
2017-02-22 23:10:07 +03:00
Alexey Andreev
1ea69b7d17 Trying to fix flaky test 2017-02-16 22:33:18 +03:00
Alexey Andreev
55453c9311 Set version to 0.5.0-SNAPSHOT. Add configuration to deploy to bintray. Update version number during Travis build. 2017-02-16 21:48:13 +03:00
Alexey Andreev
edb3d2ff48 Fix generation of meta method when its discriminator class denotes array type 2017-02-12 00:23:53 +03:00
Alexey Andreev
19e8e06446 Fix creation of multi-dimensional arrays with zero dimensions. See https://github.com/konsoletyper/teavm/issues/239 2017-02-11 23:23:50 +03:00
Alexey Andreev
d6e3331063 Run optimized and minified versions of tests in surefure 2017-02-11 12:25:09 +03:00
Alexey Andreev
816a17dfc0 When Value.get() called in metaprogramming lambda and not assigned anywhere, capture instance anyway so that if it's a lazy value, it will be computed 2017-02-10 23:49:03 +03:00