| // Copyright (c) 2019, 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.GenerateMainDexListCommand.Builder; | |
| import com.android.tools.r8.debug.DebugTestConfig; | |
| import com.android.tools.r8.errors.Unimplemented; | |
| import com.android.tools.r8.origin.Origin; | |
| import java.io.IOException; | |
| import java.nio.file.Path; | |
| import java.util.ArrayList; | |
| import java.util.Arrays; | |
| import java.util.Collection; | |
| public class GenerateMainDexListTestBuilder | |
| extends TestBaseBuilder< | |
| GenerateMainDexListCommand, | |
| Builder, | |
| GenerateMainDexListResult, | |
| GenerateMainDexListRunResult, | |
| GenerateMainDexListTestBuilder> { | |
| private GenerateMainDexListTestBuilder(TestState state, Builder builder) { | |
| super(state, builder); | |
| } | |
| public static GenerateMainDexListTestBuilder create(TestState state) { | |
| return new GenerateMainDexListTestBuilder(state, GenerateMainDexListCommand.builder()); | |
| } | |
| @Override | |
| GenerateMainDexListTestBuilder self() { | |
| return this; | |
| } | |
| @Override | |
| public GenerateMainDexListRunResult run(String mainClass) | |
| throws IOException, CompilationFailedException { | |
| throw new Unimplemented("No support for running with a main class"); | |
| } | |
| @Override | |
| public GenerateMainDexListRunResult run(TestRuntime runtime, String mainClass, String... args) | |
| throws IOException, CompilationFailedException { | |
| throw new Unimplemented("No support for running with a main class"); | |
| } | |
| @Override | |
| public DebugTestConfig debugConfig() { | |
| throw new Unimplemented("No support for debug configuration"); | |
| } | |
| @Override | |
| public GenerateMainDexListTestBuilder addRunClasspathFiles(Collection<Path> files) { | |
| throw new Unimplemented("No support for run class path"); | |
| } | |
| public GenerateMainDexListRunResult run() throws CompilationFailedException { | |
| return new GenerateMainDexListRunResult(GenerateMainDexList.run(builder.build())); | |
| } | |
| public GenerateMainDexListTestBuilder addMainDexRules(Collection<String> rules) { | |
| builder.addMainDexRules(new ArrayList<>(rules), Origin.unknown()); | |
| return self(); | |
| } | |
| public GenerateMainDexListTestBuilder addMainDexRules(String... rules) { | |
| return addMainDexRules(Arrays.asList(rules)); | |
| } | |
| } |