blob: b9b2b8e311230c0eb58221423fcfa58c376ce283 [file] [log] [blame]
// Copyright (c) 2022, 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.cf.varhandle;
import com.android.tools.r8.examples.jdk9.VarHandle;
import com.android.tools.r8.utils.StringUtils;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
@RunWith(Parameterized.class)
public class VarHandleDesugaringInstanceObjectFieldTest extends VarHandleDesugaringTestBase {
private static final String EXPECTED_OUTPUT =
StringUtils.lines("testGet", "null", "1", "testCompareAndSet", "null", "1");
private static final String MAIN_CLASS = VarHandle.InstanceObjectField.typeName();
private static final String JAR_ENTRY = "varhandle/InstanceObjectField.class";
@Override
protected String getMainClass() {
return MAIN_CLASS;
}
@Override
protected String getKeepRules() {
return "-keep class " + getMainClass() + "{ <fields>; }";
}
@Override
protected String getJarEntry() {
return JAR_ENTRY;
}
@Override
protected String getExpectedOutput() {
return EXPECTED_OUTPUT;
}
}