| // Copyright (c) 2017, the R8 project authors. Please see the AUTHORS file | 
 | // for details. All rights reserved. Use of this source code is governed by a | 
 | // BSD-style license that can be found in the LICENSE file. | 
 | package com.android.tools.r8; | 
 |  | 
 | import com.android.tools.r8.R8RunArtTestsTest.CompilerUnderTest; | 
 | import com.android.tools.r8.utils.InternalOptions; | 
 | import java.util.ArrayList; | 
 | import java.util.Collection; | 
 | import java.util.Collections; | 
 | import java.util.List; | 
 | import java.util.Map; | 
 | import java.util.Set; | 
 | import org.junit.runner.RunWith; | 
 | import org.junit.runners.Parameterized; | 
 | import org.junit.runners.Parameterized.Parameters; | 
 |  | 
 | @RunWith(Parameterized.class) | 
 | public class R8RunExamplesKotlinTest extends R8RunExamplesCommon { | 
 |  | 
 |   @Override | 
 |   protected void configure(InternalOptions options) { | 
 |     if (output == Output.CF) { | 
 |       // Class inliner is not supported with CF backend yet. | 
 |       options.enableClassInlining = false; | 
 |     } | 
 |   } | 
 |  | 
 |   @Parameters(name = "{0}_{1}_{2}_{3}_{5}_{6}") | 
 |   public static Collection<String[]> data() { | 
 |     String[] tests = { | 
 |         "loops.LoopKt" | 
 |     }; | 
 |  | 
 |     List<String[]> fullTestList = new ArrayList<>(tests.length * 2); | 
 |     for (String test : tests) { | 
 |       fullTestList.add( | 
 |           makeTest(Input.JAVAC, CompilerUnderTest.D8, CompilationMode.DEBUG, test, Output.DEX)); | 
 |       fullTestList.add( | 
 |           makeTest(Input.JAVAC, CompilerUnderTest.D8, CompilationMode.RELEASE, test, Output.DEX)); | 
 |       fullTestList.add(makeTest(Input.DX, CompilerUnderTest.R8, CompilationMode.DEBUG, test)); | 
 |       fullTestList.add(makeTest(Input.DX, CompilerUnderTest.R8, CompilationMode.RELEASE, test)); | 
 |       fullTestList.add( | 
 |           makeTest(Input.JAVAC, CompilerUnderTest.R8, CompilationMode.DEBUG, test, Output.CF)); | 
 |       fullTestList.add( | 
 |           makeTest(Input.JAVAC, CompilerUnderTest.R8, CompilationMode.RELEASE, test, Output.CF)); | 
 |     } | 
 |     return fullTestList; | 
 |   } | 
 |  | 
 |   @Override | 
 |   protected String getExampleDir() { | 
 |     return ToolHelper.EXAMPLES_KOTLIN_BUILD_DIR; | 
 |   } | 
 |  | 
 |   @Override | 
 |   protected Map<String, TestCondition> getFailingRun() { | 
 |     return Collections.emptyMap(); | 
 |   } | 
 |  | 
 |   @Override | 
 |   protected Map<String, TestCondition> getFailingRunCf() { | 
 |     return Collections.emptyMap(); | 
 |   } | 
 |  | 
 |   @Override | 
 |   protected Set<String> getFailingCompileCfToDex() { | 
 |     return Collections.emptySet(); | 
 |   } | 
 |  | 
 |   @Override | 
 |   protected Set<String> getFailingRunCfToDex() { | 
 |     return Collections.emptySet(); | 
 |   } | 
 |  | 
 |   @Override | 
 |   protected Set<String> getFailingCompileCf() { | 
 |     return Collections.emptySet(); | 
 |   } | 
 |  | 
 |   @Override | 
 |   protected Set<String> getFailingOutputCf() { | 
 |     return Collections.emptySet(); | 
 |   } | 
 |  | 
 |   @Override | 
 |   protected Map<String, TestCondition> getOutputNotIdenticalToJVMOutput() { | 
 |     return Collections.emptyMap(); | 
 |   } | 
 |  | 
 |   @Override | 
 |   protected Map<String, TestCondition> getSkip() { | 
 |     return Collections.emptyMap(); | 
 |   } | 
 |  | 
 |   public R8RunExamplesKotlinTest( | 
 |       String pkg, | 
 |       String input, | 
 |       String compiler, | 
 |       String mode, | 
 |       String mainClass, | 
 |       String output) { | 
 |     super(pkg, input, compiler, mode, mainClass, output); | 
 |   } | 
 | } |