From 247b38c94d86f5d01a5d5ba5bdc95fb183f0704f Mon Sep 17 00:00:00 2001 From: Luis Mendes <luis.p.mendes@gmail.com> Date: Mon, 16 Apr 2018 15:40:18 +0100 Subject: [PATCH] Fix: Memory leak by failing to dispose kernel in unit tests for Local array arguments, plus code quality improvements (refs #79 #81) - minor code quality improvement 2 --- .../aparapi/runtime/Issue79LocalArrayArgsTest.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/test/java/com/aparapi/runtime/Issue79LocalArrayArgsTest.java b/src/test/java/com/aparapi/runtime/Issue79LocalArrayArgsTest.java index e77a284f..2d13b5c7 100644 --- a/src/test/java/com/aparapi/runtime/Issue79LocalArrayArgsTest.java +++ b/src/test/java/com/aparapi/runtime/Issue79LocalArrayArgsTest.java @@ -15,13 +15,13 @@ */ package com.aparapi.runtime; -import static org.junit.Assert.assertArrayEquals; - import com.aparapi.Kernel; import com.aparapi.Range; import com.aparapi.device.Device; import com.aparapi.device.OpenCLDevice; import com.aparapi.internal.kernel.KernelManager; + +import static org.junit.Assert.*; import static org.junit.Assume.*; import org.junit.Before; @@ -48,6 +48,7 @@ public class Issue79LocalArrayArgsTest { kernel.setExplicit(false); kernel.setArray(targetArray); kernel.execute(range); + assertTrue(validate()); } finally { kernel.dispose(); } @@ -64,13 +65,13 @@ public class Issue79LocalArrayArgsTest { kernel.put(targetArray); kernel.execute(range); kernel.get(targetArray); - validate(); + assertTrue(validate()); } finally { kernel.dispose(); } } - void validate() { + private boolean validate() { int[] expected = new int[SIZE]; for (int threadId = 0; threadId < SIZE; threadId++) { for (int i = 0; i < SIZE; i++) { @@ -80,6 +81,8 @@ public class Issue79LocalArrayArgsTest { } assertArrayEquals("targetArray", expected, targetArray); + + return true; } public static class LocalArrayArgsKernel extends Kernel { @@ -91,9 +94,6 @@ public class Issue79LocalArrayArgsTest { @PrivateMemorySpace(SIZE) private int[] other_$private$ = new int[SIZE]; - public LocalArrayArgsKernel() { - } - @NoCL public void setArray(int[] target) { resultArray = target; -- GitLab