diff --git a/ci/scripts/test.sh b/ci/scripts/test.sh
index 0845d645ad5ea44d8376bac0327bbb493c1a7649..632fa58a4e1264c6776618e1312b0a680b096baf 100755
--- a/ci/scripts/test.sh
+++ b/ci/scripts/test.sh
@@ -41,7 +41,7 @@ if [ "$HAS_CACHE_DIR" = true ]; then
     fi
 fi
 
-export PYTHONPATH="$INSTALL_DIR/lib/python2.7/site-packages:$PYTHONPATH"
+export PYTHONPATH="$INSTALL_DIR/lib/python2.7/site-packages:$INSTALL_DIR:$PYTHONPATH"
 export HYSOP_VERBOSE=0
 export HYSOP_DEBUG=0
 export HYSOP_PROFILE=0
diff --git a/hysop/backend/device/opencl/opencl_buffer.py b/hysop/backend/device/opencl/opencl_buffer.py
index 42b7e52eb21c58026aa94c81aeb47e23592890a5..322e2d86c001e75680cbdeb260577a96a3bc6584 100644
--- a/hysop/backend/device/opencl/opencl_buffer.py
+++ b/hysop/backend/device/opencl/opencl_buffer.py
@@ -61,6 +61,9 @@ class OpenClBuffer(DeviceBuffer, cl.Buffer):
         super(OpenClBuffer, self).release()
 
 class OpenClPooledBuffer(PooledBuffer, cl.MemoryObjectHolder):
+    def __init__(self, *args, **kwds):
+        super(OpenClPooledBuffer, self).__init__(*args, **kwds)
+
     def get_ptr(self):
         return self._bufview.ptr
     ptr = property(get_ptr)
diff --git a/hysop/core/arrays/tests/test_array.py b/hysop/core/arrays/tests/test_array.py
index b8da5d64b2a673777eea20af92d0ff957ec9df19..cca81b5d627b97fda68c1567d0169af8cfc3b7b0 100644
--- a/hysop/core/arrays/tests/test_array.py
+++ b/hysop/core/arrays/tests/test_array.py
@@ -826,7 +826,7 @@ class TestArray(object):
 if __name__ == '__main__':
     test = TestArray()
     test.test_host_array_backend_allocator()
-    test.test_host_array_backend_mempool()
+    #test.test_host_array_backend_mempool()
     if __HAS_OPENCL_BACKEND__:
         test.test_opencl_array_backend_allocator()
-        test.test_opencl_array_backend_pool()
+        #test.test_opencl_array_backend_pool()
diff --git a/hysop/core/memory/buffer.py b/hysop/core/memory/buffer.py
index c95c52c6e58fa4ae1def9f61dfe25c218d4a3360..9014bb58bc2f23bb8fe2ff636a10097821ee1e3b 100644
--- a/hysop/core/memory/buffer.py
+++ b/hysop/core/memory/buffer.py
@@ -124,7 +124,7 @@ class PooledBuffer(Buffer):
     def __del__(self):
         if PooledBuffer._DEBUG:
             print 'pooled buffer __del__() (id={})'.format(id(self))
-        if (self._buf is not None):
+        if hasattr(self, '_buf') and (self._buf is not None):
             self.release()
 
     buf     = property(get_buf)
diff --git a/hysop/core/memory/mempool.py b/hysop/core/memory/mempool.py
index cb9a6a85f174b08242f038e8121ed867f0edfd30..75e5f62afcded9600b71e1da433de6156624814e 100644
--- a/hysop/core/memory/mempool.py
+++ b/hysop/core/memory/mempool.py
@@ -77,7 +77,9 @@ class MemoryPool(object):
 
         max_alloc_bytes = max_alloc_bytes or default_limit
         verbose = verbose if isinstance(verbose,bool) else __DEBUG__
-
+        
+        if isinstance(name, unicode):
+            name = str(name)
         check_instance(name, str)
         check_instance(mantissa_bits, int)
         check_instance(max_alloc_bytes,(int,long), allow_none=True)
diff --git a/hysop/operator/base/spectral_operator.py b/hysop/operator/base/spectral_operator.py
index 205fbee2bbb03fdcc39e75537252b1e64f97f47e..1113a7d27dac98b3d583996c570e00c015201299 100644
--- a/hysop/operator/base/spectral_operator.py
+++ b/hysop/operator/base/spectral_operator.py
@@ -1463,8 +1463,8 @@ class PlannedSpectralTransform(object):
         # with temporary buffers.
         tmp_nbytes = 0
         tg  = self.transform_group
-        src = self.backend.empty(shape=(nbytes,), dtype=np.uint8)
-        dst = self.backend.empty(shape=(nbytes,), dtype=np.uint8)
+        src = tg.FFTI.backend.empty(shape=(nbytes,), dtype=np.uint8)
+        dst = tg.FFTI.backend.empty(shape=(nbytes,), dtype=np.uint8)
         queue = tg.FFTI.new_queue(tg=tg, name='tmp_queue')
         for (_, tr, (src_shape, src_dtype, src_view), 
                     (dst_shape, dst_dtype, dst_view)) in self._transform_info:
diff --git a/test_ci.sh b/test_ci.sh
new file mode 100755
index 0000000000000000000000000000000000000000..6d4c7e65d4ee25936afe3726269f547f0cd9a022
--- /dev/null
+++ b/test_ci.sh
@@ -0,0 +1,12 @@
+#!/bin/bash
+set -e
+
+if [ -z "$HYSOP_ROOT" ]; then
+    HYSOP_ROOT=$(pwd)
+    echo "Warning: HYSOP_ROOT has not been set."
+    echo "Setting HYSOP_ROOT to '$HYSOP_ROOT'"
+fi
+
+$HYSOP_ROOT/ci/scripts/test.sh $HYSOP_ROOT $HYSOP_ROOT/hysop
+
+exit 0