2
0
mirror of synced 2025-02-23 14:58:12 +00:00
mobile/bind/testdata/issue10788.java.golden
Hana Kim 6d0d39b2ca bind: format generated go code before comparing with golden files
bind_test.go compares the generated Go files against golden files
checked in the repository. The bind package formats some of the
generated Go files, so any changes in the go formatter can break
the tests.

This change makes the test more robust by applying formatting based
on the currently used go version. Since a golden file often
includes multiple go files generated by the bind, the `gofmt`
function splits the golden file using the gobindPreamble marker
and then run format.Source for each chunk. In order to ease the
golden file splitting, this CL also moves the gobindPreamble
to the beginning of each generated file consistently.

It turned out bind omits formatting for some go files (generated
for reverse binding). That needs to be fixed but it is a much
bigger fix. Thus, in this CL, we apply the formatting on the
bind's output as well.

This CL also updates the gobindPreamble to follow the style guide
for generated code. https://golang.org/s/generatedcode

Fixes golang/go#34619

Change-Id: Ia2957693154face2848e051ebbb2373e95d79593
Reviewed-on: https://go-review.googlesource.com/c/mobile/+/198322
Run-TryBot: Hyang-Ah Hana Kim <hyangah@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Bryan C. Mills <bcmills@google.com>
2019-10-02 17:59:09 +00:00

111 lines
3.0 KiB
Plaintext

// Code generated by gobind. DO NOT EDIT.
// Java class issue10788.TestStruct is a proxy for talking to a Go program.
//
// autogenerated by gobind -lang=java issue10788
package issue10788;
import go.Seq;
public final class TestStruct implements Seq.Proxy {
static { Issue10788.touch(); }
private final int refnum;
@Override public final int incRefnum() {
Seq.incGoRef(refnum, this);
return refnum;
}
TestStruct(int refnum) { this.refnum = refnum; Seq.trackGoRef(refnum, this); }
public TestStruct() { this.refnum = __New(); Seq.trackGoRef(refnum, this); }
private static native int __New();
public final native String getValue();
public final native void setValue(String v);
@Override public boolean equals(Object o) {
if (o == null || !(o instanceof TestStruct)) {
return false;
}
TestStruct that = (TestStruct)o;
String thisValue = getValue();
String thatValue = that.getValue();
if (thisValue == null) {
if (thatValue != null) {
return false;
}
} else if (!thisValue.equals(thatValue)) {
return false;
}
return true;
}
@Override public int hashCode() {
return java.util.Arrays.hashCode(new Object[] {getValue()});
}
@Override public String toString() {
StringBuilder b = new StringBuilder();
b.append("TestStruct").append("{");
b.append("Value:").append(getValue()).append(",");
return b.append("}").toString();
}
}
// Code generated by gobind. DO NOT EDIT.
// Java class issue10788.TestInterface is a proxy for talking to a Go program.
//
// autogenerated by gobind -lang=java issue10788
package issue10788;
import go.Seq;
public interface TestInterface {
public void doSomeWork(TestStruct s);
public void multipleUnnamedParams(long p0, String p1, long p2);
}
// Code generated by gobind. DO NOT EDIT.
// Java class issue10788.Issue10788 is a proxy for talking to a Go program.
//
// autogenerated by gobind -lang=java issue10788
package issue10788;
import go.Seq;
public abstract class Issue10788 {
static {
Seq.touch(); // for loading the native library
_init();
}
private Issue10788() {} // uninstantiable
// touch is called from other bound packages to initialize this package
public static void touch() {}
private static native void _init();
private static final class proxyTestInterface implements Seq.Proxy, TestInterface {
private final int refnum;
@Override public final int incRefnum() {
Seq.incGoRef(refnum, this);
return refnum;
}
proxyTestInterface(int refnum) { this.refnum = refnum; Seq.trackGoRef(refnum, this); }
public native void doSomeWork(TestStruct s);
public native void multipleUnnamedParams(long p0, String p1, long p2);
}
}