Ilya Gorbunov
64996618b3
Suppress signed literals used as unsigned values in stdlib tests
2018-09-04 17:39:51 +03:00
Ilya Gorbunov
009980944b
Refine the exception type of EmptyRange.random()
...
Make it the same type as in case of an empty collection, so that
`emptyRange.random()` throws the same exception as `emptyRange.toList().random()`.
#KT-15539
2018-08-30 16:21:36 +03:00
Ilya Gorbunov
9c412ba436
Fix incorrect range transform in nextUInt/nextULong with range parameter
...
#KT-25570
2018-08-30 16:21:33 +03:00
Ilya Gorbunov
ea2c33a532
Extension random() to select random element from a collection
...
Fixes #KT-15539
2018-08-30 16:21:27 +03:00
Ilya Gorbunov
ea37a65178
copyInto: copying elements between two arrays
...
#KT-25874 Fixed
2018-08-30 16:21:20 +03:00
Ilya Gorbunov
9c4a74ce5b
Improve stability of nextBoolean test
...
Increase number of tosses (according to the Law of Large Numbers).
2018-08-30 16:21:05 +03:00
Ilya Gorbunov
d035c2690a
Random extensions for unsigned: fixes after review
...
#KT-25570
2018-08-30 16:21:01 +03:00
Kerooker
f9dec5e794
Implement extension functions for Random: nextUInt, nextULong and nextUBytes
...
Given there's a Random API in the stdlib, that generates all random primitives, this commit adds the possibility to generate random unsigned integers.
It uses the same implementation from Random.nextInt, nextLong and nextBytes, but uses the appropriate conversions from a signed type to an unsigned type.
The use of the same API guarantees that the distribution is uniform, but this commit adds some unit test to enforce that necessity.
Fixes #KT-25570
2018-08-30 16:20:58 +03:00
Ilya Gorbunov
d99f97ad96
Support '+' in front of parsed unsigned string values
...
#KT-26161
2018-08-30 14:58:37 +03:00
Ilya Gorbunov
2530a8e98c
Provide unsigned string to number conversion in arbitrary base
...
#KT-26161
2018-08-30 14:58:35 +03:00
Ilya Gorbunov
c1d1a7108f
Provide unsigned number to string conversion in arbitrary base
...
#KT-26161
2018-08-30 14:58:33 +03:00
Ilya Gorbunov
abdd971d92
More contentHashCode tests for arrays
2018-08-30 14:58:28 +03:00
Ilya Gorbunov
4df665bc78
Generate extensions for unsigned arrays and provide tests for them
...
- contentEquals, contentToString, contentHashCode
- as[Signed]Array, as[Unsigned]Array
- to[Signed]Array, to[Unsigned]Array
- toTypedArray
- copyOf(), copyOf(newSize), copyOfRange(...)
2018-08-30 14:58:26 +03:00
Ilya Gorbunov
3d2eb36486
Generate until, downTo, step, reversed functions for unsigned ranges/progressions
2018-08-30 14:58:20 +03:00
Ilya Gorbunov
f367322084
Introduce associateWith and associateWithTo functions
...
#KT-13814
2018-08-30 14:58:14 +03:00
Ilya Gorbunov
c44f62a3d4
Allow dropping and taking a lot of elements in very long sequences
...
For example allow dropping and taking Int.MAX_VALUE elements from
a sequence that is a result of another Int.MAX_VALUE dropping.
2018-08-30 14:57:03 +03:00
Ilya Gorbunov
2df78fc81a
Introduce common ArithmeticException
...
Make divisionByZero test still fail in JS after introducing ArithmeticException
2018-08-30 14:56:59 +03:00
Ilya Gorbunov
f9479d12f9
Add missing unsigned array constructors (from size)
...
#KT-25961 Fixed
2018-08-30 14:56:51 +03:00
Ilya Gorbunov
5412227380
Unify Regex.split behavior in JVM, JS regarding empty match delimiters
...
Rewrite split implementation for JVM
#KT-21049
2018-08-30 14:56:31 +03:00
Ilya Gorbunov
85af1f5d38
Improve argument validation in copyOfRange
...
Make copyOfRange implementation non-inline in order not to expose
copyOfRangeToIndexCheck implementation detail.
It will be possible to make the function non-inline itself later without
that JvmName trick, when apiVersion 1.2 support is discontinued.
#KT-19489
2018-08-30 14:56:29 +03:00
Ilya Gorbunov
58a3b64baf
Add argument validation in copyOf(newSize) in JS
...
#KT-19489
2018-08-30 14:56:27 +03:00
Ilya Gorbunov
1b1713a849
Simplify long constants in range iteration tests
2018-08-30 14:56:19 +03:00
Ilya Gorbunov
1dbaaf7f8a
Begin test coverage for unsigned ranges and progressions
2018-08-30 14:56:15 +03:00
Ilya Gorbunov
f010231ff7
Change range iteration tests so they are runnable on all platforms
...
Remove JS and Native backend exclusions
2018-08-30 14:56:13 +03:00
Ilya Gorbunov
b68c27178d
Do not use MIN_VALUE step in tests
...
#KT-17176
2018-08-30 14:56:06 +03:00
Ilya Gorbunov
7dc6c3d7ce
Prohibit MIN_VALUE step for unsigned progressions
2018-08-30 14:56:04 +03:00
Pap Lőrinc
bdf623f711
Prohibit step size of min value, as it doesn't have a negated counterpart
...
#KT-17176
2018-08-30 14:56:00 +03:00
Ilya Gorbunov
8f6d2b70a9
Add stdlib test for Boolean companion
2018-08-30 14:55:48 +03:00
Ilya Gorbunov
5f3a7f0147
Use Char.MIN_VALUE and MAX_VALUE in tests
2018-08-30 14:55:45 +03:00
Ilya Gorbunov
92e149fa40
Add tests for SIZE_BYTES and SIZE_BITS constants
...
#KT-8247 Fixed
2018-08-30 14:55:43 +03:00
Ilya Gorbunov
fa2f1311d7
Add tests for UInt, ULong
...
Opt-in to use unsigned types in tests
2018-08-30 14:55:41 +03:00
Ilya Gorbunov
db7f4bb402
Deprecate js Math.random and provide replacement with Random.nextDouble
...
#KT-23564 Fixed
2018-08-30 14:52:47 +03:00
Toshiaki Kameyama
c4b785de36
Add Sequence.orEmpty #KT-16552 Fixed
2018-08-30 14:50:54 +03:00
Ilya Gorbunov
b96803248f
Write random contract tests and fix implementations to pass them
2018-08-30 14:50:48 +03:00
Ilya Gorbunov
ed1f869354
Add xorwow random implementation test and fix implementation
2018-08-30 14:50:46 +03:00
Ilya Gorbunov
7e4528e217
Common shuffle/shuffled with the specified random source
...
KT-17261, KT-9010
2018-08-30 14:50:38 +03:00
Ilya Gorbunov
bbee18b84d
Introduce StringBuilder.clear() extension
...
#KT-18910 Fixed
2018-08-30 14:50:29 +03:00
Ilya Gorbunov
ed53983e1e
Add support for CASE_INSENSITIVE_ORDER in JS and common
...
#KT-18067
2018-08-15 21:28:54 +03:00
Ilya Gorbunov
6866f5d19a
Move test and cover more cases of string comparison
...
#KT-18067
2018-08-15 21:28:50 +03:00
Toshiaki Kameyama
f05a19aafb
JS stdlib: implement String.compareTo with ignoreCase
...
#KT-18067 Fixed
2018-08-15 21:28:44 +03:00
Ilya Gorbunov
be8cb94105
Add failing tests for overflow in empty progressions KT-24204
2018-07-09 22:08:01 +03:00
Ilya Gorbunov
cbc3480d9e
Split common builtin companion tests from JVM-only tests
...
Remove duplicated tests from NumbersJVMTest.
2018-07-03 19:58:53 +03:00
Neonailol
ede2e227c2
KT-23356 Cross-platform function to convert CharArray slice to String
...
Signed-off-by: Valeriy Zhirnov <neonailol@gmail.com >
2018-05-26 06:06:53 +03:00
Florian Steitz
8453ed1803
[KT-10456] Move tests from StringNumberConversionJVMTest to StringNumberConversionTest
2018-05-11 15:42:11 +03:00
Ilya Gorbunov
ecf0d7ec0d
Reformat stdlib tests and samples
...
#KT-5558
2018-04-27 05:28:57 +03:00
Ilya Gorbunov
e21c235bbb
Add or update copyrights in the standard library sources
2018-04-26 21:57:50 +03:00
Ilya Gorbunov
f7546c809d
Minor: use common implementation of doubleTotalOrderEquals for tests
2018-04-12 17:53:00 +03:00
Ilya Gorbunov
9b38e5e7b5
stdlib tests: move JVM-only test source files
2018-04-12 17:53:00 +03:00
Ilya Gorbunov
ba873e2b46
stdlib tests: provide expect/actual helper functions
2018-04-12 17:53:00 +03:00
Anton Bannykh
f8c0c54a66
Revert "Clean up test skips after KT-17137"
...
This reverts commit 715d5e9
2018-04-10 20:45:07 +03:00