Gentoo Archives: gentoo-commits

From: "Justin Lecher (jlec)" <jlec@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-python/mpi4py/files: mpi4py-1.3.1-py3-test-backport-1.patch
Date: Thu, 21 Nov 2013 09:38:41
Message-Id: 20131121093832.C39DC2004B@flycatcher.gentoo.org
1 jlec 13/11/21 09:38:32
2
3 Added: mpi4py-1.3.1-py3-test-backport-1.patch
4 Log:
5 dev-python/mpi4py: Backport test fix for py3.3, #487836
6
7 (Portage version: 2.2.7/cvs/Linux x86_64, signed Manifest commit with key B9D4F231BD1558AB!)
8
9 Revision Changes Path
10 1.1 dev-python/mpi4py/files/mpi4py-1.3.1-py3-test-backport-1.patch
11
12 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-python/mpi4py/files/mpi4py-1.3.1-py3-test-backport-1.patch?rev=1.1&view=markup
13 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-python/mpi4py/files/mpi4py-1.3.1-py3-test-backport-1.patch?rev=1.1&content-type=text/plain
14
15 Index: mpi4py-1.3.1-py3-test-backport-1.patch
16 ===================================================================
17 test/test_win.py | 48 +++++++++++++++++++++++++++++++++++++-----------
18 1 file changed, 37 insertions(+), 11 deletions(-)
19
20 diff --git a/test/test_win.py b/test/test_win.py
21 index 6da5c1f..7127e56 100644
22 --- a/test/test_win.py
23 +++ b/test/test_win.py
24 @@ -1,6 +1,30 @@
25 import sys
26 from mpi4py import MPI
27 import mpiunittest as unittest
28 +try:
29 + from sys import getrefcount
30 +except ImportError:
31 + class getrefcount(object):
32 + def __init__(self, arg):
33 + pass
34 + def __eq__(self, other):
35 + return True
36 + def __add__(self, other):
37 + return self
38 + def __sub__(self, other):
39 + return self
40 +
41 +def memzero(m):
42 + n = len(m)
43 + if n == 0: return
44 + try:
45 + zero = '\0'.encode('ascii')
46 + m[0] = zero
47 + except TypeError:
48 + zero = 0
49 + m[0] = zero
50 + for i in range(n):
51 + m[i] = zero
52
53 class BaseTestWin(object):
54
55 @@ -11,29 +35,31 @@ class BaseTestWin(object):
56 try:
57 self.mpi_memory = MPI.Alloc_mem(10)
58 self.memory = self.mpi_memory
59 - try:
60 - zero = bytearray([0])
61 - except NameError:
62 - zero = str('\0')
63 - self.memory[:] = zero * len(self.memory)
64 + memzero(self.memory)
65 except MPI.Exception:
66 from array import array
67 self.mpi_memory = None
68 self.memory = array('B',[0]*10)
69 - refcnt = sys.getrefcount(self.memory)
70 + refcnt = getrefcount(self.memory)
71 self.WIN = MPI.Win.Create(self.memory, 1, self.INFO, self.COMM)
72 if type(self.memory).__name__ == 'buffer':
73 - self.assertEqual(sys.getrefcount(self.memory), refcnt+1)
74 + self.assertEqual(getrefcount(self.memory), refcnt+1)
75 else:
76 - self.assertEqual(sys.getrefcount(self.memory), refcnt)
77 + if sys.version_info[:3] < (3, 3):
78 + self.assertEqual(getrefcount(self.memory), refcnt)
79 + else:
80 + self.assertEqual(getrefcount(self.memory), refcnt+1)
81
82 def tearDown(self):
83 - refcnt = sys.getrefcount(self.memory)
84 + refcnt = getrefcount(self.memory)
85 self.WIN.Free()
86 if type(self.memory).__name__ == 'buffer':
87 - self.assertEqual(sys.getrefcount(self.memory), refcnt-1)
88 + self.assertEqual(getrefcount(self.memory), refcnt-1)
89 else:
90 - self.assertEqual(sys.getrefcount(self.memory), refcnt)
91 + if sys.version_info[:3] < (3, 3):
92 + self.assertEqual(getrefcount(self.memory), refcnt)
93 + else:
94 + self.assertEqual(getrefcount(self.memory), refcnt-1)
95 if self.mpi_memory:
96 MPI.Free_mem(self.mpi_memory)