From 7e2d5b04ded015a1488600cf89613d0d2b56e6d7 Mon Sep 17 00:00:00 2001 From: Alexey Andreev Date: Tue, 30 Aug 2016 13:59:50 +0300 Subject: [PATCH] JS: move more test to box tests --- .../js/test/semantics/BoxJsTestGenerated.java | 336 ++++++++++++++++++ .../kotlin/js/test/semantics/ObjectTest.java | 70 ---- .../js/test/semantics/PropertyAccessTest.java | 118 ------ .../test/semantics/PropertyOverrideTest.java | 70 ---- .../kotlin/js/test/semantics/RangeTest.java | 68 ---- .../objectDeclaration}/dontPolluteObject.kt | 0 .../cases => box/objectDeclaration}/kt3684.kt | 0 .../lambdaInObjectInsideObject.kt | 0 .../objectDeclaration/objectDeclaration.kt | 25 ++ .../objectDeclarationWithVars.kt | 12 + .../objectDeclaration}/objectInMethod.kt | 4 +- .../objectDeclaration}/objectInObject.kt | 0 .../objectInObjectWithClosure.kt | 6 +- .../objectInheritingFromATrait.kt | 6 +- .../objectInheritingFromClass.kt | 2 +- .../objectDeclaration}/objectWithMethods.kt | 10 +- .../accessToInstanceProperty.kt | 4 +- .../classUsesPackageProperties.kt | 4 +- .../propertyAccess}/customGetter.kt | 4 +- .../propertyAccess}/customSetter.kt | 4 +- .../testData/box/propertyAccess/enumerable.kt | 49 +++ .../extensionLiteralSafeCall.kt | 8 +- .../cases => box/propertyAccess}/field.kt | 0 .../propertyAccess/initInstanceProperties.kt | 16 + .../propertyAccess}/initValInConstructor.kt | 0 .../nativePropertiesNameClashes.kt | 0 ...verloadedOverriddenFunctionPropertyName.kt | 6 +- .../propertyAccess}/packageCustomAccessors.kt | 4 +- .../packagePropertyInitializer.kt | 5 + .../box/propertyAccess/packagePropertySet.kt | 8 + .../privatePropertyAccessFromMethod.kt | 0 .../propertyAccess}/propertyAssignment.kt | 0 .../cases => box/propertyAccess}/setter.kt | 0 .../twoClassesWithProperties.kt | 16 + .../propertyOverride}/checkSupertypeOrder.kt | 0 .../initOverrideInConstructor.kt | 0 .../initOverrideInConstructorComplex.kt | 0 .../initOverrideInConstructorExplicitThis.kt | 0 .../initOverrideVarInConstructor.kt | 0 .../propertyOverride}/overloadPrivateVal.kt | 0 .../overrideExtensionProperty.kt | 0 .../overrideNotDirectlySuper.kt | 0 .../overrideValFromTraits.kt | 0 .../overrideValWithBackendFiled.kt | 0 .../propertyOverride}/simpleOverride.kt | 0 .../range}/creatingProgressions.kt | 4 +- .../testData/box/range/explicitRange.kt | 27 ++ .../{range/cases => box/range}/intDownTo.kt | 0 .../testData/box/range/intInRange.kt | 14 + .../testData/box/range/intUpTo.kt | 18 + .../range}/iteratingOverRanges.kt | 12 +- .../testData/box/range/rangeEquals.kt | 12 + .../testData/box/range/rangeSugarSyntax.kt | 27 ++ .../range}/rangeToDoesNotIterate.kt | 6 +- .../{range/cases => box/range}/reverse.kt | 0 .../object/cases/objectDeclaration.kt | 28 -- .../object/cases/objectDeclarationWithVars.kt | 12 - .../propertyAccess/cases/enumerable.kt | 26 -- .../cases/initInstanceProperties.kt | 12 - .../cases/packagePropertyInitializer.kt | 5 - .../cases/packagePropertySet.kt | 8 - .../cases/twoClassesWithProperties.kt | 13 - .../testData/propertyAccess/enumerate.js | 13 - .../testData/range/cases/explicitRange.kt | 28 -- .../testData/range/cases/intInRange.kt | 14 - .../testData/range/cases/intUpTo.kt | 11 - .../testData/range/cases/rangeEquals.kt | 12 - .../testData/range/cases/rangeSugarSyntax.kt | 28 -- 68 files changed, 607 insertions(+), 578 deletions(-) delete mode 100644 js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/ObjectTest.java delete mode 100644 js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/PropertyAccessTest.java delete mode 100644 js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/PropertyOverrideTest.java delete mode 100644 js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/RangeTest.java rename js/js.translator/testData/{object/cases => box/objectDeclaration}/dontPolluteObject.kt (100%) rename js/js.translator/testData/{object/cases => box/objectDeclaration}/kt3684.kt (100%) rename js/js.translator/testData/{object/cases => box/objectDeclaration}/lambdaInObjectInsideObject.kt (100%) create mode 100644 js/js.translator/testData/box/objectDeclaration/objectDeclaration.kt create mode 100644 js/js.translator/testData/box/objectDeclaration/objectDeclarationWithVars.kt rename js/js.translator/testData/{object/cases => box/objectDeclaration}/objectInMethod.kt (69%) rename js/js.translator/testData/{object/cases => box/objectDeclaration}/objectInObject.kt (100%) rename js/js.translator/testData/{object/cases => box/objectDeclaration}/objectInObjectWithClosure.kt (68%) rename js/js.translator/testData/{object/cases => box/objectDeclaration}/objectInheritingFromATrait.kt (82%) rename js/js.translator/testData/{object/cases => box/objectDeclaration}/objectInheritingFromClass.kt (57%) rename js/js.translator/testData/{object/cases => box/objectDeclaration}/objectWithMethods.kt (63%) rename js/js.translator/testData/{propertyAccess/cases => box/propertyAccess}/accessToInstanceProperty.kt (54%) rename js/js.translator/testData/{propertyAccess/cases => box/propertyAccess}/classUsesPackageProperties.kt (63%) rename js/js.translator/testData/{propertyAccess/cases => box/propertyAccess}/customGetter.kt (60%) rename js/js.translator/testData/{propertyAccess/cases => box/propertyAccess}/customSetter.kt (65%) create mode 100644 js/js.translator/testData/box/propertyAccess/enumerable.kt rename js/js.translator/testData/{propertyAccess/cases => box/propertyAccess}/extensionLiteralSafeCall.kt (62%) rename js/js.translator/testData/{propertyAccess/cases => box/propertyAccess}/field.kt (100%) create mode 100644 js/js.translator/testData/box/propertyAccess/initInstanceProperties.kt rename js/js.translator/testData/{propertyAccess/cases => box/propertyAccess}/initValInConstructor.kt (100%) rename js/js.translator/testData/{propertyAccess/cases => box/propertyAccess}/nativePropertiesNameClashes.kt (100%) rename js/js.translator/testData/{propertyAccess/cases => box/propertyAccess}/overloadedOverriddenFunctionPropertyName.kt (68%) rename js/js.translator/testData/{propertyAccess/cases => box/propertyAccess}/packageCustomAccessors.kt (56%) create mode 100644 js/js.translator/testData/box/propertyAccess/packagePropertyInitializer.kt create mode 100644 js/js.translator/testData/box/propertyAccess/packagePropertySet.kt rename js/js.translator/testData/{propertyAccess/cases => box/propertyAccess}/privatePropertyAccessFromMethod.kt (100%) rename js/js.translator/testData/{propertyAccess/cases => box/propertyAccess}/propertyAssignment.kt (100%) rename js/js.translator/testData/{propertyAccess/cases => box/propertyAccess}/setter.kt (100%) create mode 100644 js/js.translator/testData/box/propertyAccess/twoClassesWithProperties.kt rename js/js.translator/testData/{propertyOverride/cases => box/propertyOverride}/checkSupertypeOrder.kt (100%) rename js/js.translator/testData/{propertyOverride/cases => box/propertyOverride}/initOverrideInConstructor.kt (100%) rename js/js.translator/testData/{propertyOverride/cases => box/propertyOverride}/initOverrideInConstructorComplex.kt (100%) rename js/js.translator/testData/{propertyOverride/cases => box/propertyOverride}/initOverrideInConstructorExplicitThis.kt (100%) rename js/js.translator/testData/{propertyOverride/cases => box/propertyOverride}/initOverrideVarInConstructor.kt (100%) rename js/js.translator/testData/{propertyOverride/cases => box/propertyOverride}/overloadPrivateVal.kt (100%) rename js/js.translator/testData/{propertyOverride/cases => box/propertyOverride}/overrideExtensionProperty.kt (100%) rename js/js.translator/testData/{propertyOverride/cases => box/propertyOverride}/overrideNotDirectlySuper.kt (100%) rename js/js.translator/testData/{propertyOverride/cases => box/propertyOverride}/overrideValFromTraits.kt (100%) rename js/js.translator/testData/{propertyOverride/cases => box/propertyOverride}/overrideValWithBackendFiled.kt (100%) rename js/js.translator/testData/{propertyOverride/cases => box/propertyOverride}/simpleOverride.kt (100%) rename js/js.translator/testData/{range/cases => box/range}/creatingProgressions.kt (91%) create mode 100644 js/js.translator/testData/box/range/explicitRange.kt rename js/js.translator/testData/{range/cases => box/range}/intDownTo.kt (100%) create mode 100644 js/js.translator/testData/box/range/intInRange.kt create mode 100644 js/js.translator/testData/box/range/intUpTo.kt rename js/js.translator/testData/{range/cases => box/range}/iteratingOverRanges.kt (65%) create mode 100644 js/js.translator/testData/box/range/rangeEquals.kt create mode 100644 js/js.translator/testData/box/range/rangeSugarSyntax.kt rename js/js.translator/testData/{range/cases => box/range}/rangeToDoesNotIterate.kt (57%) rename js/js.translator/testData/{range/cases => box/range}/reverse.kt (100%) delete mode 100644 js/js.translator/testData/object/cases/objectDeclaration.kt delete mode 100644 js/js.translator/testData/object/cases/objectDeclarationWithVars.kt delete mode 100644 js/js.translator/testData/propertyAccess/cases/enumerable.kt delete mode 100644 js/js.translator/testData/propertyAccess/cases/initInstanceProperties.kt delete mode 100644 js/js.translator/testData/propertyAccess/cases/packagePropertyInitializer.kt delete mode 100644 js/js.translator/testData/propertyAccess/cases/packagePropertySet.kt delete mode 100644 js/js.translator/testData/propertyAccess/cases/twoClassesWithProperties.kt delete mode 100644 js/js.translator/testData/propertyAccess/enumerate.js delete mode 100644 js/js.translator/testData/range/cases/explicitRange.kt delete mode 100644 js/js.translator/testData/range/cases/intInRange.kt delete mode 100644 js/js.translator/testData/range/cases/intUpTo.kt delete mode 100644 js/js.translator/testData/range/cases/rangeEquals.kt delete mode 100644 js/js.translator/testData/range/cases/rangeSugarSyntax.kt diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/BoxJsTestGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/BoxJsTestGenerated.java index 1f3c5a6eb47..019dfb9412d 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/BoxJsTestGenerated.java +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/BoxJsTestGenerated.java @@ -5243,6 +5243,81 @@ public class BoxJsTestGenerated extends AbstractBoxJsTest { } } + @TestMetadata("js/js.translator/testData/box/objectDeclaration") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class ObjectDeclaration extends AbstractBoxJsTest { + public void testAllFilesPresentInObjectDeclaration() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("js/js.translator/testData/box/objectDeclaration"), Pattern.compile("^([^_](.+))\\.kt$"), true); + } + + @TestMetadata("dontPolluteObject.kt") + public void testDontPolluteObject() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/objectDeclaration/dontPolluteObject.kt"); + doTest(fileName); + } + + @TestMetadata("kt3684.kt") + public void testKt3684() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/objectDeclaration/kt3684.kt"); + doTest(fileName); + } + + @TestMetadata("lambdaInObjectInsideObject.kt") + public void testLambdaInObjectInsideObject() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/objectDeclaration/lambdaInObjectInsideObject.kt"); + doTest(fileName); + } + + @TestMetadata("objectDeclaration.kt") + public void testObjectDeclaration() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/objectDeclaration/objectDeclaration.kt"); + doTest(fileName); + } + + @TestMetadata("objectDeclarationWithVars.kt") + public void testObjectDeclarationWithVars() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/objectDeclaration/objectDeclarationWithVars.kt"); + doTest(fileName); + } + + @TestMetadata("objectInMethod.kt") + public void testObjectInMethod() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/objectDeclaration/objectInMethod.kt"); + doTest(fileName); + } + + @TestMetadata("objectInObject.kt") + public void testObjectInObject() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/objectDeclaration/objectInObject.kt"); + doTest(fileName); + } + + @TestMetadata("objectInObjectWithClosure.kt") + public void testObjectInObjectWithClosure() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/objectDeclaration/objectInObjectWithClosure.kt"); + doTest(fileName); + } + + @TestMetadata("objectInheritingFromATrait.kt") + public void testObjectInheritingFromATrait() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/objectDeclaration/objectInheritingFromATrait.kt"); + doTest(fileName); + } + + @TestMetadata("objectInheritingFromClass.kt") + public void testObjectInheritingFromClass() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/objectDeclaration/objectInheritingFromClass.kt"); + doTest(fileName); + } + + @TestMetadata("objectWithMethods.kt") + public void testObjectWithMethods() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/objectDeclaration/objectWithMethods.kt"); + doTest(fileName); + } + } + @TestMetadata("js/js.translator/testData/box/operatorOverloading") @TestDataPath("$PROJECT_ROOT") @RunWith(JUnit3RunnerWithInners.class) @@ -5383,4 +5458,265 @@ public class BoxJsTestGenerated extends AbstractBoxJsTest { doTest(fileName); } } + + @TestMetadata("js/js.translator/testData/box/propertyAccess") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class PropertyAccess extends AbstractBoxJsTest { + @TestMetadata("accessToInstanceProperty.kt") + public void testAccessToInstanceProperty() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/accessToInstanceProperty.kt"); + doTest(fileName); + } + + public void testAllFilesPresentInPropertyAccess() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("js/js.translator/testData/box/propertyAccess"), Pattern.compile("^([^_](.+))\\.kt$"), true); + } + + @TestMetadata("classUsesPackageProperties.kt") + public void testClassUsesPackageProperties() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/classUsesPackageProperties.kt"); + doTest(fileName); + } + + @TestMetadata("customGetter.kt") + public void testCustomGetter() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/customGetter.kt"); + doTest(fileName); + } + + @TestMetadata("customSetter.kt") + public void testCustomSetter() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/customSetter.kt"); + doTest(fileName); + } + + @TestMetadata("enumerable.kt") + public void testEnumerable() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/enumerable.kt"); + doTest(fileName); + } + + @TestMetadata("extensionLiteralSafeCall.kt") + public void testExtensionLiteralSafeCall() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/extensionLiteralSafeCall.kt"); + doTest(fileName); + } + + @TestMetadata("field.kt") + public void testField() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/field.kt"); + doTest(fileName); + } + + @TestMetadata("initInstanceProperties.kt") + public void testInitInstanceProperties() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/initInstanceProperties.kt"); + doTest(fileName); + } + + @TestMetadata("initValInConstructor.kt") + public void testInitValInConstructor() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/initValInConstructor.kt"); + doTest(fileName); + } + + @TestMetadata("nativePropertiesNameClashes.kt") + public void testNativePropertiesNameClashes() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/nativePropertiesNameClashes.kt"); + doTest(fileName); + } + + @TestMetadata("overloadedOverriddenFunctionPropertyName.kt") + public void testOverloadedOverriddenFunctionPropertyName() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/overloadedOverriddenFunctionPropertyName.kt"); + doTest(fileName); + } + + @TestMetadata("packageCustomAccessors.kt") + public void testPackageCustomAccessors() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/packageCustomAccessors.kt"); + doTest(fileName); + } + + @TestMetadata("packagePropertyInitializer.kt") + public void testPackagePropertyInitializer() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/packagePropertyInitializer.kt"); + doTest(fileName); + } + + @TestMetadata("packagePropertySet.kt") + public void testPackagePropertySet() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/packagePropertySet.kt"); + doTest(fileName); + } + + @TestMetadata("privatePropertyAccessFromMethod.kt") + public void testPrivatePropertyAccessFromMethod() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/privatePropertyAccessFromMethod.kt"); + doTest(fileName); + } + + @TestMetadata("propertyAssignment.kt") + public void testPropertyAssignment() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/propertyAssignment.kt"); + doTest(fileName); + } + + @TestMetadata("setter.kt") + public void testSetter() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/setter.kt"); + doTest(fileName); + } + + @TestMetadata("twoClassesWithProperties.kt") + public void testTwoClassesWithProperties() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyAccess/twoClassesWithProperties.kt"); + doTest(fileName); + } + } + + @TestMetadata("js/js.translator/testData/box/propertyOverride") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class PropertyOverride extends AbstractBoxJsTest { + public void testAllFilesPresentInPropertyOverride() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("js/js.translator/testData/box/propertyOverride"), Pattern.compile("^([^_](.+))\\.kt$"), true); + } + + @TestMetadata("checkSupertypeOrder.kt") + public void testCheckSupertypeOrder() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyOverride/checkSupertypeOrder.kt"); + doTest(fileName); + } + + @TestMetadata("initOverrideInConstructor.kt") + public void testInitOverrideInConstructor() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyOverride/initOverrideInConstructor.kt"); + doTest(fileName); + } + + @TestMetadata("initOverrideInConstructorComplex.kt") + public void testInitOverrideInConstructorComplex() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyOverride/initOverrideInConstructorComplex.kt"); + doTest(fileName); + } + + @TestMetadata("initOverrideInConstructorExplicitThis.kt") + public void testInitOverrideInConstructorExplicitThis() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyOverride/initOverrideInConstructorExplicitThis.kt"); + doTest(fileName); + } + + @TestMetadata("initOverrideVarInConstructor.kt") + public void testInitOverrideVarInConstructor() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyOverride/initOverrideVarInConstructor.kt"); + doTest(fileName); + } + + @TestMetadata("overloadPrivateVal.kt") + public void testOverloadPrivateVal() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyOverride/overloadPrivateVal.kt"); + doTest(fileName); + } + + @TestMetadata("overrideExtensionProperty.kt") + public void testOverrideExtensionProperty() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyOverride/overrideExtensionProperty.kt"); + doTest(fileName); + } + + @TestMetadata("overrideNotDirectlySuper.kt") + public void testOverrideNotDirectlySuper() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyOverride/overrideNotDirectlySuper.kt"); + doTest(fileName); + } + + @TestMetadata("overrideValFromTraits.kt") + public void testOverrideValFromTraits() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyOverride/overrideValFromTraits.kt"); + doTest(fileName); + } + + @TestMetadata("overrideValWithBackendFiled.kt") + public void testOverrideValWithBackendFiled() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyOverride/overrideValWithBackendFiled.kt"); + doTest(fileName); + } + + @TestMetadata("simpleOverride.kt") + public void testSimpleOverride() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/propertyOverride/simpleOverride.kt"); + doTest(fileName); + } + } + + @TestMetadata("js/js.translator/testData/box/range") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Range extends AbstractBoxJsTest { + public void testAllFilesPresentInRange() throws Exception { + KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("js/js.translator/testData/box/range"), Pattern.compile("^([^_](.+))\\.kt$"), true); + } + + @TestMetadata("creatingProgressions.kt") + public void testCreatingProgressions() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/range/creatingProgressions.kt"); + doTest(fileName); + } + + @TestMetadata("explicitRange.kt") + public void testExplicitRange() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/range/explicitRange.kt"); + doTest(fileName); + } + + @TestMetadata("intDownTo.kt") + public void testIntDownTo() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/range/intDownTo.kt"); + doTest(fileName); + } + + @TestMetadata("intInRange.kt") + public void testIntInRange() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/range/intInRange.kt"); + doTest(fileName); + } + + @TestMetadata("intUpTo.kt") + public void testIntUpTo() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/range/intUpTo.kt"); + doTest(fileName); + } + + @TestMetadata("iteratingOverRanges.kt") + public void testIteratingOverRanges() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/range/iteratingOverRanges.kt"); + doTest(fileName); + } + + @TestMetadata("rangeEquals.kt") + public void testRangeEquals() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/range/rangeEquals.kt"); + doTest(fileName); + } + + @TestMetadata("rangeSugarSyntax.kt") + public void testRangeSugarSyntax() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/range/rangeSugarSyntax.kt"); + doTest(fileName); + } + + @TestMetadata("rangeToDoesNotIterate.kt") + public void testRangeToDoesNotIterate() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/range/rangeToDoesNotIterate.kt"); + doTest(fileName); + } + + @TestMetadata("reverse.kt") + public void testReverse() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("js/js.translator/testData/box/range/reverse.kt"); + doTest(fileName); + } + } } diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/ObjectTest.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/ObjectTest.java deleted file mode 100644 index 177256ca54b..00000000000 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/ObjectTest.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright 2010-2016 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jetbrains.kotlin.js.test.semantics; - -import org.jetbrains.kotlin.js.test.SingleFileTranslationTest; - -public final class ObjectTest extends SingleFileTranslationTest { - - public ObjectTest() { - super("object/"); - } - - public void testObjectWithMethods() throws Exception { - fooBoxTest(); - } - - public void testObjectDeclaration() throws Exception { - fooBoxTest(); - } - - public void testObjectDeclarationWithVars() throws Exception { - fooBoxTest(); - } - - public void testObjectInMethod() throws Exception { - fooBoxTest(); - } - - public void testObjectInObject() throws Exception { - checkFooBoxIsOk(); - } - - public void testObjectInheritingFromATrait() throws Exception { - fooBoxTest(); - } - - public void testObjectInheritingFromClass() throws Exception { - fooBoxTest(); - } - - public void testObjectInObjectWithClosure() throws Exception { - fooBoxTest(); - } - - public void testLambdaInObjectInsideObject() throws Exception { - checkFooBoxIsOk(); - } - - public void testDontPolluteObject() throws Exception { - checkFooBoxIsOk(); - } - - public void testKt3684() throws Exception { - checkFooBoxIsOk(); - } -} diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/PropertyAccessTest.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/PropertyAccessTest.java deleted file mode 100644 index b4c8c33094f..00000000000 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/PropertyAccessTest.java +++ /dev/null @@ -1,118 +0,0 @@ -/* - * Copyright 2010-2015 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jetbrains.kotlin.js.test.semantics; - -import com.google.common.collect.Lists; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.kotlin.js.config.EcmaVersion; -import org.jetbrains.kotlin.js.test.SingleFileTranslationTest; - -import java.util.List; - -public final class PropertyAccessTest extends SingleFileTranslationTest { - - public PropertyAccessTest() { - super("propertyAccess/"); - } - - public void testAccessToInstanceProperty() throws Exception { - fooBoxTest(); - } - - - public void testTwoClassesWithProperties() throws Exception { - fooBoxTest(); - } - - public void testSetter() throws Exception { - checkFooBoxIsOk(); - } - - - public void testCustomGetter() throws Exception { - fooBoxTest(); - } - - - public void testCustomSetter() throws Exception { - fooBoxTest(); - } - - public void testPackagePropertyInitializer() throws Exception { - fooBoxTest(); - } - - - public void testPackagePropertySet() throws Exception { - fooBoxTest(); - } - - public void testPackageCustomAccessors() throws Exception { - fooBoxTest(); - } - - - public void testClassUsesPackageProperties() throws Exception { - fooBoxTest(); - } - - public void testExtensionLiteralSafeCall() throws Exception { - fooBoxTest(); - } - - public void testInitInstanceProperties() throws Exception { - fooBoxTest(); - } - - public void testInitValInConstructor() throws Exception { - checkFooBoxIsOk(); - } - - public void testEnumerable() throws Exception { - fooBoxTest(); - } - - public void testOverloadedOverriddenFunctionPropertyName() throws Exception { - fooBoxTest(); - } - - public void testNativePropertiesNameClashes() throws Exception { - checkFooBoxIsOk(); - } - - public void testField() throws Exception { - checkFooBoxIsOk(); - } - - public void testPropertyAssignment() throws Exception { - checkFooBoxIsOk(); - } - - public void testPrivatePropertyAccessFromMethod() throws Exception { - checkFooBoxIsOk(); - } - - @Override - @NotNull - protected List additionalJsFiles(@NotNull EcmaVersion ecmaVersion) { - List result = Lists.newArrayList(super.additionalJsFiles(ecmaVersion)); - if (getName().equals("testEnumerable")) { - result.add(pathToTestDir() + "enumerate.js"); - } - return result; - } -} diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/PropertyOverrideTest.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/PropertyOverrideTest.java deleted file mode 100644 index 16abd0e20ae..00000000000 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/PropertyOverrideTest.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright 2010-2015 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jetbrains.kotlin.js.test.semantics; - -import org.jetbrains.kotlin.js.test.SingleFileTranslationTest; - -public class PropertyOverrideTest extends SingleFileTranslationTest { - - public PropertyOverrideTest() { - super("propertyOverride/"); - } - - public void testOverrideValWithBackendFiled() throws Exception { - checkFooBoxIsOk(); - } - - public void testSimpleOverride() throws Exception { - checkFooBoxIsOk(); - } - - public void testOverloadPrivateVal() throws Exception { - checkFooBoxIsOk(); - } - - public void testOverrideValFromTraits() throws Exception { - checkFooBoxIsOk(); - } - - public void testCheckSupertypeOrder() throws Exception { - checkFooBoxIsOk(); - } - - public void testOverrideNotDirectlySuper() throws Exception { - checkFooBoxIsOk(); - } - - public void testOverrideExtensionProperty() throws Exception { - checkFooBoxIsOk(); - } - - public void testInitOverrideInConstructor() throws Exception { - checkFooBoxIsOk(); - } - - public void testInitOverrideInConstructorExplicitThis() throws Exception { - checkFooBoxIsOk(); - } - - public void testInitOverrideInConstructorComplex() throws Exception { - checkFooBoxIsOk(); - } - - public void testInitOverrideVarInConstructor() throws Exception { - checkFooBoxIsOk(); - } -} diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/RangeTest.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/RangeTest.java deleted file mode 100644 index 78ac985b643..00000000000 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/RangeTest.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright 2010-2015 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jetbrains.kotlin.js.test.semantics; - -import org.jetbrains.kotlin.js.test.SingleFileTranslationTest; - -public final class RangeTest extends SingleFileTranslationTest { - - public RangeTest() { - super("range/"); - } - - public void testCreatingProgressions() throws Exception { - fooBoxTest(); - } - - public void testExplicitRange() throws Exception { - fooBoxTest(); - } - - - public void testRangeSugarSyntax() throws Exception { - fooBoxTest(); - } - - - public void testIntInRange() throws Exception { - fooBoxTest(); - } - - public void testIteratingOverRanges() throws Exception { - fooBoxTest(); - } - - public void testIntUpTo() throws Exception { - fooBoxTest(); - } - - public void testRangeToDoesNotIterate() throws Exception { - fooBoxTest(); - } - - public void testRangeEquals() throws Exception { - checkFooBoxIsOk(); - } - - public void testIntDownTo() throws Exception { - checkFooBoxIsOk(); - } - - public void testReverse() throws Exception { - checkFooBoxIsOk(); - } -} diff --git a/js/js.translator/testData/object/cases/dontPolluteObject.kt b/js/js.translator/testData/box/objectDeclaration/dontPolluteObject.kt similarity index 100% rename from js/js.translator/testData/object/cases/dontPolluteObject.kt rename to js/js.translator/testData/box/objectDeclaration/dontPolluteObject.kt diff --git a/js/js.translator/testData/object/cases/kt3684.kt b/js/js.translator/testData/box/objectDeclaration/kt3684.kt similarity index 100% rename from js/js.translator/testData/object/cases/kt3684.kt rename to js/js.translator/testData/box/objectDeclaration/kt3684.kt diff --git a/js/js.translator/testData/object/cases/lambdaInObjectInsideObject.kt b/js/js.translator/testData/box/objectDeclaration/lambdaInObjectInsideObject.kt similarity index 100% rename from js/js.translator/testData/object/cases/lambdaInObjectInsideObject.kt rename to js/js.translator/testData/box/objectDeclaration/lambdaInObjectInsideObject.kt diff --git a/js/js.translator/testData/box/objectDeclaration/objectDeclaration.kt b/js/js.translator/testData/box/objectDeclaration/objectDeclaration.kt new file mode 100644 index 00000000000..e2c35339e92 --- /dev/null +++ b/js/js.translator/testData/box/objectDeclaration/objectDeclaration.kt @@ -0,0 +1,25 @@ +package foo + +class A { + +} + +object test { + var c = 2; + var b = 1; +} + +object aWrapper { + var a = A(); +} + +fun box(): String { + if (test.c != 2) return "fail1: ${test.c}" + + if (test.b != 1) return "fail2: ${test.b}" + test.c += 10 + if (test.c != 12) "fail3: ${test.c}" + if (aWrapper.a !is A) "fail4" + + return "OK" +} \ No newline at end of file diff --git a/js/js.translator/testData/box/objectDeclaration/objectDeclarationWithVars.kt b/js/js.translator/testData/box/objectDeclaration/objectDeclarationWithVars.kt new file mode 100644 index 00000000000..4ae2102f979 --- /dev/null +++ b/js/js.translator/testData/box/objectDeclaration/objectDeclarationWithVars.kt @@ -0,0 +1,12 @@ +package foo + +object State { + val c = 2 + val b = 1 +} + +fun box(): String { + if (State.c != 2) return "fail1: ${State.c}" + if (State.b != 1) return "fail2: ${State.b}" + return "OK" +} \ No newline at end of file diff --git a/js/js.translator/testData/object/cases/objectInMethod.kt b/js/js.translator/testData/box/objectDeclaration/objectInMethod.kt similarity index 69% rename from js/js.translator/testData/object/cases/objectInMethod.kt rename to js/js.translator/testData/box/objectDeclaration/objectInMethod.kt index b87be60051a..ec2334fe5b1 100644 --- a/js/js.translator/testData/object/cases/objectInMethod.kt +++ b/js/js.translator/testData/box/objectDeclaration/objectInMethod.kt @@ -1,9 +1,9 @@ package foo class A() { - fun f(): Boolean { + fun f(): String { val z = object { - val c = true + val c = "OK" } return z.c } diff --git a/js/js.translator/testData/object/cases/objectInObject.kt b/js/js.translator/testData/box/objectDeclaration/objectInObject.kt similarity index 100% rename from js/js.translator/testData/object/cases/objectInObject.kt rename to js/js.translator/testData/box/objectDeclaration/objectInObject.kt diff --git a/js/js.translator/testData/object/cases/objectInObjectWithClosure.kt b/js/js.translator/testData/box/objectDeclaration/objectInObjectWithClosure.kt similarity index 68% rename from js/js.translator/testData/object/cases/objectInObjectWithClosure.kt rename to js/js.translator/testData/box/objectDeclaration/objectInObjectWithClosure.kt index 6e91b5c701a..59fd92a736d 100644 --- a/js/js.translator/testData/object/cases/objectInObjectWithClosure.kt +++ b/js/js.translator/testData/box/objectDeclaration/objectInObjectWithClosure.kt @@ -2,7 +2,7 @@ package foo class Foo { fun bar(param: String): String { - val local = "world!" + val local = "K" var a = object { val b = object { val bar = param + local @@ -12,7 +12,7 @@ class Foo { } } -fun box(): Boolean { - return Foo().bar("hello ") == "hello world!" +fun box(): String { + return Foo().bar("O") } diff --git a/js/js.translator/testData/object/cases/objectInheritingFromATrait.kt b/js/js.translator/testData/box/objectDeclaration/objectInheritingFromATrait.kt similarity index 82% rename from js/js.translator/testData/object/cases/objectInheritingFromATrait.kt rename to js/js.translator/testData/box/objectDeclaration/objectInheritingFromATrait.kt index c68962cd279..f20a3948bd5 100644 --- a/js/js.translator/testData/object/cases/objectInheritingFromATrait.kt +++ b/js/js.translator/testData/box/objectDeclaration/objectInheritingFromATrait.kt @@ -14,11 +14,11 @@ object foo : Foo { } } -private var result = false +private var result = "fail" -fun box(): Boolean { +fun box(): String { foo.execute() { - result = true + result = "OK" } return result diff --git a/js/js.translator/testData/object/cases/objectInheritingFromClass.kt b/js/js.translator/testData/box/objectDeclaration/objectInheritingFromClass.kt similarity index 57% rename from js/js.translator/testData/object/cases/objectInheritingFromClass.kt rename to js/js.translator/testData/box/objectDeclaration/objectInheritingFromClass.kt index 19e62783645..86e931a89a0 100644 --- a/js/js.translator/testData/object/cases/objectInheritingFromClass.kt +++ b/js/js.translator/testData/box/objectDeclaration/objectInheritingFromClass.kt @@ -6,4 +6,4 @@ abstract class A(val s: String) { object B : A("test") { } -fun box() = B.s == "test" +fun box() = if (B.s == "test") "OK" else "fail: ${B.s}" diff --git a/js/js.translator/testData/object/cases/objectWithMethods.kt b/js/js.translator/testData/box/objectDeclaration/objectWithMethods.kt similarity index 63% rename from js/js.translator/testData/object/cases/objectWithMethods.kt rename to js/js.translator/testData/box/objectDeclaration/objectWithMethods.kt index 34b655478b7..47c4219d314 100644 --- a/js/js.translator/testData/object/cases/objectWithMethods.kt +++ b/js/js.translator/testData/box/objectDeclaration/objectWithMethods.kt @@ -6,17 +6,17 @@ class Test { fun b() = 2 } - fun doTest(): Boolean { + fun doTest(): String { if (a.c() != 3) { - return false; + return "fail1" } if (a.b() != 2) { - return false; + return "fail2" } - return true; + return "OK" } } -fun box(): Boolean { +fun box(): String { return Test().doTest(); } diff --git a/js/js.translator/testData/propertyAccess/cases/accessToInstanceProperty.kt b/js/js.translator/testData/box/propertyAccess/accessToInstanceProperty.kt similarity index 54% rename from js/js.translator/testData/propertyAccess/cases/accessToInstanceProperty.kt rename to js/js.translator/testData/box/propertyAccess/accessToInstanceProperty.kt index e8002f251e2..84f37854617 100644 --- a/js/js.translator/testData/propertyAccess/cases/accessToInstanceProperty.kt +++ b/js/js.translator/testData/box/propertyAccess/accessToInstanceProperty.kt @@ -4,8 +4,8 @@ class Test() { var a: Int = 100 } -fun box(): Boolean { +fun box(): String { var test = Test() test.a = 1 - return (1 == test.a) + return if (1 == test.a) "OK" else "fail: ${test.a}" } \ No newline at end of file diff --git a/js/js.translator/testData/propertyAccess/cases/classUsesPackageProperties.kt b/js/js.translator/testData/box/propertyAccess/classUsesPackageProperties.kt similarity index 63% rename from js/js.translator/testData/propertyAccess/cases/classUsesPackageProperties.kt rename to js/js.translator/testData/box/propertyAccess/classUsesPackageProperties.kt index 5628a78c6c7..1bd4a681a40 100644 --- a/js/js.translator/testData/propertyAccess/cases/classUsesPackageProperties.kt +++ b/js/js.translator/testData/box/propertyAccess/classUsesPackageProperties.kt @@ -9,9 +9,9 @@ class A() { } -fun box(): Boolean { +fun box(): String { var c = A() c = A() c = A() - return (a == 3) + return if (a == 3) "OK" else "fail: $a" } \ No newline at end of file diff --git a/js/js.translator/testData/propertyAccess/cases/customGetter.kt b/js/js.translator/testData/box/propertyAccess/customGetter.kt similarity index 60% rename from js/js.translator/testData/propertyAccess/cases/customGetter.kt rename to js/js.translator/testData/box/propertyAccess/customGetter.kt index 3d3d6eb4b43..2c86d04056c 100644 --- a/js/js.translator/testData/propertyAccess/cases/customGetter.kt +++ b/js/js.translator/testData/box/propertyAccess/customGetter.kt @@ -7,7 +7,7 @@ class Test() { } } -fun box(): Boolean { +fun box(): String { var test = Test() - return (test.a == 5) + return if (test.a == 5) "OK" else "fail: ${test.a}" } \ No newline at end of file diff --git a/js/js.translator/testData/propertyAccess/cases/customSetter.kt b/js/js.translator/testData/box/propertyAccess/customSetter.kt similarity index 65% rename from js/js.translator/testData/propertyAccess/cases/customSetter.kt rename to js/js.translator/testData/box/propertyAccess/customSetter.kt index 2b8b5dbe710..9d64cd753a3 100644 --- a/js/js.translator/testData/propertyAccess/cases/customSetter.kt +++ b/js/js.translator/testData/box/propertyAccess/customSetter.kt @@ -7,8 +7,8 @@ class Test() { } } -fun box(): Boolean { +fun box(): String { var test = Test() test.a = 5 - return (test.a == 3) + return if (test.a == 3) "OK" else "fail: ${test.a}" } \ No newline at end of file diff --git a/js/js.translator/testData/box/propertyAccess/enumerable.kt b/js/js.translator/testData/box/propertyAccess/enumerable.kt new file mode 100644 index 00000000000..fa8b9a747c2 --- /dev/null +++ b/js/js.translator/testData/box/propertyAccess/enumerable.kt @@ -0,0 +1,49 @@ +// FILE: enumerable.kt +package foo + +@native +fun _enumerate(o: T): T = noImpl + +@native +fun _findFirst(o: Any): T = noImpl + +class Test() { + val a: Int = 100 + val b: String = "s" +} + +class P() { + @enumerable + val a: Int = 100 + val b: String = "s" +} + +fun box(): String { + val test = _enumerate(Test()) + val p = _enumerate(P()) + if (100 != test.a) return "fail1: ${test.a}" + if ("s" != test.b) return "fail2: ${test.b}" + if (p.a != 100) return "fail3: ${p.a}" + + val result = _findFirst(object { + val test = 100 + }) + if (result != 100) return "fail4: $result" + + return "OK" +} + +// FILE: enumerate.js +function _enumerate(o) { + var r = {}; + for (var p in o) { + r[p] = o[p]; + } + return r; +} + +function _findFirst(o) { + for (var p in o) { + return o[p]; + } +} \ No newline at end of file diff --git a/js/js.translator/testData/propertyAccess/cases/extensionLiteralSafeCall.kt b/js/js.translator/testData/box/propertyAccess/extensionLiteralSafeCall.kt similarity index 62% rename from js/js.translator/testData/propertyAccess/cases/extensionLiteralSafeCall.kt rename to js/js.translator/testData/box/propertyAccess/extensionLiteralSafeCall.kt index ca2c09df7cc..7e013645039 100644 --- a/js/js.translator/testData/propertyAccess/cases/extensionLiteralSafeCall.kt +++ b/js/js.translator/testData/box/propertyAccess/extensionLiteralSafeCall.kt @@ -2,13 +2,13 @@ package foo fun f(a: Int?, b: Int.(Int) -> Int) = a?.b(2) -fun box(): Boolean { +fun box(): String { val c1 = f (null) { it + this } != null - if (c1) return false; + if (c1) return "fail1" if (f(3) { it + this - } != 5) return false - return true; + } != 5) return "fail2" + return "OK" } diff --git a/js/js.translator/testData/propertyAccess/cases/field.kt b/js/js.translator/testData/box/propertyAccess/field.kt similarity index 100% rename from js/js.translator/testData/propertyAccess/cases/field.kt rename to js/js.translator/testData/box/propertyAccess/field.kt diff --git a/js/js.translator/testData/box/propertyAccess/initInstanceProperties.kt b/js/js.translator/testData/box/propertyAccess/initInstanceProperties.kt new file mode 100644 index 00000000000..d1a3815f1cb --- /dev/null +++ b/js/js.translator/testData/box/propertyAccess/initInstanceProperties.kt @@ -0,0 +1,16 @@ +package foo + +class Test() { + val a: Int = 100 + var b: Int = a + val c: Int = a + b +} + +fun box(): String { + val test = Test() + if (100 != test.a) return "fail1: ${test.a}" + if (100 != test.b) return "fail2: ${test.b}" + if (200 != test.c) return "fail3: ${test.c}" + + return "OK" +} diff --git a/js/js.translator/testData/propertyAccess/cases/initValInConstructor.kt b/js/js.translator/testData/box/propertyAccess/initValInConstructor.kt similarity index 100% rename from js/js.translator/testData/propertyAccess/cases/initValInConstructor.kt rename to js/js.translator/testData/box/propertyAccess/initValInConstructor.kt diff --git a/js/js.translator/testData/propertyAccess/cases/nativePropertiesNameClashes.kt b/js/js.translator/testData/box/propertyAccess/nativePropertiesNameClashes.kt similarity index 100% rename from js/js.translator/testData/propertyAccess/cases/nativePropertiesNameClashes.kt rename to js/js.translator/testData/box/propertyAccess/nativePropertiesNameClashes.kt diff --git a/js/js.translator/testData/propertyAccess/cases/overloadedOverriddenFunctionPropertyName.kt b/js/js.translator/testData/box/propertyAccess/overloadedOverriddenFunctionPropertyName.kt similarity index 68% rename from js/js.translator/testData/propertyAccess/cases/overloadedOverriddenFunctionPropertyName.kt rename to js/js.translator/testData/box/propertyAccess/overloadedOverriddenFunctionPropertyName.kt index f74d24dc523..38b9ea2a936 100644 --- a/js/js.translator/testData/propertyAccess/cases/overloadedOverriddenFunctionPropertyName.kt +++ b/js/js.translator/testData/box/propertyAccess/overloadedOverriddenFunctionPropertyName.kt @@ -6,7 +6,7 @@ interface I { class P : I { override fun test(): String { - return "a" + test("b") + return "O" + test("K") } private fun test(p: String): String { @@ -14,6 +14,6 @@ class P : I { } } -fun box(): Boolean { - return P().test() == "ab" +fun box(): String { + return P().test() } \ No newline at end of file diff --git a/js/js.translator/testData/propertyAccess/cases/packageCustomAccessors.kt b/js/js.translator/testData/box/propertyAccess/packageCustomAccessors.kt similarity index 56% rename from js/js.translator/testData/propertyAccess/cases/packageCustomAccessors.kt rename to js/js.translator/testData/box/propertyAccess/packageCustomAccessors.kt index 404c3ae3438..8e6bbf00dff 100644 --- a/js/js.translator/testData/propertyAccess/cases/packageCustomAccessors.kt +++ b/js/js.translator/testData/box/propertyAccess/packageCustomAccessors.kt @@ -10,6 +10,6 @@ var a: Int } -fun box(): Boolean { - return (a == 5) +fun box(): String { + return if (a == 5) "OK" else "fail: $a" } \ No newline at end of file diff --git a/js/js.translator/testData/box/propertyAccess/packagePropertyInitializer.kt b/js/js.translator/testData/box/propertyAccess/packagePropertyInitializer.kt new file mode 100644 index 00000000000..d669721c035 --- /dev/null +++ b/js/js.translator/testData/box/propertyAccess/packagePropertyInitializer.kt @@ -0,0 +1,5 @@ +package foo + +val b = 3 + +fun box() = if (b == 3) "OK" else "fail: $b" \ No newline at end of file diff --git a/js/js.translator/testData/box/propertyAccess/packagePropertySet.kt b/js/js.translator/testData/box/propertyAccess/packagePropertySet.kt new file mode 100644 index 00000000000..585201ee177 --- /dev/null +++ b/js/js.translator/testData/box/propertyAccess/packagePropertySet.kt @@ -0,0 +1,8 @@ +package foo + +var b = 3 + +fun box(): String { + b = 2 + return if (b == 2) "OK" else "fail: $b" +} \ No newline at end of file diff --git a/js/js.translator/testData/propertyAccess/cases/privatePropertyAccessFromMethod.kt b/js/js.translator/testData/box/propertyAccess/privatePropertyAccessFromMethod.kt similarity index 100% rename from js/js.translator/testData/propertyAccess/cases/privatePropertyAccessFromMethod.kt rename to js/js.translator/testData/box/propertyAccess/privatePropertyAccessFromMethod.kt diff --git a/js/js.translator/testData/propertyAccess/cases/propertyAssignment.kt b/js/js.translator/testData/box/propertyAccess/propertyAssignment.kt similarity index 100% rename from js/js.translator/testData/propertyAccess/cases/propertyAssignment.kt rename to js/js.translator/testData/box/propertyAccess/propertyAssignment.kt diff --git a/js/js.translator/testData/propertyAccess/cases/setter.kt b/js/js.translator/testData/box/propertyAccess/setter.kt similarity index 100% rename from js/js.translator/testData/propertyAccess/cases/setter.kt rename to js/js.translator/testData/box/propertyAccess/setter.kt diff --git a/js/js.translator/testData/box/propertyAccess/twoClassesWithProperties.kt b/js/js.translator/testData/box/propertyAccess/twoClassesWithProperties.kt new file mode 100644 index 00000000000..10c90850be0 --- /dev/null +++ b/js/js.translator/testData/box/propertyAccess/twoClassesWithProperties.kt @@ -0,0 +1,16 @@ +package foo + +class A() { + val a: Int = 1 +} + +class B() { + val b: Int = 2 +} + +fun box(): String { + if (A().a != 1) return "fail1" + if (B().b != 2) return "fail2" + + return "OK" +} \ No newline at end of file diff --git a/js/js.translator/testData/propertyOverride/cases/checkSupertypeOrder.kt b/js/js.translator/testData/box/propertyOverride/checkSupertypeOrder.kt similarity index 100% rename from js/js.translator/testData/propertyOverride/cases/checkSupertypeOrder.kt rename to js/js.translator/testData/box/propertyOverride/checkSupertypeOrder.kt diff --git a/js/js.translator/testData/propertyOverride/cases/initOverrideInConstructor.kt b/js/js.translator/testData/box/propertyOverride/initOverrideInConstructor.kt similarity index 100% rename from js/js.translator/testData/propertyOverride/cases/initOverrideInConstructor.kt rename to js/js.translator/testData/box/propertyOverride/initOverrideInConstructor.kt diff --git a/js/js.translator/testData/propertyOverride/cases/initOverrideInConstructorComplex.kt b/js/js.translator/testData/box/propertyOverride/initOverrideInConstructorComplex.kt similarity index 100% rename from js/js.translator/testData/propertyOverride/cases/initOverrideInConstructorComplex.kt rename to js/js.translator/testData/box/propertyOverride/initOverrideInConstructorComplex.kt diff --git a/js/js.translator/testData/propertyOverride/cases/initOverrideInConstructorExplicitThis.kt b/js/js.translator/testData/box/propertyOverride/initOverrideInConstructorExplicitThis.kt similarity index 100% rename from js/js.translator/testData/propertyOverride/cases/initOverrideInConstructorExplicitThis.kt rename to js/js.translator/testData/box/propertyOverride/initOverrideInConstructorExplicitThis.kt diff --git a/js/js.translator/testData/propertyOverride/cases/initOverrideVarInConstructor.kt b/js/js.translator/testData/box/propertyOverride/initOverrideVarInConstructor.kt similarity index 100% rename from js/js.translator/testData/propertyOverride/cases/initOverrideVarInConstructor.kt rename to js/js.translator/testData/box/propertyOverride/initOverrideVarInConstructor.kt diff --git a/js/js.translator/testData/propertyOverride/cases/overloadPrivateVal.kt b/js/js.translator/testData/box/propertyOverride/overloadPrivateVal.kt similarity index 100% rename from js/js.translator/testData/propertyOverride/cases/overloadPrivateVal.kt rename to js/js.translator/testData/box/propertyOverride/overloadPrivateVal.kt diff --git a/js/js.translator/testData/propertyOverride/cases/overrideExtensionProperty.kt b/js/js.translator/testData/box/propertyOverride/overrideExtensionProperty.kt similarity index 100% rename from js/js.translator/testData/propertyOverride/cases/overrideExtensionProperty.kt rename to js/js.translator/testData/box/propertyOverride/overrideExtensionProperty.kt diff --git a/js/js.translator/testData/propertyOverride/cases/overrideNotDirectlySuper.kt b/js/js.translator/testData/box/propertyOverride/overrideNotDirectlySuper.kt similarity index 100% rename from js/js.translator/testData/propertyOverride/cases/overrideNotDirectlySuper.kt rename to js/js.translator/testData/box/propertyOverride/overrideNotDirectlySuper.kt diff --git a/js/js.translator/testData/propertyOverride/cases/overrideValFromTraits.kt b/js/js.translator/testData/box/propertyOverride/overrideValFromTraits.kt similarity index 100% rename from js/js.translator/testData/propertyOverride/cases/overrideValFromTraits.kt rename to js/js.translator/testData/box/propertyOverride/overrideValFromTraits.kt diff --git a/js/js.translator/testData/propertyOverride/cases/overrideValWithBackendFiled.kt b/js/js.translator/testData/box/propertyOverride/overrideValWithBackendFiled.kt similarity index 100% rename from js/js.translator/testData/propertyOverride/cases/overrideValWithBackendFiled.kt rename to js/js.translator/testData/box/propertyOverride/overrideValWithBackendFiled.kt diff --git a/js/js.translator/testData/propertyOverride/cases/simpleOverride.kt b/js/js.translator/testData/box/propertyOverride/simpleOverride.kt similarity index 100% rename from js/js.translator/testData/propertyOverride/cases/simpleOverride.kt rename to js/js.translator/testData/box/propertyOverride/simpleOverride.kt diff --git a/js/js.translator/testData/range/cases/creatingProgressions.kt b/js/js.translator/testData/box/range/creatingProgressions.kt similarity index 91% rename from js/js.translator/testData/range/cases/creatingProgressions.kt rename to js/js.translator/testData/box/range/creatingProgressions.kt index 92697a584be..2a5367ddec0 100644 --- a/js/js.translator/testData/range/cases/creatingProgressions.kt +++ b/js/js.translator/testData/box/range/creatingProgressions.kt @@ -1,6 +1,6 @@ package foo -fun box(): Boolean { +fun box(): String { val intProgression = IntProgression.fromClosedRange(0, 10, 2) assertEquals(10, intProgression.last) @@ -11,5 +11,5 @@ fun box(): Boolean { val charProgression = CharProgression.fromClosedRange('a', 'z', 2) assertEquals('y', charProgression.last) - return true + return "OK" } diff --git a/js/js.translator/testData/box/range/explicitRange.kt b/js/js.translator/testData/box/range/explicitRange.kt new file mode 100644 index 00000000000..6166bd599ce --- /dev/null +++ b/js/js.translator/testData/box/range/explicitRange.kt @@ -0,0 +1,27 @@ +package foo + +fun box(): String { + + var twoToFive = IntRange(2, 5) + + if (twoToFive.contains(6)) return "fail1" + if (twoToFive.contains(1)) return "fail2" + if (twoToFive.contains(0)) return "fail3" + if (twoToFive.contains(-100)) return "fail4" + if (twoToFive.contains(10)) return "fail5" + if (!twoToFive.contains(2)) return "fail6" + if (!twoToFive.contains(3)) return "fail7" + if (!twoToFive.contains(4)) return "fail8" + if (!twoToFive.contains(5)) return "fail9" + if (!(twoToFive.start == 2)) return "fail10" + if (!(twoToFive.endInclusive == 5)) return "fail11" + + var sum = 0; + for (i in twoToFive) { + sum += i; + } + + if (sum != 14) return "fail12" + + return "OK" +} diff --git a/js/js.translator/testData/range/cases/intDownTo.kt b/js/js.translator/testData/box/range/intDownTo.kt similarity index 100% rename from js/js.translator/testData/range/cases/intDownTo.kt rename to js/js.translator/testData/box/range/intDownTo.kt diff --git a/js/js.translator/testData/box/range/intInRange.kt b/js/js.translator/testData/box/range/intInRange.kt new file mode 100644 index 00000000000..2e1125c4ef2 --- /dev/null +++ b/js/js.translator/testData/box/range/intInRange.kt @@ -0,0 +1,14 @@ +package foo + + +fun box(): String { + + if (1 in -2..0) return "fail1" + if (1 in -10..-4) return "fail2" + if (!(1 in 0..2)) return "fail3" + + if (!(1 in 1..2)) return "fail4" + if (!(1 in -2..5)) return "fail5" + + return "OK" +} diff --git a/js/js.translator/testData/box/range/intUpTo.kt b/js/js.translator/testData/box/range/intUpTo.kt new file mode 100644 index 00000000000..c9853c9b453 --- /dev/null +++ b/js/js.translator/testData/box/range/intUpTo.kt @@ -0,0 +1,18 @@ +package foo + +import java.util.ArrayList + +fun box(): String { + var elems = ArrayList() + for (i in 0.rangeTo(5)) { + elems.add(i) + } + if (elems[0] != 0) return "fail1: ${elems[0]}" + if (elems[1] != 1) return "fail2: ${elems[1]}" + if (elems[2] != 2) return "fail3: ${elems[2]}" + if (elems[3] != 3) return "fail4: ${elems[3]}" + if (elems[4] != 4) return "fail5: ${elems[4]}" + if (elems[5] != 5) return "fail6: ${elems[5]}" + + return "OK" +} \ No newline at end of file diff --git a/js/js.translator/testData/range/cases/iteratingOverRanges.kt b/js/js.translator/testData/box/range/iteratingOverRanges.kt similarity index 65% rename from js/js.translator/testData/range/cases/iteratingOverRanges.kt rename to js/js.translator/testData/box/range/iteratingOverRanges.kt index 8d3f28b032d..f8802917498 100644 --- a/js/js.translator/testData/range/cases/iteratingOverRanges.kt +++ b/js/js.translator/testData/box/range/iteratingOverRanges.kt @@ -1,18 +1,18 @@ package foo -fun box(): Boolean { +fun box(): String { var d = 0 for (i in 1..6) { d += i } - if (d != 21) return false; + if (d != 21) return "fail1: $d" for (x in 100..199) { d += 1 } if (d != 121) { - return false; + return "fail2: $d" } for (y in 1..1) { @@ -20,7 +20,7 @@ fun box(): Boolean { } if (d != 100) { - return false; + return "fail3: $d" } for (c in 100..100) { @@ -28,8 +28,8 @@ fun box(): Boolean { } if (d != 101) { - return false; + return "fail4: $d" } - return true + return "OK" } diff --git a/js/js.translator/testData/box/range/rangeEquals.kt b/js/js.translator/testData/box/range/rangeEquals.kt new file mode 100644 index 00000000000..50d065ad4c9 --- /dev/null +++ b/js/js.translator/testData/box/range/rangeEquals.kt @@ -0,0 +1,12 @@ +package foo + +fun box(): String { + + assertEquals(true, 2..1 == 4..2, "2..1 == 4..2") + assertEquals(true, 2L..1L == 318238945677L..2L, "2L..1L == 318238945677L..2L") + assertEquals(false, (2..1) as Any == (4L..2L) as Any, "(2..1): Any == (4L..2L): Any") + assertEquals(true, 'B'..'A' == 'W'..'B', "'B'..'A' == 'W'..'B'") + assertEquals(false, (2..1) as Any == ('B'..'A') as Any, "(2..1): Any == ('B'..'A'): Any") + + return "OK" +} \ No newline at end of file diff --git a/js/js.translator/testData/box/range/rangeSugarSyntax.kt b/js/js.translator/testData/box/range/rangeSugarSyntax.kt new file mode 100644 index 00000000000..64a1568bb00 --- /dev/null +++ b/js/js.translator/testData/box/range/rangeSugarSyntax.kt @@ -0,0 +1,27 @@ +package foo + +fun box(): String { + + var twoToFive = 2..5 + + if (twoToFive.contains(6)) return "fail1" + if (twoToFive.contains(1)) return "fail2" + if (twoToFive.contains(0)) return "fail3" + if (twoToFive.contains(-100)) return "fail4" + if (twoToFive.contains(10)) return "fail5" + if (!twoToFive.contains(2)) return "fail6" + if (!twoToFive.contains(3)) return "fail7" + if (!twoToFive.contains(4)) return "fail8" + if (!twoToFive.contains(5)) return "fail9" + if (!(twoToFive.start == 2)) return "fail10" + if (!(twoToFive.endInclusive == 5)) return "fail11" + + var sum = 0; + for (i in twoToFive) { + sum += i; + } + + if (sum != 14) return "fail12" + + return "OK" +} diff --git a/js/js.translator/testData/range/cases/rangeToDoesNotIterate.kt b/js/js.translator/testData/box/range/rangeToDoesNotIterate.kt similarity index 57% rename from js/js.translator/testData/range/cases/rangeToDoesNotIterate.kt rename to js/js.translator/testData/box/range/rangeToDoesNotIterate.kt index f15dad5c27a..952a3bb6156 100644 --- a/js/js.translator/testData/range/cases/rangeToDoesNotIterate.kt +++ b/js/js.translator/testData/box/range/rangeToDoesNotIterate.kt @@ -2,9 +2,9 @@ package foo import java.util.ArrayList -fun box(): Boolean { +fun box(): String { for (i in 0.rangeTo(-1)) { - return false + return "fail" } - return true + return "OK" } \ No newline at end of file diff --git a/js/js.translator/testData/range/cases/reverse.kt b/js/js.translator/testData/box/range/reverse.kt similarity index 100% rename from js/js.translator/testData/range/cases/reverse.kt rename to js/js.translator/testData/box/range/reverse.kt diff --git a/js/js.translator/testData/object/cases/objectDeclaration.kt b/js/js.translator/testData/object/cases/objectDeclaration.kt deleted file mode 100644 index 7fc31f790aa..00000000000 --- a/js/js.translator/testData/object/cases/objectDeclaration.kt +++ /dev/null @@ -1,28 +0,0 @@ -package foo - -class A { - -} - -object test { - var c = 2; - var b = 1; -} - -object aWrapper { - var a = A(); -} - -fun box(): Boolean { - if (test.c != 2) return false; - - if (test.b != 1) return false; - test.c += 10 - if (test.c != 12) { - return false; - } - if (aWrapper.a !is A) { - return false - } - return true; -} \ No newline at end of file diff --git a/js/js.translator/testData/object/cases/objectDeclarationWithVars.kt b/js/js.translator/testData/object/cases/objectDeclarationWithVars.kt deleted file mode 100644 index e825c4ed019..00000000000 --- a/js/js.translator/testData/object/cases/objectDeclarationWithVars.kt +++ /dev/null @@ -1,12 +0,0 @@ -package foo - -object State { - val c = 2 - val b = 1 -} - -fun box(): Boolean { - if (State.c != 2) return false - if (State.b != 1) return false - return true -} \ No newline at end of file diff --git a/js/js.translator/testData/propertyAccess/cases/enumerable.kt b/js/js.translator/testData/propertyAccess/cases/enumerable.kt deleted file mode 100644 index c586c598134..00000000000 --- a/js/js.translator/testData/propertyAccess/cases/enumerable.kt +++ /dev/null @@ -1,26 +0,0 @@ -package foo - -@native -fun _enumerate(o: T): T = noImpl - -@native -fun _findFirst(o: Any): T = noImpl - -class Test() { - val a: Int = 100 - val b: String = "s" -} - -class P() { - @enumerable - val a: Int = 100 - val b: String = "s" -} - -fun box(): Boolean { - val test = _enumerate(Test()) - val p = _enumerate(P()) - return (100 == test.a && "s" == test.b) && p.a == 100 && _findFirst(object { - val test = 100 - }) == 100; -} diff --git a/js/js.translator/testData/propertyAccess/cases/initInstanceProperties.kt b/js/js.translator/testData/propertyAccess/cases/initInstanceProperties.kt deleted file mode 100644 index 913c68de7ce..00000000000 --- a/js/js.translator/testData/propertyAccess/cases/initInstanceProperties.kt +++ /dev/null @@ -1,12 +0,0 @@ -package foo - -class Test() { - val a: Int = 100 - var b: Int = a - val c: Int = a + b -} - -fun box(): Boolean { - val test = Test() - return (100 == test.a && 100 == test.b && 200 == test.c) -} diff --git a/js/js.translator/testData/propertyAccess/cases/packagePropertyInitializer.kt b/js/js.translator/testData/propertyAccess/cases/packagePropertyInitializer.kt deleted file mode 100644 index fe8ba69567b..00000000000 --- a/js/js.translator/testData/propertyAccess/cases/packagePropertyInitializer.kt +++ /dev/null @@ -1,5 +0,0 @@ -package foo - -val b = 3 - -fun box() = (b == 3) \ No newline at end of file diff --git a/js/js.translator/testData/propertyAccess/cases/packagePropertySet.kt b/js/js.translator/testData/propertyAccess/cases/packagePropertySet.kt deleted file mode 100644 index fca6761f59b..00000000000 --- a/js/js.translator/testData/propertyAccess/cases/packagePropertySet.kt +++ /dev/null @@ -1,8 +0,0 @@ -package foo - -var b = 3 - -fun box(): Boolean { - b = 2 - return (b == 2) -} \ No newline at end of file diff --git a/js/js.translator/testData/propertyAccess/cases/twoClassesWithProperties.kt b/js/js.translator/testData/propertyAccess/cases/twoClassesWithProperties.kt deleted file mode 100644 index ff7213899bf..00000000000 --- a/js/js.translator/testData/propertyAccess/cases/twoClassesWithProperties.kt +++ /dev/null @@ -1,13 +0,0 @@ -package foo - -class A() { - val a: Int = 1 -} - -class B() { - val b: Int = 2 -} - -fun box(): Boolean { - return ((A().a == 1) && (B().b == 2)); -} \ No newline at end of file diff --git a/js/js.translator/testData/propertyAccess/enumerate.js b/js/js.translator/testData/propertyAccess/enumerate.js deleted file mode 100644 index 9e0800c158b..00000000000 --- a/js/js.translator/testData/propertyAccess/enumerate.js +++ /dev/null @@ -1,13 +0,0 @@ -function _enumerate(o) { - var r = {}; - for (var p in o) { - r[p] = o[p]; - } - return r; -} - -function _findFirst(o) { - for (var p in o) { - return o[p]; - } -} \ No newline at end of file diff --git a/js/js.translator/testData/range/cases/explicitRange.kt b/js/js.translator/testData/range/cases/explicitRange.kt deleted file mode 100644 index 05c48adbee5..00000000000 --- a/js/js.translator/testData/range/cases/explicitRange.kt +++ /dev/null @@ -1,28 +0,0 @@ -package foo - -fun box(): Boolean { - - var twoToFive = IntRange(2, 5) - - if (twoToFive.contains(6)) return false; - if (twoToFive.contains(1)) return false; - if (twoToFive.contains(0)) return false; - if (twoToFive.contains(-100)) return false; - if (twoToFive.contains(10)) return false; - if (!twoToFive.contains(2)) return false; - if (!twoToFive.contains(3)) return false; - if (!twoToFive.contains(4)) return false; - if (!twoToFive.contains(5)) return false; - if (!(twoToFive.start == 2)) return false; - if (!(twoToFive.endInclusive == 5)) return false; - - var sum = 0; - for (i in twoToFive) { - sum += i; - } - - if (sum != 14) return false; - - return true; - -} diff --git a/js/js.translator/testData/range/cases/intInRange.kt b/js/js.translator/testData/range/cases/intInRange.kt deleted file mode 100644 index 752dd9ab538..00000000000 --- a/js/js.translator/testData/range/cases/intInRange.kt +++ /dev/null @@ -1,14 +0,0 @@ -package foo - - -fun box(): Boolean { - - if (1 in -2..0) return false; - if (1 in -10..-4) return false; - if (!(1 in 0..2)) return false; - - if (!(1 in 1..2)) return false; - if (!(1 in -2..5)) return false; - - return true; -} diff --git a/js/js.translator/testData/range/cases/intUpTo.kt b/js/js.translator/testData/range/cases/intUpTo.kt deleted file mode 100644 index f5439eb2d05..00000000000 --- a/js/js.translator/testData/range/cases/intUpTo.kt +++ /dev/null @@ -1,11 +0,0 @@ -package foo - -import java.util.ArrayList - -fun box(): Boolean { - var elems = ArrayList() - for (i in 0.rangeTo(5)) { - elems.add(i) - } - return elems[0] == 0 && elems[1] == 1 && elems[2] == 2 && elems[3] == 3 && elems[4] == 4 && elems[5] == 5 -} \ No newline at end of file diff --git a/js/js.translator/testData/range/cases/rangeEquals.kt b/js/js.translator/testData/range/cases/rangeEquals.kt deleted file mode 100644 index cfad3776dd8..00000000000 --- a/js/js.translator/testData/range/cases/rangeEquals.kt +++ /dev/null @@ -1,12 +0,0 @@ -package foo - -fun box(): String { - - assertEquals(true, 2..1 == 4..2, "2..1 == 4..2") - assertEquals(true, 2L..1L == 318238945677L..2L, "2L..1L == 318238945677L..2L") - assertEquals(false, (2..1) as Any == (4L..2L) as Any, "(2..1): Any == (4L..2L): Any") - assertEquals(true, 'B'..'A' == 'W'..'B', "'B'..'A' == 'W'..'B'") - assertEquals(false, (2..1) as Any == ('B'..'A') as Any, "(2..1): Any == ('B'..'A'): Any") - - return "OK" -} \ No newline at end of file diff --git a/js/js.translator/testData/range/cases/rangeSugarSyntax.kt b/js/js.translator/testData/range/cases/rangeSugarSyntax.kt deleted file mode 100644 index d1227a01829..00000000000 --- a/js/js.translator/testData/range/cases/rangeSugarSyntax.kt +++ /dev/null @@ -1,28 +0,0 @@ -package foo - -fun box(): Boolean { - - var twoToFive = 2..5 - - if (twoToFive.contains(6)) return false; - if (twoToFive.contains(1)) return false; - if (twoToFive.contains(0)) return false; - if (twoToFive.contains(-100)) return false; - if (twoToFive.contains(10)) return false; - if (!twoToFive.contains(2)) return false; - if (!twoToFive.contains(3)) return false; - if (!twoToFive.contains(4)) return false; - if (!twoToFive.contains(5)) return false; - if (!(twoToFive.start == 2)) return false; - if (!(twoToFive.endInclusive == 5)) return false; - - var sum = 0; - for (i in twoToFive) { - sum += i; - } - - if (sum != 14) return false; - - return true; - -}