diff --git a/nd4j/nd4j-backends/nd4j-tests/src/test/java/org/nd4j/linalg/mixed/MixedDataTypesTests.java b/nd4j/nd4j-backends/nd4j-tests/src/test/java/org/nd4j/linalg/mixed/MixedDataTypesTests.java index 548eace9647b..77ca37a9c88a 100644 --- a/nd4j/nd4j-backends/nd4j-tests/src/test/java/org/nd4j/linalg/mixed/MixedDataTypesTests.java +++ b/nd4j/nd4j-backends/nd4j-tests/src/test/java/org/nd4j/linalg/mixed/MixedDataTypesTests.java @@ -464,4 +464,22 @@ public void testWorkspaceBool(){ } } } + + @Test + public void testArrayCreationFromPointer() { + val source = Nd4j.create(new double[]{1, 2, 3, 4, 5}); + + val pAddress = source.data().addressPointer(); + val shape = source.shape(); + val stride = source.stride(); + val order = source.ordering(); + + val buffer = Nd4j.createBuffer(pAddress, source.length(), source.dataType()); + val restored = Nd4j.create(buffer, shape, stride, 0, order, source.dataType()); + assertEquals(source, restored); + + assertArrayEquals(source.toDoubleVector(), restored.toDoubleVector(), 1e-5); + + assertEquals(source.getDouble(0), restored.getDouble(0), 1e-5); + } }