<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    On 12/28/2011 10:58 AM, Leahy, Oliver wrote:
    <blockquote
cite="mid:06B307D2846C7C4FB931AE0C3CA3950746999D18@G9W0707.americas.hpqcorp.net"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=ISO-8859-1">
      <meta name="Generator" content="Microsoft Word 12 (filtered
        medium)">
      <style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
      <div class="WordSection1">
        <p class="MsoNormal">What&#8217;s the recommended way to use
          coverage.py with code that uses sys.settrace()<o:p></o:p></p>
        <p class="MsoNormal"><o:p>&nbsp;</o:p></p>
        <p class="MsoNormal">I&#8217;m using settrace() to simulate error
          conditions at certain lines during testing, but<o:p></o:p></p>
        <p class="MsoNormal">this interferes with the use coverage.py
          makes of settrace() and I&#8217;m getting incorrect<o:p></o:p></p>
        <p class="MsoNormal">coverage metrics.<o:p></o:p></p>
        <p class="MsoNormal"><o:p>&nbsp;</o:p></p>
        <p class="MsoNormal"><o:p>&nbsp;</o:p></p>
        <p class="MsoNormal">I&#8217;m hacking at my code to try to store an
          existing value for sys.gettrace() whenever<o:p></o:p></p>
        <p class="MsoNormal">I call settrace(), &nbsp;and then restoring the
          pre-existing trace function whenever I stop<o:p></o:p></p>
        <p class="MsoNormal">tracing using my function, but it&#8217;s not
          working for me at the moment.<o:p></o:p></p>
        <p class="MsoNormal"><o:p>&nbsp;</o:p></p>
        <p class="MsoNormal">Is this a sensible approach to this
          problem? &nbsp;Would anyone have any other suggestions?<o:p></o:p></p>
      </div>
    </blockquote>
    I don't know if anyone has tried measuring code that uses settrace.&nbsp;
    You should be able to use gettrace and settrace to save and restore
    the coverage trace function, but I won't be that surprised if it
    isn't working.&nbsp; You should try using the --timid flag on "coverage
    run" to see if it helps.&nbsp; It's specifically for environments that do
    unusual things with settrace().&nbsp; Are you sure settrace() is the best
    way to accomplish your goals? Mocking can also inject errors into
    running code, and may be easier to work with in the long run.<br>
    <br>
    In any case, if you need more help, post more details.<br>
    <br>
    --Ned.<br>
    <blockquote
cite="mid:06B307D2846C7C4FB931AE0C3CA3950746999D18@G9W0707.americas.hpqcorp.net"
      type="cite">
      <div class="WordSection1">
        <p class="MsoNormal"><o:p>&nbsp;</o:p></p>
        <p class="MsoNormal">Thanks,<o:p></o:p></p>
        <p class="MsoNormal">Ollie<o:p></o:p></p>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
testing-in-python mailing list
<a class="moz-txt-link-abbreviated" href="mailto:testing-in-python@lists.idyll.org">testing-in-python@lists.idyll.org</a>
<a class="moz-txt-link-freetext" href="http://lists.idyll.org/listinfo/testing-in-python">http://lists.idyll.org/listinfo/testing-in-python</a>
</pre>
    </blockquote>
  </body>
</html>