From c4c04fc693bd13e7794e984657776c00c20dbbe0 Mon Sep 17 00:00:00 2001
From: Tue Herlau <tuhe@dtu.dk>
Date: Sat, 27 Mar 2021 19:29:50 +0100
Subject: [PATCH] Fixed stupid issue relating to initialization of questions
 causing test failure

---
 .../__pycache__/unitgrade.cpython-38.pyc      | Bin 13887 -> 13887 bytes
 .../unitgrade_helpers.cpython-38.pyc          | Bin 6604 -> 6902 bytes
 unitgrade/__pycache__/version.cpython-38.pyc  | Bin 166 -> 166 bytes
 unitgrade/unitgrade.py                        |   6 +-----
 unitgrade/unitgrade_helpers.py                |  17 +++++++++++++----
 unitgrade/version.py                          |   2 +-
 6 files changed, 15 insertions(+), 10 deletions(-)

diff --git a/unitgrade/__pycache__/unitgrade.cpython-38.pyc b/unitgrade/__pycache__/unitgrade.cpython-38.pyc
index be8062ad9576348beec485019d587f4c0f1b248f..bd16532967d3b50cf89e3923950e92ac07aa25fe 100644
GIT binary patch
delta 3102
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

delta 3106
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

diff --git a/unitgrade/__pycache__/unitgrade_helpers.cpython-38.pyc b/unitgrade/__pycache__/unitgrade_helpers.cpython-38.pyc
index e83dce19af0550bd9e960167059ea3b304191b28..8a97ab0838eea34ae10999be8ca134838931f8aa 100644
GIT binary patch
delta 1623
zcmX?O{LPdvl$V!_fq{WxS$cdzjoL=O8ZO4D$=zJb8SOV4b7wFrcrq|Bgd}r=lt8f&
z0|Nsu0|SFI0|P^G&*a@a#~43MZsJX6TsHX?uOs7v$vS+N^>vI4RXjCf3uG2DFfxQQ
z<Yloil*ndtO<*cgU}UIOWMruFs$rhMR4h=#2_j24QY4!h85v4AQly}?bd6XR*KCFq
znYqjmks3t^ogxdR!79TUOc_!bY8C4gBN!qX@|YqRKqB>l3_%PL3^gDN18U?K$bp<u
zBA=zOKoQL1sF6(JPZ8;5Vq{2>s}YMAD^XgYT*AA6cOgTKoCHIP{6eN$C6J>^R8kmg
zgi2IvB%2u}7@C<x7*Z6(8A{Y@l$sgE8B!F*8K90)su2<avung^Wa8b`Q<Q5&Q-s7B
zYNWxWOcqxfvls&lL#=YH3fNgUO2lhqvLtGhQ$%~2YUT6PN;qniQ&b=prl?9Vl&IFI
zOt#{etyhIOtX8f@CQGA+wT7*Ry@t7lGexbJHHN8HtyaB8wnn{1twyy(twttGvzf6*
zCW|XYeGXfVRE@L^0~W7o)NoB;E}DfkU@+WJ5A(S=11!vHR3|VNYt*RKsAn@xU@lsh
zqLIgxqFJj_qmrUfqE@2;3mbEWT9p!x8Wm6&O<*k4DAB5sYG#aKuGOqnuhlBiuF<Sf
z7hq^+tW^iIwZLqx8ub*$Y?cWuMN%c&B|0Vb+BM=eS|SWJ>e39&j3AiDl)_l6RU-}(
zuaT;e0Hu@^tvPHpA~m8m3^iIcV(}t1>NR5V!YSI2SeVT)m#J1eMY2XLOJp`ficXFA
zY=*fkwK^pnHQFgE;0V?Rd9y^dMh8TTFo-kM=s+U39+VD1KBy5~pqrwLFc8Hs=5(fo
zjEoG02THVRM3DVhqF191ax}<~C3-blV769`dJRLoaE(?CL%c`{(*ov&47EHpJPSBe
z^cFJK@|S2sqP#{}f}y#du~xT6H$`8Hp;oU(w?;2TUxYz|p;kY|AjPnSq1K>;BgLqO
zUmTn;YYb}iQjD9K#2Hdd#2IP~YV=b~!8|jFU%*~4PvI|7t6|6z0Y{S#I5{(934?eL
zPt<7DsHZX2h@@D|VX8Icsxhn)Ok)aW(6roqN3fK!K7@gRL6fmanSp_!NQHrcp-Rpc
zFQ}3Z&q&Qv$jr+u$xO`2tjf$wS12q^EiTE-&r_&US18FyMMx%sMU(SWQWZ)vic-rJ
z67v*Ni;D7#s?0(%QWc6)bBz)+^FT%vBo>tvE99pslw@QUBMdCh%*j#6$;?j8sZ>Zy
z%*@dXDRP;dA{@Z&0CKM*h;W*`Us%jEn1O*IiY34?IJk;SOG`_^&C%1x)kTx72uUFW
z1H&!W%#zgH;-UzU&fv*hA`K$`-~hPATwGG5$yDSFl8Bu=Peg|C#^l{1{*1RKbBjtc
z>Q7b`jb#j;+$`$F4Y3uZE^6`(Q8Q6c2;O2zElbR~#R3YJB7Fu1hRJeb3gT{H8;kNw
z^HOdx=O$JZ`G9oAO%4@PXY`z0D<;ioG<l|&hR`j(;*9+A_>9z?g7~zY#Pp)@$(P0S
z*<wMeZ6<SwD=<1t))cp72iwG$Iyp^TULNFwTkOfDMMbH3B}E`NMX{C?rzRKQVk$2#
za+<tET!Ybi@>y{i#$%ITiMz-$@-gx-3NSJ;@-PZ9vN5tTaxii*3V}%#rpe|KU5sv%
U4@u19jssb04<bA#XG<mm0G)540RR91

delta 1389
zcmexndd8S9l$V!_fq{V`DJLvprOHOW8ZO3Lle@W=GdgTG=FVVL@M2(K2ubD!DS=``
z1_lNY-<g4dp;%_}Zk}U|4U?OA(;3Yszv6XdG?=WzXIan3$WSA;KxQEWBSScYDMKJb
z5JLn*4c7$5q6and3uHm!C30Ev3lzXCjvC1n{uGg3CPs!7$r`bEu@c1vN+rAtco#C%
z$Vo7yNG)WlRV?91kuFhAVXP4<QK^w^W|UxPW)fjYkr8JoQLRyIW)x>gkriiXW@Kb2
z;Rs8Ss}T|bb85tDWa8CQ<ZDDzgv1$Yq`{<27FQax7y}DKtx~OW4c7#wqKp#p8ksDK
z8l@D`UZz_4Jhc*z8l@Bkh=nPN5)36OHOiA$@yph$Kpa*pS0j_9Uc*|$R>NMyT*H~7
z)XN&fRI6I6RwG-ZR-;;@QleTTlcmwjSR<3gm7+X{twyRw+J*s(*VJpcCNLLiVGS4z
zH`K#?F3tc8vl^8NjKvx?sx@laOcR)k>{3+nm{L@0m1~q!WJ*+P)L~&`&QPmd!cn6P
z3Zn^(g&HNAHB!xtG0e3ZwQ9ARC0aEaHEIG3&5X5bV74Zhty!a%!kEo6fw^c^iB^er
zNxfE$c#WnALyej=Lo*`?<}sx()@s&>gT!m3Y9wmJvba*z=CIX>)QH+J)M(a-#f#La
z)riFlr>H|>VK&2Drdq8O=^C*tk=YC>8a3jx8RoLoYL{@-Xr(BCBUlUM%@UOwZ4fQO
zAkI*u4T;=(P&xqlphj?kPKqYNKorB6)0q}BGBOk%DABADLH1*bZjBnq(I7vT=+<b0
z*_t(KH4O2>HJUXH@ggNm3z!!&)biBuEZ|JhTF6+-U!nzx@)}_YhUR+4TAdo56m2Pn
zTHP9*8r>9a5e5l{TD=sV6x|kvTKy7^6ulaLad5({(XY`>(QjrFXGk#+XQ<Jy(MvG|
z^Nb*V0eitXg}+3#h9OG?98DVF<jjyI4B|mNQKMO-mc~>gl43H4sn&q2#-K(pjVYKx
z({!_sP${EuC<6n7CS#E@D5Dm+GB7X{sZ1^s2?%opF`YmJD5u_H%g9VgNzJ>(k({4f
zP+F3jQWV0#z!1d};20cS#igaCrQqi1>Er66$yS7>lQpv>HMh7Z5@b}!WC_s*kpQrj
zx0s7diZq#uTtE_Wljlo`a^xiDCZ#0Wou7PC)L%M^H6*_zF-Mc>7HbKJaf>}AwIne!
zr&v>Ovawh!W60!*VqV;E7ZycNekNun0P@Z)mejJuoLelJd6^}X4aF72-5D4dZm|~S
zm*%D1V$MyhDDnl_89zBgT%FNt@&s{dM#IT##5IJX_=+>~%i}Xra|+_qauU;vA|^i*
z*Jq0ZskWUgEup~ZIN3(Rk_BYR<QfTid61`Wu_u=n6{Y5t6oK3l#adFFnp}K~sl2$z
zdGam^4LKW-ZZS9^1!92;!9-92xM`B43nvpFBM*}RqY&fdM9D5j_sMT0=W)k_lsSM1
JugO!T5&<ZsUXB0&

diff --git a/unitgrade/__pycache__/version.cpython-38.pyc b/unitgrade/__pycache__/version.cpython-38.pyc
index 79890100982f99dfa74eaaa28454b969f4f9d8fb..57989453481719d2c5051bcb147d601d4104e23f 100644
GIT binary patch
delta 24
fcmZ3+xQvlIl$V!_fq{X6TP1!Xw=tvXMEi6AHd+Lo

delta 24
fcmZ3+xQvlIl$V!_fq{Wx?slJv+{TQ?6YbLhL8}F=

diff --git a/unitgrade/unitgrade.py b/unitgrade/unitgrade.py
index e100673..9bbd6e3 100644
--- a/unitgrade/unitgrade.py
+++ b/unitgrade/unitgrade.py
@@ -87,7 +87,7 @@ class QItem(unittest.TestCase):
 
         self.name = self.__class__.__name__
         self._correct_answer_payload = correct_answer_payload
-        self.question = None
+        self.question = question
         # self.a = "not set"
 
         super().__init__(*args, **kwargs)
@@ -124,10 +124,6 @@ class QItem(unittest.TestCase):
             print(f"Element-wise differences {diff.tolist()}")
             self.assertEqual(computed, expected, msg=f"Not equal within tolerance {tol}")
 
-    # def set_precomputed_payload(self, payload):
-    #     self.a = "blaaah"
-    #     self._precomputed_payload = payload
-
     def precomputed_payload(self):
         return self._precomputed_payload
 
diff --git a/unitgrade/unitgrade_helpers.py b/unitgrade/unitgrade_helpers.py
index c73c496..3760f82 100644
--- a/unitgrade/unitgrade_helpers.py
+++ b/unitgrade/unitgrade_helpers.py
@@ -136,12 +136,21 @@ def evaluate_report(report, question=None, qitem=None, passall=False, verbose=Fa
 
                 cc = None
                 if show_progress_bar:
-                    # cc.start()
                     cc = ActiveProgress(t=q.estimated_time, title=q_title_print)
                 from unitgrade import Capturing
-                #eval('from unitgrade import Capturing')
-                with eval('Capturing')(unmute=unmute): # Clunky import syntax is required bc. of minify issue.
-                    q.init() # Initialize the question. Useful for sharing resources.
+                with eval('Capturing')(unmute=unmute):  # Clunky import syntax is required bc. of minify issue.
+                    try:
+                        q.init()  # Initialize the question. Useful for sharing resources.
+                    except Exception as e:
+                        if not passall:
+                            if not silent:
+                                print(" ")
+                                print("="*30)
+                                print(f"When initializing question {q.title} the initialization code threw an error")
+                                print(e)
+                                print("The remaining parts of this question will likely fail.")
+                                print("="*30)
+
                 if show_progress_bar:
                     cc.terminate()
                     sys.stdout.flush()
diff --git a/unitgrade/version.py b/unitgrade/version.py
index 51e0a06..de49d1f 100644
--- a/unitgrade/version.py
+++ b/unitgrade/version.py
@@ -1 +1 @@
-__version__ = "0.1.4"
\ No newline at end of file
+__version__ = "0.1.5"
\ No newline at end of file
-- 
GitLab