From fc69cf1b5e6e46d84dd29f349df1365b58974eca Mon Sep 17 00:00:00 2001 From: Svetlana Isakova Date: Thu, 2 Jul 2015 19:56:36 +0300 Subject: [PATCH] Added more tests on incorporation --- .../declarations/declarations.kt | 3 +- .../other/constraintForNullables.bounds | 23 ++++++ .../other/constraintForNullables.constraints | 4 + .../other/nestedConsumer.bounds | 23 ++++++ .../other/nestedConsumer.constraints | 4 + .../other/nestedConsumer1.bounds | 23 ++++++ .../other/nestedConsumer1.constraints | 4 + .../other/nestedInvConsumer.bounds | 23 ++++++ .../other/nestedInvConsumer.constraints | 4 + .../other/nestedInvProducer.bounds | 23 ++++++ .../other/nestedInvProducer.constraints | 4 + .../other/nestedProducer.bounds | 23 ++++++ .../other/nestedProducer.constraints | 4 + .../other/nestedProducerAndConsumer.bounds | 23 ++++++ .../nestedProducerAndConsumer.constraints | 4 + .../other/severalOccurrences.bounds | 23 ++++++ .../other/severalOccurrences.constraints | 4 + .../severalVariables/other/simpleFun.bounds | 26 ++++++ .../other/simpleFun.constraints | 5 ++ .../other/simpleThreeVars.bounds | 26 ++++++ .../other/simpleThreeVars.constraints | 5 ++ .../simpleThreeVarsNoIncorporation.bounds | 26 ++++++ ...simpleThreeVarsNoIncorporation.constraints | 5 ++ ...simpleThreeVarsNoIncorporationFixed.bounds | 27 +++++++ ...eThreeVarsNoIncorporationFixed.constraints | 6 ++ .../ConstraintSystemTestGenerated.java | 81 +++++++++++++++++++ 26 files changed, 425 insertions(+), 1 deletion(-) create mode 100644 compiler/testData/constraintSystem/severalVariables/other/constraintForNullables.bounds create mode 100644 compiler/testData/constraintSystem/severalVariables/other/constraintForNullables.constraints create mode 100644 compiler/testData/constraintSystem/severalVariables/other/nestedConsumer.bounds create mode 100644 compiler/testData/constraintSystem/severalVariables/other/nestedConsumer.constraints create mode 100644 compiler/testData/constraintSystem/severalVariables/other/nestedConsumer1.bounds create mode 100644 compiler/testData/constraintSystem/severalVariables/other/nestedConsumer1.constraints create mode 100644 compiler/testData/constraintSystem/severalVariables/other/nestedInvConsumer.bounds create mode 100644 compiler/testData/constraintSystem/severalVariables/other/nestedInvConsumer.constraints create mode 100644 compiler/testData/constraintSystem/severalVariables/other/nestedInvProducer.bounds create mode 100644 compiler/testData/constraintSystem/severalVariables/other/nestedInvProducer.constraints create mode 100644 compiler/testData/constraintSystem/severalVariables/other/nestedProducer.bounds create mode 100644 compiler/testData/constraintSystem/severalVariables/other/nestedProducer.constraints create mode 100644 compiler/testData/constraintSystem/severalVariables/other/nestedProducerAndConsumer.bounds create mode 100644 compiler/testData/constraintSystem/severalVariables/other/nestedProducerAndConsumer.constraints create mode 100644 compiler/testData/constraintSystem/severalVariables/other/severalOccurrences.bounds create mode 100644 compiler/testData/constraintSystem/severalVariables/other/severalOccurrences.constraints create mode 100644 compiler/testData/constraintSystem/severalVariables/other/simpleFun.bounds create mode 100644 compiler/testData/constraintSystem/severalVariables/other/simpleFun.constraints create mode 100644 compiler/testData/constraintSystem/severalVariables/other/simpleThreeVars.bounds create mode 100644 compiler/testData/constraintSystem/severalVariables/other/simpleThreeVars.constraints create mode 100644 compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporation.bounds create mode 100644 compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporation.constraints create mode 100644 compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporationFixed.bounds create mode 100644 compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporationFixed.constraints diff --git a/compiler/testData/constraintSystem/declarations/declarations.kt b/compiler/testData/constraintSystem/declarations/declarations.kt index 43edc7fdd90..7c8614eadfa 100644 --- a/compiler/testData/constraintSystem/declarations/declarations.kt +++ b/compiler/testData/constraintSystem/declarations/declarations.kt @@ -10,4 +10,5 @@ interface Producer interface My interface Successor : My -interface Two \ No newline at end of file +interface Two +interface Fun \ No newline at end of file diff --git a/compiler/testData/constraintSystem/severalVariables/other/constraintForNullables.bounds b/compiler/testData/constraintSystem/severalVariables/other/constraintForNullables.bounds new file mode 100644 index 00000000000..98791a29dbb --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/constraintForNullables.bounds @@ -0,0 +1,23 @@ +VARIABLES T P + +SUBTYPE T? P? +SUBTYPE P Int + +type parameter bounds: +T <: P?*, <: P*, <: Int, <: Int? +P >: T*, <: Int + +status: +-hasCannotCaptureTypesError: false +-hasConflictingConstraints: false +-hasContradiction: false +-hasErrorInConstrainingTypes: false +-hasTypeConstructorMismatch: false +-hasTypeInferenceIncorporationError: false +-hasUnknownParameters: false +-hasViolatedUpperBound: false +-isSuccessful: true + +result: +T=Int +P=Int diff --git a/compiler/testData/constraintSystem/severalVariables/other/constraintForNullables.constraints b/compiler/testData/constraintSystem/severalVariables/other/constraintForNullables.constraints new file mode 100644 index 00000000000..df99da1ee94 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/constraintForNullables.constraints @@ -0,0 +1,4 @@ +VARIABLES T P + +SUBTYPE T? P? +SUBTYPE P Int diff --git a/compiler/testData/constraintSystem/severalVariables/other/nestedConsumer.bounds b/compiler/testData/constraintSystem/severalVariables/other/nestedConsumer.bounds new file mode 100644 index 00000000000..9a062be9167 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/nestedConsumer.bounds @@ -0,0 +1,23 @@ +VARIABLES T P + +SUBTYPE Int T +EQUAL P Consumer> + +type parameter bounds: +T >: Int +P := Consumer>*, >: Consumer> + +status: +-hasCannotCaptureTypesError: false +-hasConflictingConstraints: false +-hasContradiction: false +-hasErrorInConstrainingTypes: false +-hasTypeConstructorMismatch: false +-hasTypeInferenceIncorporationError: false +-hasUnknownParameters: false +-hasViolatedUpperBound: false +-isSuccessful: true + +result: +T=Int +P=Consumer> \ No newline at end of file diff --git a/compiler/testData/constraintSystem/severalVariables/other/nestedConsumer.constraints b/compiler/testData/constraintSystem/severalVariables/other/nestedConsumer.constraints new file mode 100644 index 00000000000..11a84f8f0bf --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/nestedConsumer.constraints @@ -0,0 +1,4 @@ +VARIABLES T P + +SUBTYPE Int T +EQUAL P Consumer> \ No newline at end of file diff --git a/compiler/testData/constraintSystem/severalVariables/other/nestedConsumer1.bounds b/compiler/testData/constraintSystem/severalVariables/other/nestedConsumer1.bounds new file mode 100644 index 00000000000..a5d0d904597 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/nestedConsumer1.bounds @@ -0,0 +1,23 @@ +VARIABLES T P + +SUBTYPE Int T +SUBTYPE P Consumer>> + +type parameter bounds: +T >: Int +P <: Consumer>>*, <: Consumer>> + +status: +-hasCannotCaptureTypesError: false +-hasConflictingConstraints: false +-hasContradiction: false +-hasErrorInConstrainingTypes: false +-hasTypeConstructorMismatch: false +-hasTypeInferenceIncorporationError: false +-hasUnknownParameters: false +-hasViolatedUpperBound: false +-isSuccessful: true + +result: +T=Int +P=Consumer>> diff --git a/compiler/testData/constraintSystem/severalVariables/other/nestedConsumer1.constraints b/compiler/testData/constraintSystem/severalVariables/other/nestedConsumer1.constraints new file mode 100644 index 00000000000..37ec32c12f6 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/nestedConsumer1.constraints @@ -0,0 +1,4 @@ +VARIABLES T P + +SUBTYPE Int T +SUBTYPE P Consumer>> \ No newline at end of file diff --git a/compiler/testData/constraintSystem/severalVariables/other/nestedInvConsumer.bounds b/compiler/testData/constraintSystem/severalVariables/other/nestedInvConsumer.bounds new file mode 100644 index 00000000000..4394d6f956e --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/nestedInvConsumer.bounds @@ -0,0 +1,23 @@ +VARIABLES T P + +SUBTYPE Int T +SUBTYPE P My>> + +type parameter bounds: +T >: Int +P <: My>>*, <: My>> + +status: +-hasCannotCaptureTypesError: false +-hasConflictingConstraints: false +-hasContradiction: true +-hasErrorInConstrainingTypes: false +-hasTypeConstructorMismatch: false +-hasTypeInferenceIncorporationError: true +-hasUnknownParameters: false +-hasViolatedUpperBound: false +-isSuccessful: false + +result: +T=Int +P=My>> diff --git a/compiler/testData/constraintSystem/severalVariables/other/nestedInvConsumer.constraints b/compiler/testData/constraintSystem/severalVariables/other/nestedInvConsumer.constraints new file mode 100644 index 00000000000..9550d7f43e8 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/nestedInvConsumer.constraints @@ -0,0 +1,4 @@ +VARIABLES T P + +SUBTYPE Int T +SUBTYPE P My>> \ No newline at end of file diff --git a/compiler/testData/constraintSystem/severalVariables/other/nestedInvProducer.bounds b/compiler/testData/constraintSystem/severalVariables/other/nestedInvProducer.bounds new file mode 100644 index 00000000000..c76dbdb7182 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/nestedInvProducer.bounds @@ -0,0 +1,23 @@ +VARIABLES T P + +SUBTYPE T Int +SUBTYPE P My>> + +type parameter bounds: +T <: Int +P <: My>>*, <: My>> + +status: +-hasCannotCaptureTypesError: false +-hasConflictingConstraints: false +-hasContradiction: true +-hasErrorInConstrainingTypes: false +-hasTypeConstructorMismatch: false +-hasTypeInferenceIncorporationError: true +-hasUnknownParameters: false +-hasViolatedUpperBound: false +-isSuccessful: false + +result: +T=Int +P=My>> diff --git a/compiler/testData/constraintSystem/severalVariables/other/nestedInvProducer.constraints b/compiler/testData/constraintSystem/severalVariables/other/nestedInvProducer.constraints new file mode 100644 index 00000000000..cf13d9fe377 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/nestedInvProducer.constraints @@ -0,0 +1,4 @@ +VARIABLES T P + +SUBTYPE T Int +SUBTYPE P My>> \ No newline at end of file diff --git a/compiler/testData/constraintSystem/severalVariables/other/nestedProducer.bounds b/compiler/testData/constraintSystem/severalVariables/other/nestedProducer.bounds new file mode 100644 index 00000000000..01b0c37731c --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/nestedProducer.bounds @@ -0,0 +1,23 @@ +VARIABLES T P + +SUBTYPE T Int +SUBTYPE P Producer>> + +type parameter bounds: +T <: Int +P <: Producer>>*, <: Producer>> + +status: +-hasCannotCaptureTypesError: false +-hasConflictingConstraints: false +-hasContradiction: false +-hasErrorInConstrainingTypes: false +-hasTypeConstructorMismatch: false +-hasTypeInferenceIncorporationError: false +-hasUnknownParameters: false +-hasViolatedUpperBound: false +-isSuccessful: true + +result: +T=Int +P=Producer>> diff --git a/compiler/testData/constraintSystem/severalVariables/other/nestedProducer.constraints b/compiler/testData/constraintSystem/severalVariables/other/nestedProducer.constraints new file mode 100644 index 00000000000..ac48c96fd07 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/nestedProducer.constraints @@ -0,0 +1,4 @@ +VARIABLES T P + +SUBTYPE T Int +SUBTYPE P Producer>> \ No newline at end of file diff --git a/compiler/testData/constraintSystem/severalVariables/other/nestedProducerAndConsumer.bounds b/compiler/testData/constraintSystem/severalVariables/other/nestedProducerAndConsumer.bounds new file mode 100644 index 00000000000..c9f33c564c7 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/nestedProducerAndConsumer.bounds @@ -0,0 +1,23 @@ +VARIABLES T P + +SUBTYPE Int T +SUBTYPE P Producer>> + +type parameter bounds: +T >: Int +P <: Producer>>*, <: Producer>> + +status: +-hasCannotCaptureTypesError: false +-hasConflictingConstraints: false +-hasContradiction: false +-hasErrorInConstrainingTypes: false +-hasTypeConstructorMismatch: false +-hasTypeInferenceIncorporationError: false +-hasUnknownParameters: false +-hasViolatedUpperBound: false +-isSuccessful: true + +result: +T=Int +P=Producer>> diff --git a/compiler/testData/constraintSystem/severalVariables/other/nestedProducerAndConsumer.constraints b/compiler/testData/constraintSystem/severalVariables/other/nestedProducerAndConsumer.constraints new file mode 100644 index 00000000000..5b65fe00289 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/nestedProducerAndConsumer.constraints @@ -0,0 +1,4 @@ +VARIABLES T P + +SUBTYPE Int T +SUBTYPE P Producer>> diff --git a/compiler/testData/constraintSystem/severalVariables/other/severalOccurrences.bounds b/compiler/testData/constraintSystem/severalVariables/other/severalOccurrences.bounds new file mode 100644 index 00000000000..6b1a1f6daf0 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/severalOccurrences.bounds @@ -0,0 +1,23 @@ +VARIABLES T P + +SUBTYPE T Int +SUBTYPE P Fun,Producer> + +type parameter bounds: +T <: Int +P <: Fun, Producer>*, <: Fun, Producer> + +status: +-hasCannotCaptureTypesError: false +-hasConflictingConstraints: false +-hasContradiction: false +-hasErrorInConstrainingTypes: false +-hasTypeConstructorMismatch: false +-hasTypeInferenceIncorporationError: false +-hasUnknownParameters: false +-hasViolatedUpperBound: false +-isSuccessful: true + +result: +T=Int +P=Fun, Producer> diff --git a/compiler/testData/constraintSystem/severalVariables/other/severalOccurrences.constraints b/compiler/testData/constraintSystem/severalVariables/other/severalOccurrences.constraints new file mode 100644 index 00000000000..21995bde4f7 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/severalOccurrences.constraints @@ -0,0 +1,4 @@ +VARIABLES T P + +SUBTYPE T Int +SUBTYPE P Fun,Producer> \ No newline at end of file diff --git a/compiler/testData/constraintSystem/severalVariables/other/simpleFun.bounds b/compiler/testData/constraintSystem/severalVariables/other/simpleFun.bounds new file mode 100644 index 00000000000..379589a6bf2 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/simpleFun.bounds @@ -0,0 +1,26 @@ +VARIABLES T P E + +SUBTYPE Int T +SUBTYPE P String +SUBTYPE E Fun + +type parameter bounds: +T >: Int +P <: String +E <: Fun*, <: Fun + +status: +-hasCannotCaptureTypesError: false +-hasConflictingConstraints: false +-hasContradiction: false +-hasErrorInConstrainingTypes: false +-hasTypeConstructorMismatch: false +-hasTypeInferenceIncorporationError: false +-hasUnknownParameters: false +-hasViolatedUpperBound: false +-isSuccessful: true + +result: +T=Int +P=String +E=Fun diff --git a/compiler/testData/constraintSystem/severalVariables/other/simpleFun.constraints b/compiler/testData/constraintSystem/severalVariables/other/simpleFun.constraints new file mode 100644 index 00000000000..29ac24ec9fe --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/simpleFun.constraints @@ -0,0 +1,5 @@ +VARIABLES T P E + +SUBTYPE Int T +SUBTYPE P String +SUBTYPE E Fun \ No newline at end of file diff --git a/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVars.bounds b/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVars.bounds new file mode 100644 index 00000000000..68700b96962 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVars.bounds @@ -0,0 +1,26 @@ +VARIABLES T P E + +SUBTYPE T P +SUBTYPE P E +SUBTYPE E Int + +type parameter bounds: +T <: P*, <: E*, <: Int +P >: T*, <: E*, <: Int +E >: T*, >: P*, <: Int + +status: +-hasCannotCaptureTypesError: false +-hasConflictingConstraints: false +-hasContradiction: false +-hasErrorInConstrainingTypes: false +-hasTypeConstructorMismatch: false +-hasTypeInferenceIncorporationError: false +-hasUnknownParameters: false +-hasViolatedUpperBound: false +-isSuccessful: true + +result: +T=Int +P=Int +E=Int diff --git a/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVars.constraints b/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVars.constraints new file mode 100644 index 00000000000..f41341a3ef0 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVars.constraints @@ -0,0 +1,5 @@ +VARIABLES T P E + +SUBTYPE T P +SUBTYPE P E +SUBTYPE E Int diff --git a/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporation.bounds b/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporation.bounds new file mode 100644 index 00000000000..6e90c63a897 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporation.bounds @@ -0,0 +1,26 @@ +VARIABLES T P E + +SUBTYPE T P +SUBTYPE P E +SUBTYPE Int E + +type parameter bounds: +T <: P*, <: E* +P >: T*, <: E* +E >: T*, >: P*, >: Int + +status: +-hasCannotCaptureTypesError: false +-hasConflictingConstraints: false +-hasContradiction: false +-hasErrorInConstrainingTypes: false +-hasTypeConstructorMismatch: false +-hasTypeInferenceIncorporationError: false +-hasUnknownParameters: true +-hasViolatedUpperBound: false +-isSuccessful: false + +result: +T=??? +P=??? +E=Int diff --git a/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporation.constraints b/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporation.constraints new file mode 100644 index 00000000000..0c5479367b1 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporation.constraints @@ -0,0 +1,5 @@ +VARIABLES T P E + +SUBTYPE T P +SUBTYPE P E +SUBTYPE Int E diff --git a/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporationFixed.bounds b/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporationFixed.bounds new file mode 100644 index 00000000000..14fe73be6f7 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporationFixed.bounds @@ -0,0 +1,27 @@ +VARIABLES T P E +FIX_VARIABLES + +SUBTYPE T P +SUBTYPE P E +SUBTYPE Int E + +type parameter bounds: +T <: P*, <: E*, <: Int, := Int +P >: T*, <: E*, <: Int, := Int, >: Int +E >: T*, >: P*, >: Int, := Int + +status: +-hasCannotCaptureTypesError: false +-hasConflictingConstraints: false +-hasContradiction: false +-hasErrorInConstrainingTypes: false +-hasTypeConstructorMismatch: false +-hasTypeInferenceIncorporationError: false +-hasUnknownParameters: false +-hasViolatedUpperBound: false +-isSuccessful: true + +result: +T=Int +P=Int +E=Int diff --git a/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporationFixed.constraints b/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporationFixed.constraints new file mode 100644 index 00000000000..83e149c9e95 --- /dev/null +++ b/compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporationFixed.constraints @@ -0,0 +1,6 @@ +VARIABLES T P E +FIX_VARIABLES + +SUBTYPE T P +SUBTYPE P E +SUBTYPE Int E diff --git a/compiler/tests/org/jetbrains/kotlin/resolve/constraintSystem/ConstraintSystemTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/resolve/constraintSystem/ConstraintSystemTestGenerated.java index 12ea42f21fd..8ccbd2d42c1 100644 --- a/compiler/tests/org/jetbrains/kotlin/resolve/constraintSystem/ConstraintSystemTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/resolve/constraintSystem/ConstraintSystemTestGenerated.java @@ -631,6 +631,87 @@ public class ConstraintSystemTestGenerated extends AbstractConstraintSystemTest } } + @TestMetadata("compiler/testData/constraintSystem/severalVariables/other") + @TestDataPath("$PROJECT_ROOT") + @RunWith(JUnit3RunnerWithInners.class) + public static class Other extends AbstractConstraintSystemTest { + public void testAllFilesPresentInOther() throws Exception { + JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/constraintSystem/severalVariables/other"), Pattern.compile("^(.+)\\.constraints$"), true); + } + + @TestMetadata("constraintForNullables.constraints") + public void testConstraintForNullables() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/constraintSystem/severalVariables/other/constraintForNullables.constraints"); + doTest(fileName); + } + + @TestMetadata("nestedConsumer.constraints") + public void testNestedConsumer() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/constraintSystem/severalVariables/other/nestedConsumer.constraints"); + doTest(fileName); + } + + @TestMetadata("nestedConsumer1.constraints") + public void testNestedConsumer1() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/constraintSystem/severalVariables/other/nestedConsumer1.constraints"); + doTest(fileName); + } + + @TestMetadata("nestedInvConsumer.constraints") + public void testNestedInvConsumer() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/constraintSystem/severalVariables/other/nestedInvConsumer.constraints"); + doTest(fileName); + } + + @TestMetadata("nestedInvProducer.constraints") + public void testNestedInvProducer() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/constraintSystem/severalVariables/other/nestedInvProducer.constraints"); + doTest(fileName); + } + + @TestMetadata("nestedProducer.constraints") + public void testNestedProducer() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/constraintSystem/severalVariables/other/nestedProducer.constraints"); + doTest(fileName); + } + + @TestMetadata("nestedProducerAndConsumer.constraints") + public void testNestedProducerAndConsumer() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/constraintSystem/severalVariables/other/nestedProducerAndConsumer.constraints"); + doTest(fileName); + } + + @TestMetadata("severalOccurrences.constraints") + public void testSeveralOccurrences() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/constraintSystem/severalVariables/other/severalOccurrences.constraints"); + doTest(fileName); + } + + @TestMetadata("simpleFun.constraints") + public void testSimpleFun() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/constraintSystem/severalVariables/other/simpleFun.constraints"); + doTest(fileName); + } + + @TestMetadata("simpleThreeVars.constraints") + public void testSimpleThreeVars() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/constraintSystem/severalVariables/other/simpleThreeVars.constraints"); + doTest(fileName); + } + + @TestMetadata("simpleThreeVarsNoIncorporation.constraints") + public void testSimpleThreeVarsNoIncorporation() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporation.constraints"); + doTest(fileName); + } + + @TestMetadata("simpleThreeVarsNoIncorporationFixed.constraints") + public void testSimpleThreeVarsNoIncorporationFixed() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/constraintSystem/severalVariables/other/simpleThreeVarsNoIncorporationFixed.constraints"); + doTest(fileName); + } + } + @TestMetadata("compiler/testData/constraintSystem/severalVariables/recursive") @TestDataPath("$PROJECT_ROOT") @RunWith(JUnit3RunnerWithInners.class)