Commit Graph

114 Commits

Author SHA1 Message Date
Dmitry Savvinov accbd07b2e Publish ContractsDsl
- Mark @ContractsDsl as @Experimental
- Move Contracts DSL out from 'internal' package
- Change visibility of ContractsDsl from 'internal' to 'public'

^KT-25274 Fixed
^KT-25495 Fixed
2018-08-30 16:19:51 +03:00
Ilya Gorbunov 5e5b9e5912 Fix incorrect parameter order in TestNG asserter
#KT-25351 Fixed
2018-07-10 19:12:21 +03:00
Dmitry Savvinov 668bd209f2 Use -Xallow-kotlin-package while compiling common sources
K2MetadataCompiler doesn't perform explicit check of compilation of
'kotlin' package, thus stdlib build wasn't passing '-Xallow-kotlin-package'.

However, we have special hack for compiling stdlib with contracts: if
'-Xallow-kotlin-package' is passed, then allow compiling contracts for
custom functions. We have to do it this way, because we don't want
stdlib artifacts to be marked with pre-release flag, even though
contracts for custom functions are not enabled yet
(see eae9923dbe).

Therefore, it's crucial to pass -Xallow-kotlin-package properly for that
side-effect.
2018-07-09 18:57:58 +03:00
Yan Zhulanow c439b6d38b Pill: Import common modules as libraries 2018-05-15 16:29:47 +03:00
Yan Zhulanow ba5836d666 Pill: Introduce pill{} extension to set extended Pill configuration
Also introduce the flavor concept which allows to specify what part of Kotlin project should be imported.
2018-05-15 16:29:45 +03:00
Ilya Gorbunov 1d0d801744 Minor merge cleanup: remove unused variable 2018-05-14 18:24:31 +03:00
Ilya Gorbunov 864f0fecf6 KT-24353 Include kotlin-test-junit5 into coreLibraries, use JDK_18 to build and test it 2018-05-14 17:37:06 +03:00
evgzakharov 634279621d KT-24353 change junit5 version to minimal possible (5.2.0 -> 5.0.0)
However use the latest version of junit engine for running tests.
2018-05-14 17:36:34 +03:00
evgzakharov 84ee97cae9 KT-24353 add support for junit 5 in kotlin.test 2018-05-14 17:36:34 +03:00
Ilya Gorbunov d9d7b87fd9 Reformat kotlin.test library 2018-05-10 16:27:15 +03:00
Ilya Gorbunov 2e12834b6a Update copyrights in kotlin.test library
Change line number in StackTraceJVMTest due to the added copyright
2018-04-26 21:57:50 +03:00
Ilya Gorbunov 7ccbd36304 Set module name for common projects, this isn't done automatically yet 2018-04-12 17:53:00 +03:00
Alexander Udalov dd3cf531cf Disable packing module-info to libraries until Android issue is fixed
https://issuetracker.google.com/issues/77587908

 #KT-21266 Open
2018-04-05 19:18:05 +02:00
Ilya Gorbunov 299d6fa772 Use default compileJava9Java task to build java9 source set 2018-04-03 21:24:34 +02:00
Alexander Udalov 2d41c7d462 Add module-info.java for standard Kotlin libraries
Using the new multi-release jar feature, store compiled
module-info.class files into META-INF/versions/9 instead of the artifact
root. Hopefully, this will break fewer tools which do not support
module-info.class files because any sane tool should not do anything
with files in META-INF because before Java 9 that directory only
contained resources.

Upgrade some Maven plugins to newer versions which do not fail on
module-info.class files

 #KT-21266 In Progress
2018-04-03 21:22:14 +02:00
Ilya Gorbunov dd8a00f651 Make kotlin-test-js implement both kotlin-test-common and kotlin-test-annotations-common 2018-03-22 21:55:04 +03:00
Ilya Gorbunov 2d099a29b8 Clean up redundant -Xmulti-platform option from multiplatform projects
It was necessary before, but now it's provided automatically.
2018-03-22 15:16:33 +03:00
Anton Bannykh 338bde23fc JS stdlib: run kotlin.test library tests 2018-03-15 17:54:17 +03:00
Ilya Chernikov 6838873a93 Fix local build problem - task compileJava not found
The problem is happening because our plugin deletes the task from
common projects, which may lead to such errors. The proper fix is
planned in our gradle plugin.
2018-03-14 15:39:30 +01:00
Yan Zhulanow 6950c256ce Pill: Replace most of the hardcoded library coordinates with info from Gradle 2018-03-02 03:15:33 +03:00
Ilya Gorbunov 8c8caa4707 kotlin-test: change actual package name for test annotation typealiases
to avoid potential split package situation
2018-02-14 23:50:30 +03:00
Ilya Gorbunov 0f130a0a5a Add documentation for kotlin-test-testng artifact 2018-02-12 08:11:23 +03:00
Ilya Gorbunov 5e3edf4bd7 Select the asserter based on test framework presence in classpath
Simplify asserter lookup: enumerate all AsserterContributors when
the file class with lookupAsserter function is initialized.

It's assumed that AsserterContributor initialization should be fast.

#KT-21154 Fixed
2018-02-12 07:59:54 +03:00
Ilya Gorbunov 9dfa54eb62 Include kotlin-test-testng into dist, setup JDK 7 required to run tests 2018-02-12 07:58:29 +03:00
Ilya Gorbunov d1f00a95e0 Minor: kotlin-test reformat sources, fix test package names 2018-02-12 07:58:28 +03:00
Valeriy Zhirnov ad7701922c TestNG support in kotlin.test #KT-22620 2018-02-12 07:58:21 +03:00
Alexey Tsvetkov 29d2679e8d Do not configure dist task for every published module
This change avoids compiling kotlin-compiler-embeddable,
kotlin-gradle-plugin, and other gradle plugins,
when running `./gradlew dist`
2018-02-01 17:39:55 +03:00
Anton Bannykh ff00831109 JS: minor fixes in kotlin-test-js-it
Jasmine version 2.6.0 doesn't support Promise-based
asynchronous tests.
Also the error message for an unexpected test result was incorrect.
2018-01-19 20:16:31 +03:00
Anton Bannykh 7b0070ea62 Promise-based async integration test for kotlin-test-js 2018-01-17 14:46:13 +03:00
Anton Bannykh 8ed8e05a68 JS: honor ignoreTestFailures flag and report failures to TC (KT-20735
fixed)
2017-12-19 14:38:15 +03:00
Simon Ogorodnik fb3cf212ce Suppress docs for org.junit.Test header in kotlin.test 2017-12-15 20:09:45 +03:00
Anton Bannykh f68d639c63 Add @Target's to kotlin.test annotations 2017-12-15 14:14:00 +03:00
Ilya Gorbunov 5e85f71e48 Improve cover documentation page of kotlin.test library 2017-11-28 18:41:12 +03:00
Anton Bannykh 6d6ce7cbab JS: publish to NPM sourcemaps and *.kjsm files 2017-10-17 13:04:35 +03:00
Ilya Gorbunov f002493218 Multiplatform test annotations
Actual annotations are provided in kotlin-test-junit on JVM side
and in kotlin-test-js on JS side.

#KT-19696
2017-10-15 17:40:53 +03:00
Anton Bannykh 7076fda542 JS: added back integration test for @BeforeTest and @AfterTest annotations
The test was removed in e5cfd198c7 in order
to prevent gradle tests from crashing when running with the old compiler.
2017-10-14 02:16:22 +03:00
Ilya Gorbunov 485ca10b84 Improve failed assertSame/NotSame messages, correct tests 2017-10-13 18:53:52 +03:00
Jake Wharton e611b9a9ba Add assertSame and assertNotSame methods. 2017-10-13 18:53:52 +03:00
Anton Bannykh b839ba5015 JS: correct imports in kotlin.test-js integration test 2017-10-12 15:41:54 +03:00
Anton Bannykh e5cfd198c7 JS: temporarily remove @BeforeTest and @AfterTest checks from integration test until bootstrap compiler supports the annotations. 2017-10-12 14:24:59 +03:00
Anton Bannykh c57b0b4cbc JS: rename @Before to @BeforeTest and @After to @AfterTest for better JUnit compatibility 2017-10-12 14:24:59 +03:00
Dmitry Savvinov fb03656e99 Effects: annotate functions in stdlib with contracts
build.xml was also changed to incorporate contracts in
mock-runtime-for-tests.jar, because it is using Standard.kt, which, in
turn, has contract-annotated functions.

==========
Introduction of EffectSystem: 17/18
2017-10-12 11:55:26 +03:00
Dmitry Petrov 75ad20f823 Build compiler, plugin & stdlib with constructor call normalization
Required as a workaround for Proguard bug
https://sourceforge.net/p/proguard/bugs/664/

When processing bytecode generated by Kotlin compiler for constructor
call with stack spilling during arguments evaluation, ProGuard performs
an equivalent transformation for the bytecode, but emits invalid stack
frame information.
In JVM 1.6, such invalid stack frames are ignored and re-evaluated by
JVM during bytecode verification.
In JVM 1.8, such invalid stack frames cause VerifyError.
2017-10-12 10:59:57 +03:00
Ilya Gorbunov 2d9c4246bd Add explicit constructor to expect annotation 2017-10-11 19:18:30 +03:00
Zalim Bashorov eb1c76ecc4 Make :kotlin-test-js:distJs depends on compileKotlin2Js to avoid running the task too early 2017-10-10 20:19:07 +03:00
Ilya Gorbunov 6fc3f269a6 Change logical path of kotlin-test-js-it project, fix paths to outputs
Fix paths to kotlin-test-js and kotlin-test-js-it outputs
2017-09-20 11:51:43 +02:00
Ilya Chernikov 4b3936b598 Revert to default build dirs, add missing projects 2017-09-20 11:51:28 +02:00
Ilya Chernikov 3caa426b76 Switching library projects to java 8 compilation with exceptions for stdlib/runtime/reflect/test 2017-09-19 21:37:11 +02:00
Stanislav Erokhin 91a99b4726 Migrate impl to actual in libraries projects 2017-09-16 19:47:46 +03:00
Stanislav Erokhin 481cbd0850 Migrate header to expect in libraries projects 2017-09-16 19:47:45 +03:00