Merge lp:~jfpacker/pyeigen/bugfixes-0.1 into lp:pyeigen

Proposed by Jussi Lepistö
Status: Merged
Approved by: Jussi Lepistö
Approved revision: 26
Merged at revision: not available
Proposed branch: lp:~jfpacker/pyeigen/bugfixes-0.1
Merge into: lp:pyeigen
Diff against target: 385 lines (+91/-15)
18 files modified
source/matrix/matrix2f.cpp (+2/-1)
source/matrix/matrix3f.cpp (+3/-3)
source/matrix/matrix4f.cpp (+5/-5)
source/vector/rowvector2f.cpp (+1/-1)
source/vector/rowvector3f.cpp (+1/-1)
source/vector/rowvector4f.cpp (+1/-1)
source/vector/vector2f.cpp (+1/-1)
source/vector/vector3f.cpp (+1/-1)
source/vector/vector4f.cpp (+1/-1)
test/test_matrix2f.py (+8/-0)
test/test_matrix3f.py (+9/-0)
test/test_matrix4f.py (+10/-0)
test/test_rowvector2f.py (+8/-0)
test/test_rowvector3f.py (+8/-0)
test/test_rowvector4f.py (+8/-0)
test/test_vector2f.py (+8/-0)
test/test_vector3f.py (+8/-0)
test/test_vector4f.py (+8/-0)
To merge this branch: bzr merge lp:~jfpacker/pyeigen/bugfixes-0.1
Reviewer Review Type Date Requested Status
Jussi Lepistö Approve
Review via email: mp+22324@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Jussi Lepistö (knarkles) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'source/matrix/matrix2f.cpp'
2--- source/matrix/matrix2f.cpp 2010-03-24 06:58:18 +0000
3+++ source/matrix/matrix2f.cpp 2010-03-28 11:05:35 +0000
4@@ -646,7 +646,8 @@
5 {
6 char buffer[1024];
7 snprintf(buffer, 1024, "Matrix2f(%f, %f,\n %f, %f)",
8- self->matrix[0], self->matrix[1], self->matrix[2], self->matrix[3]);
9+ self->matrix[0], self->matrix[2],
10+ self->matrix[1], self->matrix[3]);
11 #if PY_VERSION_HEX < 0x03000000
12 return PyString_FromString(buffer);
13 #else
14
15=== modified file 'source/matrix/matrix3f.cpp'
16--- source/matrix/matrix3f.cpp 2010-03-25 01:48:45 +0000
17+++ source/matrix/matrix3f.cpp 2010-03-28 11:05:35 +0000
18@@ -701,9 +701,9 @@
19 {
20 char buffer[1024];
21 snprintf(buffer, 1024, "Matrix3f(%f, %f, %f,\n %f, %f, %f,\n %f, %f, %f)",
22- self->matrix[0], self->matrix[1], self->matrix[2],
23- self->matrix[3], self->matrix[4], self->matrix[5],
24- self->matrix[6], self->matrix[7], self->matrix[8]);
25+ self->matrix[0], self->matrix[3], self->matrix[6],
26+ self->matrix[1], self->matrix[4], self->matrix[7],
27+ self->matrix[2], self->matrix[5], self->matrix[8]);
28 #if PY_VERSION_HEX < 0x03000000
29 return PyString_FromString(buffer);
30 #else
31
32=== modified file 'source/matrix/matrix4f.cpp'
33--- source/matrix/matrix4f.cpp 2010-03-24 06:58:18 +0000
34+++ source/matrix/matrix4f.cpp 2010-03-28 11:05:35 +0000
35@@ -164,7 +164,7 @@
36 "4x4 fixed-size matrix with float elements", // tp_doc
37 0, // tp_traverse
38 0, // tp_clear
39- Matrix3f_richcompare, // tp_richcompare
40+ Matrix4f_richcompare, // tp_richcompare
41 0, // tp_weaklistoffset
42 0, // tp_iter
43 0, // tp_iternext
44@@ -757,10 +757,10 @@
45 {
46 char buffer[1024];
47 snprintf(buffer, 1024, "Matrix4f(%f, %f, %f, %f,\n %f, %f, %f, %f,\n %f, %f, %f, %f,\n %f, %f, %f, %f)",
48- self->matrix[0], self->matrix[1], self->matrix[2], self->matrix[3],
49- self->matrix[4], self->matrix[5], self->matrix[6], self->matrix[7],
50- self->matrix[8], self->matrix[9], self->matrix[10], self->matrix[11],
51- self->matrix[12], self->matrix[13], self->matrix[14], self->matrix[15]);
52+ self->matrix[0], self->matrix[4], self->matrix[8], self->matrix[12],
53+ self->matrix[1], self->matrix[5], self->matrix[9], self->matrix[13],
54+ self->matrix[2], self->matrix[6], self->matrix[10], self->matrix[14],
55+ self->matrix[3], self->matrix[7], self->matrix[11], self->matrix[15]);
56 #if PY_VERSION_HEX < 0x03000000
57 return PyString_FromString(buffer);
58 #else
59
60=== modified file 'source/vector/rowvector2f.cpp'
61--- source/vector/rowvector2f.cpp 2010-03-25 07:33:59 +0000
62+++ source/vector/rowvector2f.cpp 2010-03-28 11:05:35 +0000
63@@ -620,7 +620,7 @@
64 if(index < 0 || index >= 2)
65 {
66 PyErr_SetString(PyExc_IndexError, "index out of range");
67- return NULL;
68+ return -1;
69 }
70
71 self->vector[(int)index] = (float)PyFloat_AsDouble(value);
72
73=== modified file 'source/vector/rowvector3f.cpp'
74--- source/vector/rowvector3f.cpp 2010-03-25 07:33:59 +0000
75+++ source/vector/rowvector3f.cpp 2010-03-28 11:05:35 +0000
76@@ -665,7 +665,7 @@
77 if(index < 0 || index >= 3)
78 {
79 PyErr_SetString(PyExc_IndexError, "index out of range");
80- return NULL;
81+ return -1;
82 }
83
84 self->vector[(int)index] = (float)PyFloat_AsDouble(value);
85
86=== modified file 'source/vector/rowvector4f.cpp'
87--- source/vector/rowvector4f.cpp 2010-03-25 07:33:59 +0000
88+++ source/vector/rowvector4f.cpp 2010-03-28 11:05:35 +0000
89@@ -675,7 +675,7 @@
90 if(index < 0 || index >= 4)
91 {
92 PyErr_SetString(PyExc_IndexError, "index out of range");
93- return NULL;
94+ return -1;
95 }
96
97 self->vector[(int)index] = (float)PyFloat_AsDouble(value);
98
99=== modified file 'source/vector/vector2f.cpp'
100--- source/vector/vector2f.cpp 2010-03-25 07:33:59 +0000
101+++ source/vector/vector2f.cpp 2010-03-28 11:05:35 +0000
102@@ -613,7 +613,7 @@
103 if(index < 0 || index >= 2)
104 {
105 PyErr_SetString(PyExc_IndexError, "index out of range");
106- return NULL;
107+ return -1;
108 }
109
110 self->vector[(int)index] = (float)PyFloat_AsDouble(value);
111
112=== modified file 'source/vector/vector3f.cpp'
113--- source/vector/vector3f.cpp 2010-03-25 07:33:59 +0000
114+++ source/vector/vector3f.cpp 2010-03-28 11:05:35 +0000
115@@ -657,7 +657,7 @@
116 if(index < 0 || index >= 3)
117 {
118 PyErr_SetString(PyExc_IndexError, "index out of range");
119- return NULL;
120+ return -1;
121 }
122
123 self->vector[(int)index] = (float)PyFloat_AsDouble(value);
124
125=== modified file 'source/vector/vector4f.cpp'
126--- source/vector/vector4f.cpp 2010-03-25 07:33:59 +0000
127+++ source/vector/vector4f.cpp 2010-03-28 11:05:35 +0000
128@@ -666,7 +666,7 @@
129 if(index < 0 || index >= 4)
130 {
131 PyErr_SetString(PyExc_IndexError, "index out of range");
132- return NULL;
133+ return -1;
134 }
135
136 self->vector[(int)index] = (float)PyFloat_AsDouble(value);
137
138=== modified file 'test/test_matrix2f.py'
139--- test/test_matrix2f.py 2010-03-25 06:56:55 +0000
140+++ test/test_matrix2f.py 2010-03-28 11:05:35 +0000
141@@ -61,6 +61,8 @@
142 -3, -4)
143 self.m2 = Matrix2f(-5, -6,
144 -7, -8)
145+ self.m3 = Matrix2f(-1, -2,
146+ -3, -4)
147
148 def test_set(self):
149 self.m1.set(1, 2,
150@@ -207,10 +209,16 @@
151 def test_eq(self):
152 self.assert_(self.m1 == self.m1)
153 self.assertFalse(self.m1 == self.m2)
154+ self.assertEqual(self.m1, self.m3)
155
156 def test_ne(self):
157 self.assertFalse(self.m1 != self.m1)
158 self.assert_(self.m1 != self.m2)
159+ self.assertFalse(self.m1 != self.m3)
160+
161+ def test_repr(self):
162+ newMatrix = eval(repr(self.m1))
163+ self.assertEqual(newMatrix, self.m1)
164
165 if __name__ == '__main__':
166 unittest.main()
167
168=== modified file 'test/test_matrix3f.py'
169--- test/test_matrix3f.py 2010-03-24 06:58:18 +0000
170+++ test/test_matrix3f.py 2010-03-28 11:05:35 +0000
171@@ -69,6 +69,9 @@
172 self.m2 = Matrix3f(-9, -8, -7,
173 -6, -5, -4,
174 -3, -2, -1)
175+ self.m3 = Matrix3f(-1, -2, -3,
176+ -4, -5, -6,
177+ -7, -8, -9)
178
179 def test_set(self):
180 self.m1.set(1, 2, 3,
181@@ -244,10 +247,16 @@
182 def test_eq(self):
183 self.assert_(self.m1 == self.m1)
184 self.assertFalse(self.m1 == self.m2)
185+ self.assertEqual(self.m1, self.m3)
186
187 def test_ne(self):
188 self.assertFalse(self.m1 != self.m1)
189 self.assert_(self.m1 != self.m2)
190+ self.assertFalse(self.m1 != self.m3)
191+
192+ def test_repr(self):
193+ newMatrix = eval(repr(self.m1))
194+ self.assertEqual(newMatrix, self.m1)
195
196 if __name__ == '__main__':
197 unittest.main()
198
199=== modified file 'test/test_matrix4f.py'
200--- test/test_matrix4f.py 2010-03-24 06:58:18 +0000
201+++ test/test_matrix4f.py 2010-03-28 11:05:35 +0000
202@@ -79,6 +79,10 @@
203 -12, -11, -10, -9,
204 -8, -7, -6, -5,
205 -4, -3, -2, -1)
206+ self.m3 = Matrix4f(-1, -2, -3, -4,
207+ -5, -6, -7, -8,
208+ -9, -10, -11, -12,
209+ -13, -14, -15, -16)
210
211 def test_set(self):
212 self.m1.set(1, 2, 3, 4,
213@@ -304,10 +308,16 @@
214 def test_eq(self):
215 self.assert_(self.m1 == self.m1)
216 self.assertFalse(self.m1 == self.m2)
217+ self.assertEqual(self.m1, self.m3)
218
219 def test_ne(self):
220 self.assertFalse(self.m1 != self.m1)
221 self.assert_(self.m1 != self.m2)
222+ self.assertFalse(self.m1 != self.m3)
223+
224+ def test_repr(self):
225+ newMatrix = eval(repr(self.m1))
226+ self.assertEqual(newMatrix, self.m1)
227
228 if __name__ == '__main__':
229 unittest.main()
230
231=== modified file 'test/test_rowvector2f.py'
232--- test/test_rowvector2f.py 2010-03-25 06:56:55 +0000
233+++ test/test_rowvector2f.py 2010-03-28 11:05:35 +0000
234@@ -181,6 +181,10 @@
235 self.v1.y = 2
236 self.assertEqual(self.v1.x, 1)
237 self.assertEqual(self.v1.y, 2)
238+ self.assertRaises(IndexError, self.v1.__setitem__, 2, 999.99)
239+ self.assertRaises(IndexError, self.v1.__setitem__, 100, 999.99)
240+ self.assertRaises(IndexError, self.v1.__setitem__, -3, 999.99)
241+ self.assertRaises(IndexError, self.v1.__setitem__, -100, 999.99)
242
243 def test_set_slice(self):
244 self.v1[:] = 1, 2
245@@ -198,6 +202,10 @@
246 def test_iter(self):
247 for i, value in enumerate(self.v1):
248 self.assertEqual(value, self.v1[i])
249+
250+ def test_repr(self):
251+ newVector = eval(repr(self.v1))
252+ self.assertEqual(newVector, self.v1)
253
254 if __name__ == '__main__':
255 unittest.main()
256
257=== modified file 'test/test_rowvector3f.py'
258--- test/test_rowvector3f.py 2010-03-25 06:56:55 +0000
259+++ test/test_rowvector3f.py 2010-03-28 11:05:35 +0000
260@@ -222,6 +222,10 @@
261 self.assertEqual(self.v1.x, 1)
262 self.assertEqual(self.v1.y, 2)
263 self.assertEqual(self.v1.z, 3)
264+ self.assertRaises(IndexError, self.v1.__setitem__, 3, 999.99)
265+ self.assertRaises(IndexError, self.v1.__setitem__, 100, 999.99)
266+ self.assertRaises(IndexError, self.v1.__setitem__, -4, 999.99)
267+ self.assertRaises(IndexError, self.v1.__setitem__, -100, 999.99)
268
269 def test_set_slice(self):
270 self.v1[:] = 1, 2, 3
271@@ -240,6 +244,10 @@
272 def test_iter(self):
273 for i, value in enumerate(self.v1):
274 self.assertEqual(value, self.v1[i])
275+
276+ def test_repr(self):
277+ newVector = eval(repr(self.v1))
278+ self.assertEqual(newVector, self.v1)
279
280 if __name__ == '__main__':
281 unittest.main()
282
283=== modified file 'test/test_rowvector4f.py'
284--- test/test_rowvector4f.py 2010-03-25 06:56:55 +0000
285+++ test/test_rowvector4f.py 2010-03-28 11:05:35 +0000
286@@ -265,6 +265,10 @@
287 self.assertEqual(self.v1.y, 2)
288 self.assertEqual(self.v1.z, 3)
289 self.assertEqual(self.v1.w, 4)
290+ self.assertRaises(IndexError, self.v1.__setitem__, 4, 999.99)
291+ self.assertRaises(IndexError, self.v1.__setitem__, 100, 999.99)
292+ self.assertRaises(IndexError, self.v1.__setitem__, -5, 999.99)
293+ self.assertRaises(IndexError, self.v1.__setitem__, -100, 999.99)
294
295 def test_set_slice(self):
296 self.v1[:] = 1, 2, 3, 4
297@@ -284,6 +288,10 @@
298 def test_iter(self):
299 for i, value in enumerate(self.v1):
300 self.assertEqual(value, self.v1[i])
301+
302+ def test_repr(self):
303+ newVector = eval(repr(self.v1))
304+ self.assertEqual(newVector, self.v1)
305
306 if __name__ == '__main__':
307 unittest.main()
308
309=== modified file 'test/test_vector2f.py'
310--- test/test_vector2f.py 2010-03-25 06:56:55 +0000
311+++ test/test_vector2f.py 2010-03-28 11:05:35 +0000
312@@ -188,6 +188,10 @@
313 self.v1.y = 2
314 self.assertEqual(self.v1.x, 1)
315 self.assertEqual(self.v1.y, 2)
316+ self.assertRaises(IndexError, self.v1.__setitem__, 2, 999.99)
317+ self.assertRaises(IndexError, self.v1.__setitem__, 100, 999.99)
318+ self.assertRaises(IndexError, self.v1.__setitem__, -3, 999.99)
319+ self.assertRaises(IndexError, self.v1.__setitem__, -100, 999.99)
320
321 def test_set_slice(self):
322 self.v1[:] = 1, 2
323@@ -205,6 +209,10 @@
324 def test_iter(self):
325 for i, value in enumerate(self.v1):
326 self.assertEqual(value, self.v1[i])
327+
328+ def test_repr(self):
329+ newVector = eval(repr(self.v1))
330+ self.assertEqual(newVector, self.v1)
331
332 if __name__ == '__main__':
333 unittest.main()
334
335=== modified file 'test/test_vector3f.py'
336--- test/test_vector3f.py 2010-03-25 06:56:55 +0000
337+++ test/test_vector3f.py 2010-03-28 11:05:35 +0000
338@@ -240,6 +240,10 @@
339 self.assertEqual(self.v1.x, 1)
340 self.assertEqual(self.v1.y, 2)
341 self.assertEqual(self.v1.z, 3)
342+ self.assertRaises(IndexError, self.v1.__setitem__, 3, 999.99)
343+ self.assertRaises(IndexError, self.v1.__setitem__, 100, 999.99)
344+ self.assertRaises(IndexError, self.v1.__setitem__, -4, 999.99)
345+ self.assertRaises(IndexError, self.v1.__setitem__, -100, 999.99)
346
347 def test_set_slice(self):
348 self.v1[:] = 1, 2, 3
349@@ -258,6 +262,10 @@
350 def test_iter(self):
351 for i, value in enumerate(self.v1):
352 self.assertEqual(value, self.v1[i])
353+
354+ def test_repr(self):
355+ newVector = eval(repr(self.v1))
356+ self.assertEqual(newVector, self.v1)
357
358 if __name__ == '__main__':
359 unittest.main()
360
361=== modified file 'test/test_vector4f.py'
362--- test/test_vector4f.py 2010-03-25 06:56:55 +0000
363+++ test/test_vector4f.py 2010-03-28 11:05:35 +0000
364@@ -272,6 +272,10 @@
365 self.assertEqual(self.v1.y, 2)
366 self.assertEqual(self.v1.z, 3)
367 self.assertEqual(self.v1.w, 4)
368+ self.assertRaises(IndexError, self.v1.__setitem__, 4, 999.99)
369+ self.assertRaises(IndexError, self.v1.__setitem__, 100, 999.99)
370+ self.assertRaises(IndexError, self.v1.__setitem__, -5, 999.99)
371+ self.assertRaises(IndexError, self.v1.__setitem__, -100, 999.99)
372
373 def test_set_slice(self):
374 self.v1[:] = 1, 2, 3, 4
375@@ -291,6 +295,10 @@
376 def test_iter(self):
377 for i, value in enumerate(self.v1):
378 self.assertEqual(value, self.v1[i])
379+
380+ def test_repr(self):
381+ newVector = eval(repr(self.v1))
382+ self.assertEqual(newVector, self.v1)
383
384 if __name__ == '__main__':
385 unittest.main()

Subscribers

People subscribed via source and target branches

to all changes: