< prev index next >
test/jdk/com/sun/tools/jextract/Runner.java
Print this page
*** 19,31 ****
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
- import java.nicl.metadata.C;
- import java.nicl.metadata.CallingConvention;
import java.nicl.metadata.NativeHeader;
import java.nicl.metadata.NativeType;
import java.nicl.metadata.Offset;
import java.nio.file.Files;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
--- 19,31 ----
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
import java.nicl.metadata.NativeHeader;
+ import java.nicl.metadata.NativeLocation;
+ import java.nicl.metadata.NativeStruct;
import java.nicl.metadata.NativeType;
import java.nicl.metadata.Offset;
import java.nio.file.Files;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
*** 138,148 ****
}
assertEquals(files, mfm.listClasses());
}
! private void verifyAnnotationC(C actual, C expected) {
// Only check the filename, not full path
assertNotNull(actual);
assertNotNull(expected);
assertEquals(Paths.get(actual.file()).getFileName(),
Paths.get(expected.file()).getFileName());
--- 138,148 ----
}
assertEquals(files, mfm.listClasses());
}
! private void verifyNativeLocation(NativeLocation actual, NativeLocation expected) {
// Only check the filename, not full path
assertNotNull(actual);
assertNotNull(expected);
assertEquals(Paths.get(actual.file()).getFileName(),
Paths.get(expected.file()).getFileName());
*** 155,172 ****
Annotation[] ea = expected.getAnnotations();
// allow test case has extra annotation used by test case
assertTrue(ea.length >= aa.length);
for (Annotation a: ea) {
! if (a instanceof C) {
! verifyAnnotationC(actual.getAnnotation(C.class), (C) a);
} else if (a instanceof NativeType) {
assertEquals(actual.getAnnotation(NativeType.class), (NativeType) a);
} else if (a instanceof Offset) {
assertEquals(actual.getAnnotation(Offset.class), (Offset) a);
- } else if (a instanceof CallingConvention) {
- assertNotNull(actual.getAnnotation(CallingConvention.class));
}
}
}
@Test(dataProvider = "classes")
--- 155,170 ----
Annotation[] ea = expected.getAnnotations();
// allow test case has extra annotation used by test case
assertTrue(ea.length >= aa.length);
for (Annotation a: ea) {
! if (a instanceof NativeLocation) {
! verifyNativeLocation(actual.getAnnotation(NativeLocation.class), (NativeLocation) a);
} else if (a instanceof NativeType) {
assertEquals(actual.getAnnotation(NativeType.class), (NativeType) a);
} else if (a instanceof Offset) {
assertEquals(actual.getAnnotation(Offset.class), (Offset) a);
}
}
}
@Test(dataProvider = "classes")
*** 211,230 ****
assertTrue(expected.isMemberClass());
assertTrue(actual.isMemberClass());
NativeType ant = actual.getAnnotation(NativeType.class);
assertNotNull(ant);
assertEquals(ant, expected.getAnnotation(NativeType.class));
! C ac = actual.getAnnotation(C.class);
! assertNotNull(ac);
! verifyAnnotationC(ac, expected.getAnnotation(C.class));
} else {
NativeHeader ah = actual.getAnnotation(NativeHeader.class);
assertNotNull(ah);
NativeHeader eh = actual.getAnnotation(NativeHeader.class);
assertNotNull(eh);
! assertEquals(Paths.get(ah.headerPath()).getFileName(),
! Paths.get(eh.headerPath()).getFileName());
}
}
private void AsmCheckClass(String name) {
--- 209,228 ----
assertTrue(expected.isMemberClass());
assertTrue(actual.isMemberClass());
NativeType ant = actual.getAnnotation(NativeType.class);
assertNotNull(ant);
assertEquals(ant, expected.getAnnotation(NativeType.class));
! NativeLocation loc = actual.getAnnotation(NativeLocation.class);
! assertNotNull(loc);
! verifyNativeLocation(loc, expected.getAnnotation(NativeLocation.class));
} else {
NativeHeader ah = actual.getAnnotation(NativeHeader.class);
assertNotNull(ah);
NativeHeader eh = actual.getAnnotation(NativeHeader.class);
assertNotNull(eh);
! assertEquals(Paths.get(ah.path()).getFileName(),
! Paths.get(eh.path()).getFileName());
}
}
private void AsmCheckClass(String name) {
< prev index next >