<div dir="ltr"><div dir="ltr">Hi,<div><br></div><div>I was looking at our test code and noticed we do this variable declaration gymnastic to get it to work:</div><div><br clear="all"><div><div style="color:rgb(0,0,0);font-family:"Source Code Pro for Powerline",Menlo,Monaco,"Courier New",monospace;font-size:12px;line-height:18px;white-space:pre"><div><span style="color:rgb(121,94,38)">describe</span>(<span style="color:rgb(163,21,21)">'thing'</span>, () <span style="color:rgb(0,0,255)">=></span> {</div><div>  <span style="color:rgb(0,0,255)">let</span> <span style="color:rgb(0,16,128)">thing</span>: <span style="color:rgb(38,127,153)">Thing</span>;</div><div>  <span style="color:rgb(121,94,38)">beforeEach</span>(() <span style="color:rgb(0,0,255)">=></span> {</div><div>    <span style="color:rgb(0,16,128)">thing</span> = <span style="color:rgb(0,0,255)">new</span> <span style="color:rgb(38,127,153)">Thing</span>()</div><div>  })</div><div>  <span style="color:rgb(121,94,38)">it</span>(<span style="color:rgb(163,21,21)">'does one thing'</span>, () <span style="color:rgb(0,0,255)">=></span> {</div><div>    <span style="color:rgb(0,16,128)">thing</span>.<span style="color:rgb(121,94,38)">oneThing</span>()</div><div>  })</div><div>  <span style="color:rgb(121,94,38)">it</span>(<span style="color:rgb(163,21,21)">'does other things'</span>, () <span style="color:rgb(0,0,255)">=></span> {</div><div>    <span style="color:rgb(0,16,128)">thing</span>.<span style="color:rgb(121,94,38)">otherThings</span>()</div><div>  })</div><div>})</div></div></div><div><br></div><div>To me, the declaration of thing and binding it in the beforeEach block seemed kind of weird. In an ideal world I would declare thing in my beforeEach block and via language features communicate that scope of beforeEach's callback and describe's callback above should be the same. </div><div><br></div><div>Has this come up before? Has there been proposals to address this issue?</div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr">Mohsen Azimi</div></div></div></div></div>