Commit Graph

50 Commits

Author SHA1 Message Date
Vasily Levchenko 3fe59cc46c TEST: convertion unit tests into run tests 2016-12-27 13:56:03 +03:00
Svyatoslav Scherbina 62737efd54 backend: add tests:
* test for uninitialized vals
* test initializers3: global `var` of reference type
* expression_as_statement (disabled): using type operator as statement

Also enable test break1.
2016-12-23 11:40:31 +07:00
SvyatoslavScherbina b6561b13a4 Implement lowering of some builtin operators. (#154)
* EQEQ
* THROW_NPE

Add test for (un)boxing `==` operands.
2016-12-22 13:02:20 +07:00
Svyatoslav Scherbina f2b5b98dba backend: enable and add tests for autoboxing 2016-12-20 15:33:38 +07:00
Nikolay Igotti 3b7321ef94 Boxing. 2016-12-20 15:33:38 +07:00
Svyatoslav Scherbina 319a473565 backend: add test for lambda with receiver 2016-12-13 16:09:55 +07:00
Svyatoslav Scherbina ac4aca1c3a backend: add more tests for lambda 2016-12-13 16:09:55 +07:00
Svyatoslav Scherbina 4dec392880 backend: add tests for lambda functions 2016-12-13 16:09:55 +07:00
Konstantin Anisimov 282f4fee07 TEST: yet another string concatenation test 2016-12-08 13:37:22 +03:00
Konstantin Anisimov d8fe22cfb8 TEST: spread element test 2016-12-08 11:59:46 +03:00
Konstantin Anisimov 3eec3da511 TEST: tests for instanceof are modified to take in account null and nullable 2016-12-06 16:41:27 +03:00
Svyatoslav Scherbina 2531c34b64 backend: add two more tests for finally 2016-12-05 14:27:14 +07:00
Svyatoslav Scherbina 96b30f574f backend: add failing test for break 2016-12-05 12:55:23 +07:00
Konstantin Anisimov 9afdfc316b TEST: test includes labeled continue-break 2016-12-02 16:28:19 +03:00
Konstantin Anisimov 03e94c6877 TEST: tests for "break" and "continue" added 2016-12-02 16:28:19 +03:00
Svyatoslav Scherbina e65b22569c backend/tests: add disabled test 'array_to_any' 2016-12-02 16:47:40 +07:00
KonstantinAnisimov 90b6a12a5c Canonical name (#99)
* TEST: enabled testRetainAll

* Method resolution spared of annotations and generics

* TEST: test for canonical names "interface+generic" added

* Methods' canonical names support:

- Recursive iteration of method argument types
- Arguments in question are delivered from topmost overriden ancestor of this method
2016-11-30 16:19:28 +03:00
SvyatoslavScherbina 075562f46b Merge pull request #93 from JetBrains/try-catch-finally
Implement throw and try-catch-finally in backend

add corresponding tests
2016-11-29 15:01:23 +07:00
Konstantin Anisimov 837ae60eaf TEST: tests for safe cast added 2016-11-28 21:48:01 +03:00
Svyatoslav Scherbina e2dbeae85e backend: add tests for try-catch-finally and throwing exceptions
also add some tests for bugs with unreachable code handling and variables
2016-11-28 20:24:27 +07:00
Konstantin Anisimov 4717e99ac2 TEST: companion and init0 tests
(cherry picked from commit f8e80249e9f986ae58a52a57173d2cb0b68a653b)
2016-11-25 23:37:49 +03:00
Konstantin Anisimov 1b1360c77e TEST: extension function generation
(cherry picked from commit 27b8c962b2b12883150166c83c19b950c9091334)
2016-11-25 23:37:49 +03:00
Vasily Levchenko 48ee81548e TEST: primary/secondary constructor fields initialization 2016-11-24 15:52:34 +03:00
Vasily Levchenko 81742556a6 TEST: constructor body test 2016-11-22 21:13:25 +03:00
Konstantin Anisimov df358e8bd4 TEST: Tests for "null" constant added 2016-11-21 21:08:36 +03:00
vvlevchenko 5161155934 Constructor (w/o body) (#74) 2016-11-19 19:45:21 +03:00
Alexander Gorshenev 1d265bc50c Here goes stdlib separation.
$ gradlew backend.native:stdlib

builds you stdlib.kt.bc now.

The test runs are taught to supply
-library stdlib.kt.bc to kotlin compiler for proper imports resolution,
and then later stdlib.kt.bc is provided to clang for the final link step.
2016-11-18 19:11:38 +04:00
Konstantin Anisimov c1bb762417 TESTS: "for" and INSTANCEOF, NOT_INSTANCEOF, isInstanceOf on interface are added 2016-11-18 16:22:27 +03:00
Konstantin Anisimov 9c28555e55 Test for cast added 2016-11-18 15:47:28 +03:00
Konstantin Anisimov 103509d75d Tests fixed 2016-11-18 14:30:32 +03:00
Vasily Levchenko 514d1a16ec test: minus_eq fix 2016-11-18 13:54:34 +03:00
Konstantin Anisimov eb2046fe5d Tests fixed 2016-11-18 12:57:47 +03:00
Konstantin Anisimov 04d441ef21 Test fixed 2016-11-18 12:44:00 +03:00
Konstantin Anisimov f80697817e Test for getters/setters added 2016-11-17 12:25:12 +03:00
Svyatoslav Scherbina 69ee5a619a backend: add tests for === 2016-11-17 12:17:47 +07:00
Konstantin Anisimov 04822dda69 Tests for integer cmp operation added 2016-11-15 09:41:25 +03:00
Svyatoslav Scherbina f389ebf687 backend/tests: update resolved symbol names
according to new mangling scheme
2016-11-14 13:33:47 +07:00
Konstantin Anisimov a910627357 tests: added eqeq test
tests: sum-test: emproved test sum of int with various types of second argument (byte, short and etc)
tests: hello2 minor fix in test
2016-11-10 15:25:08 +03:00
Konstantin Anisimov 152e738e23 Tests for "while" and "do-while" loop generation 2016-11-08 06:35:50 +03:00
Konstantin Anisimov ea149fab4e Tests for "PLUSEQ" and "MINUSEQ" 2016-11-07 18:00:30 +03:00
Konstantin Anisimov 3c68ee4ce5 testsuite updated to reflect recent changes in codegen: branch support 2016-11-07 17:34:01 +03:00
Konstantin Anisimov 4078e4004c tests for local variables 2016-11-03 16:19:03 +03:00
Konstantin Anisimov f02e0af5a2 various numeric literals' tests 2016-10-28 12:27:12 +03:00
Vasily Levchenko 64acd9d894 field acces test (when there're no storage in object for contructor parameter) (not runnable yet) 2016-10-22 09:32:48 +03:00
Vasily Levchenko 7d243378cd TEST:object initialization 2016-10-21 20:21:54 +03:00
Nikolay Igotti f02339c1dc Merge pull request #4 from JetBrains/mem_mgmt
Add memory mgmt.
2016-10-11 19:10:53 +03:00
Nikolay Igotti ecb5a67db7 Add City64 as local hash, and update RTTI accordingly. 2016-10-11 18:40:16 +03:00
Vasily Levchenko 3a738b2ad3 arithmetic test 2016-10-11 11:41:37 +03:00
Vasily Levchenko 97e31820ae inter-procedural call test 2016-10-11 11:24:47 +03:00
Vasily Levchenko 4c32689e1f unit test introduced:
User should create <test-name>-test.c file in the following manner:
> cat codegen/function/sum-test.c
extern void *resolve_symbol(const char*);

int
run_test() {
  int (*sum)(int, int) = resolve_symbol("kfun:sum");

  if (sum(2, 3) != 5) return 1;

  return 0;
}
and add <test-name> to the TESTS variable in the Makefile
to run tests:
> make clean run
Note: failing tests should return no zero values.
2016-10-10 15:11:55 +03:00