From aaaf404f08b05c2c3a19c55755a2ef673ce01d1c Mon Sep 17 00:00:00 2001 From: Paul McCarthy <pauldmccarthy@gmail.com> Date: Wed, 26 Jul 2017 17:36:52 +0100 Subject: [PATCH] Regression test for skipUnchanged --- tests/test_memoize.py | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/tests/test_memoize.py b/tests/test_memoize.py index 63ce1a267..09003acee 100644 --- a/tests/test_memoize.py +++ b/tests/test_memoize.py @@ -5,6 +5,7 @@ # Author: Paul McCarthy <pauldmccarthy@gmail.com> # +import collections import six import numpy as np @@ -90,11 +91,7 @@ def test_skipUnchanged(): """ """ - timesCalled = { - 'key1' : 0, - 'key2' : 0, - 'key3' : 0, - } + timesCalled = collections.defaultdict(lambda: 0) def setter(name, value): timesCalled[name] = timesCalled[name] + 1 @@ -165,6 +162,22 @@ def test_skipUnchanged(): assert timesCalled['key2'] == 5 assert timesCalled['key3'] == 5 + # Regression - zero + # sized numpy arrays + # could previously be + # tested incorrectly + # because e.g. + # + # np.all(np.zeros((0, 3)), np.ones((1, 3)) + # + # evaluates to True + wrapped('key4', np.zeros((0, 4))) + assert timesCalled['key4'] == 1 + wrapped('key4', np.zeros((1, 4))) + assert timesCalled['key4'] == 2 + + + def test_Instanceify(): -- GitLab