1 /* 2 * Copyright 2022 Google LLC 3 * Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 18 // WITH_RUNTIME 19 // TEST PROCESSOR: MultiModuleTestProcessor 20 // EXPECTED: 21 // ClassInMainModule[KOTLIN] 22 // ClassInModule1[KOTLIN_LIB] 23 // ClassInModule2[KOTLIN_LIB] 24 // JavaClassInMainModule[JAVA] 25 // JavaClassInModule1[JAVA_LIB] 26 // JavaClassInModule2[JAVA_LIB] 27 // TestTarget[KOTLIN] 28 // END 29 // MODULE: module1 30 // FILE: ClassInModule1.kt 31 class ClassInModule1 { 32 val javaClassInModule1: JavaClassInModule1 = TODO() 33 } 34 // FILE: JavaClassInModule1.java 35 public class JavaClassInModule1 {} 36 // MODULE: module2(module1) 37 // FILE: ClassInModule2.kt 38 class ClassInModule2 { 39 val javaClassInModule2: JavaClassInModule2 = TODO() 40 val classInModule1: ClassInModule1 = TODO() 41 } 42 // FILE: JavaClassInModule2.java 43 public class JavaClassInModule2 {} 44 // MODULE: main(module1, module2) 45 // FILE: main.kt 46 class TestTarget { 47 val field: ClassInMainModule = TODO() 48 } 49 // FILE: ClassInMainModule.kt 50 class ClassInMainModule { 51 val field: ClassInModule2 = TODO() 52 val javaClassInMainModule : JavaClassInMainModule = TODO() 53 } 54 // FILE: JavaClassInMainModule.java 55 class JavaClassInMainModule { 56 } 57