From dfa638fd08d09bc61cb49c4c445ec0f26075e784 Mon Sep 17 00:00:00 2001
From: Tue Herlau <tuhe@dtu.dk>
Date: Wed, 20 Jan 2021 21:54:32 +0100
Subject: [PATCH]  Updates

---
 unitgrade/__pycache__/__init__.cpython-38.pyc   | Bin 0 -> 1028 bytes
 unitgrade/__pycache__/unitgrade.cpython-38.pyc  | Bin 0 -> 11755 bytes
 .../unitgrade_helpers.cpython-38.pyc            | Bin 0 -> 5615 bytes
 unitgrade/unitgrade.py                          |   2 +-
 4 files changed, 1 insertion(+), 1 deletion(-)
 create mode 100644 unitgrade/__pycache__/__init__.cpython-38.pyc
 create mode 100644 unitgrade/__pycache__/unitgrade.cpython-38.pyc
 create mode 100644 unitgrade/__pycache__/unitgrade_helpers.cpython-38.pyc

diff --git a/unitgrade/__pycache__/__init__.cpython-38.pyc b/unitgrade/__pycache__/__init__.cpython-38.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..ea7fab3ee224d014987a14065e10c0c0a84a47c1
GIT binary patch
literal 1028
zcmWIL<>g{vU|`si&YsZ1%)sy%#6iZ)3=9ko3=9m#UJMKjDGX5zDU2yhIgC+^V45k4
zDTO<QC55$xF^V~bErq>>A&Mo1BZaetA&NDHF@-CKEtfrtJ(nYjBbPIZGnXrhi;*FP
zDVRZ%r;61;&p^-eCCD<rkYtcOASMX2GB7Z3GB7YWgX~RXU|=X=$YNZ;RKvKCv6dOk
zX0Bmg$XKjY!mxk^#A0NqVJb2xVNGGIVQgk%WGG>)VN79aX6hHKWhr6L;;3P$VM$?5
zVd-UNWC&+4We8*lVu%3gNh)DYVQpq)WJqBMX3%8ws}cw=$}GvuOIJuvOwLHv)6=`f
zRGxH;C8sJkaV6s|?&SR3f}+&o;>`TKDpr^Lyi`R^&Rb0R#kW`r5=$~}v8QAf<t65(
z-eOCw$Sf`?zQvlGoswB}i?yIAGq2<pOMXFW-YtHZA@K#7$=Nxnw^&k2a|<+CZ?WYk
zWu+#U+~Q2j%t?(0o5Nm~T9lMuoO+8XCGQqv+De8Z5e5c^U*^tMF`>n&Ma3~Cr5UL)
zF8Rr&xv6<2#WAIMnI-8(i7BZ_toZoMyv&mLc)fzkTijr8#g`XlmZY+QLRSbB-i$nq
zJd9k7EDT(XJd9F|EDS|r3=9m(j37BE2C+d=1db9OM3gWrWDI7|Wc1TyE&`cX#LmFL
zP{hf=z@W)kBmiQA+zWPekthQL!z~_&10cZzQc%nUvVo~c9Nk8cI4Eg?ZFEAhvB;`~
zxrQNyv6-n~rk1gUC5sgl-6_nyOyLYn(CA&v5DbmxJQh&og0Low-z}!1q#}?<idaC7
zWJ7ax5y)#rydamd<m4x&Xfi>3A&kW<ToA7mr6#6;yjIKs_6R5_m6(g9K&G?YV)MvM
zNlDGS#hzPPlwX>ca*HiDEhj&}=oU+EacQn5V~8gAE$;aEveY6_l8TRqI0s}uI10d_
z0yZm37#_8Ha8{8t$XPNVLKZ~Gfe1u^gIOS_-Quvx%}*)KNwot-V=>5&EQ}nC9L!u?
I9IPCi0Bl<2DgXcg

literal 0
HcmV?d00001

diff --git a/unitgrade/__pycache__/unitgrade.cpython-38.pyc b/unitgrade/__pycache__/unitgrade.cpython-38.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..5a90be27445d34883952bd048cb688f370dc6c14
GIT binary patch
literal 11755
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

literal 0
HcmV?d00001

diff --git a/unitgrade/__pycache__/unitgrade_helpers.cpython-38.pyc b/unitgrade/__pycache__/unitgrade_helpers.cpython-38.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..b9cbce3993d264a01ee34b4ec753a0e1ce3f058c
GIT binary patch
literal 5615
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

literal 0
HcmV?d00001

diff --git a/unitgrade/unitgrade.py b/unitgrade/unitgrade.py
index e9fd63a..dcadcfc 100644
--- a/unitgrade/unitgrade.py
+++ b/unitgrade/unitgrade.py
@@ -77,7 +77,7 @@ class QItem(unittest.TestCase):
         if self.tol > 0 and self.testfun is None:
             self.testfun = self.assertL2Relative
         else:
-            self.testfun = unittest.TestCase.assertEqual
+            self.testfun = self.assertEqual
 
         self.name = self.__class__.__name__
         self._correct_answer_payload = correct_answer_payload
-- 
GitLab