<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>188869</bug_id>
          
          <creation_ts>2018-08-22 16:39:38 -0700</creation_ts>
          <short_desc>API tests should output json results</short_desc>
          <delta_ts>2019-12-24 04:23:13 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=205579</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jonathan Bedard">jbedard</reporter>
          <assigned_to name="Jonathan Bedard">jbedard</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>lforschler</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1452887</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2018-08-22 16:39:38 -0700</bug_when>
    <thetext>Requested by Aakash Jain for adding API tests to EWS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452888</commentid>
    <comment_count>1</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2018-08-22 16:39:49 -0700</bug_when>
    <thetext>&lt;rdar://problem/43615652&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452890</commentid>
    <comment_count>2</comment_count>
      <attachid>347876</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2018-08-22 16:47:48 -0700</bug_when>
    <thetext>Created attachment 347876
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452896</commentid>
    <comment_count>3</comment_count>
      <attachid>347879</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2018-08-22 17:11:50 -0700</bug_when>
    <thetext>Created attachment 347879
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452904</commentid>
    <comment_count>4</comment_count>
      <attachid>347879</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2018-08-22 17:36:28 -0700</bug_when>
    <thetext>Comment on attachment 347879
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=347879&amp;action=review

Thanks for the patch. Looks good, one comment below.

&gt; Tools/Scripts/webkitpy/api_tests/manager.py:208
&gt; +                result_dictionary[test] = {&apos;status&apos;: &apos;Skipped&apos;, &apos;output&apos;: None}

Do we need to add skipped tests in the json file? EWS doesn&apos;t need this, but I understand some other tools might use this information.

If so, we should consider dividing the tests by keys. e.g.:

{
    &quot;skipped&quot;: [ {&quot;test_name1&quot;: &lt;test_log1&gt;}, {&quot;test_name2&quot;: &lt;test_log2&gt;} ],
    &quot;failed&quot;: [ {&quot;test_name3&quot;: &lt;test_log3&gt;} ],
    &quot;crashed&quot;: [ {&quot;test_name4&quot;: &lt;test_log4&gt;} ],
    &quot;timedout&quot;: [ {&quot;test_name5&quot;: &lt;test_log5&gt;} ]
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453069</commentid>
    <comment_count>5</comment_count>
      <attachid>347879</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2018-08-23 08:45:20 -0700</bug_when>
    <thetext>Comment on attachment 347879
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=347879&amp;action=review

&gt;&gt; Tools/Scripts/webkitpy/api_tests/manager.py:208
&gt;&gt; +                result_dictionary[test] = {&apos;status&apos;: &apos;Skipped&apos;, &apos;output&apos;: None}
&gt; 
&gt; Do we need to add skipped tests in the json file? EWS doesn&apos;t need this, but I understand some other tools might use this information.
&gt; 
&gt; If so, we should consider dividing the tests by keys. e.g.:
&gt; 
&gt; {
&gt;     &quot;skipped&quot;: [ {&quot;test_name1&quot;: &lt;test_log1&gt;}, {&quot;test_name2&quot;: &lt;test_log2&gt;} ],
&gt;     &quot;failed&quot;: [ {&quot;test_name3&quot;: &lt;test_log3&gt;} ],
&gt;     &quot;crashed&quot;: [ {&quot;test_name4&quot;: &lt;test_log4&gt;} ],
&gt;     &quot;timedout&quot;: [ {&quot;test_name5&quot;: &lt;test_log5&gt;} ]
&gt; }

We do not, but, for API tests, &apos;SKIPPED&apos; does not mean &apos;DISABLED&apos;, it means that a signal was received forcing the program to exit early. In practice, this means that EWS should never see SKIPPED tests and if it did, something has gone terribly wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453217</commentid>
    <comment_count>6</comment_count>
      <attachid>347952</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2018-08-23 14:24:06 -0700</bug_when>
    <thetext>Created attachment 347952
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453234</commentid>
    <comment_count>7</comment_count>
      <attachid>347956</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2018-08-23 14:50:08 -0700</bug_when>
    <thetext>Created attachment 347956
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453243</commentid>
    <comment_count>8</comment_count>
      <attachid>347960</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2018-08-23 15:12:25 -0700</bug_when>
    <thetext>Created attachment 347960
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453263</commentid>
    <comment_count>9</comment_count>
      <attachid>347960</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-08-23 15:50:58 -0700</bug_when>
    <thetext>Comment on attachment 347960
Patch for landing

Clearing flags on attachment: 347960

Committed r235252: &lt;https://trac.webkit.org/changeset/235252&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453264</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-08-23 15:51:00 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453265</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-08-23 15:51:26 -0700</bug_when>
    <thetext>&lt;rdar://problem/43662254&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347876</attachid>
            <date>2018-08-22 16:47:48 -0700</date>
            <delta_ts>2018-08-22 17:11:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188869-20180822164747.patch</filename>
            <type>text/plain</type>
            <size>4669</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIzNTIxMCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDIzIEBACisyMDE4LTA4LTIyICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBBUEkgdGVzdHMgc2hvdWxkIG91dHB1dCBqc29uIHJlc3VsdHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4ODg2OQorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNDM2MTU2NTI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgSlNPTiBvdXRwdXQgZm9yIEFQSSB0ZXN0cyBpcyBvZiB0aGUg
Zm9ybToKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICA8dGVzdF9uYW1lPjogeyJzdGF0
dXMiOiA8dGVzdCBzdGF0dXM+LCAib3V0cHV0IjogPHRlc3QgbG9nPn0KKyAgICAgICAgICAgIH0K
KyAgICAgICAgVGVzdHMgd2hpY2ggYXJlIHN1Y2Nlc3NmdWwgYXJlIG5vdCBkaXNwbGF5ZWQgaW4g
dGhlIGpzb24gb3V0cHV0LgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9hcGlfdGVzdHMv
bWFuYWdlci5weToKKyAgICAgICAgKE1hbmFnZXIucnVuKTogUHJpbnQgdGVzdCByZXN1bHRzIHRv
IHN0ZG91dCBhcyBhIGpzb24gZGljdGlvbmFyeS4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5
L2FwaV90ZXN0cy9ydW5fYXBpX3Rlc3RzLnB5OgorICAgICAgICAocnVuKTogUGFzcyBqc29uIG9w
dGlvbi4KKyAgICAgICAgKHBhcnNlX2FyZ3MpOiBBZGQgLS1qc29uIGZsYWcuCisKIDIwMTgtMDgt
MjIgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgW0F0
dGFjaG1lbnQgU3VwcG9ydF0gU3VwcG9ydCBkcmFnZ2luZyBhdHRhY2htZW50IGVsZW1lbnRzIG91
dCBhcyBmaWxlcyBvbiBtYWNPUwpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9hcGlfdGVz
dHMvbWFuYWdlci5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2FwaV90
ZXN0cy9tYW5hZ2VyLnB5CShyZXZpc2lvbiAyMzUyMDIpCisrKyBUb29scy9TY3JpcHRzL3dlYmtp
dHB5L2FwaV90ZXN0cy9tYW5hZ2VyLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBA
CiBpbXBvcnQgbG9nZ2luZwogaW1wb3J0IG9zCiAKK2Zyb20ganNvbiBpbXBvcnQgZHVtcHMKIGZy
b20gd2Via2l0cHkuYXBpX3Rlc3RzLnJ1bm5lciBpbXBvcnQgUnVubmVyCiBmcm9tIHdlYmtpdHB5
LmNvbW1vbi5zeXN0ZW0uZXhlY3V0aXZlIGltcG9ydCBTY3JpcHRFcnJvcgogZnJvbSB3ZWJraXRw
eS54Y29kZS5kZXZpY2VfdHlwZSBpbXBvcnQgRGV2aWNlVHlwZQpAQCAtMTQ4LDcgKzE0OSw3IEBA
IGNsYXNzIE1hbmFnZXIob2JqZWN0KToKICAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5fcG9y
dC5wYXRoX3RvX2FwaV90ZXN0X2JpbmFyaWVzKCkua2V5cygpCiAgICAgICAgIHJldHVybiBiaW5h
cmllcyBvciBzZWxmLl9wb3J0LnBhdGhfdG9fYXBpX3Rlc3RfYmluYXJpZXMoKS5rZXlzKCkKIAot
ICAgIGRlZiBydW4oc2VsZiwgYXJncyk6CisgICAgZGVmIHJ1bihzZWxmLCBhcmdzLCBqc29uPUZh
bHNlKToKICAgICAgICAgc2VsZi5fc3RyZWFtLndyaXRlX3VwZGF0ZSgnQ2hlY2tpbmcgYnVpbGQg
Li4uJykKICAgICAgICAgaWYgbm90IHNlbGYuX3BvcnQuY2hlY2tfYXBpX3Rlc3RfYnVpbGQoc2Vs
Zi5fYmluYXJpZXNfZm9yX2FyZ3VtZW50cyhhcmdzKSk6CiAgICAgICAgICAgICBfbG9nLmVycm9y
KCdCdWlsZCBjaGVjayBmYWlsZWQnKQpAQCAtMTg0LDcgKzE4NSwzMCBAQCBjbGFzcyBNYW5hZ2Vy
KG9iamVjdCk6CiAgICAgICAgIGRpc2FibGVkID0gbGVuKHJ1bm5lci5yZXN1bHRfbWFwX2J5X3N0
YXR1cyhydW5uZXIuU1RBVFVTX0RJU0FCTEVEKSkKICAgICAgICAgX2xvZy5pbmZvKCdSYW4ge30g
dGVzdHMgb2Yge30gd2l0aCB7fSBzdWNjZXNzZnVsJy5mb3JtYXQobGVuKHJ1bm5lci5yZXN1bHRz
KSAtIGRpc2FibGVkLCBsZW4odGVzdF9uYW1lcyksIGxlbihzdWNjZXNzZnVsKSkpCiAKLSAgICAg
ICAgc2VsZi5fc3RyZWFtLndyaXRlbG4oJy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLScp
CisgICAgICAgIGlmIGpzb246CisgICAgICAgICAgICBpZiBsZW4oc3VjY2Vzc2Z1bCkgKyBkaXNh
YmxlZCA9PSBsZW4odGVzdF9uYW1lcyk6CisgICAgICAgICAgICAgICAgc2VsZi5fc3RyZWFtLndy
aXRlbG4oJ3t9JykKKyAgICAgICAgICAgICAgICByZXR1cm4gTWFuYWdlci5TVUNDRVNTCisKKyAg
ICAgICAgICAgIHJlc3VsdF9kaWN0aW9uYXJ5ID0ge30KKyAgICAgICAgICAgIGZvciB0ZXN0IGlu
IHRlc3RfbmFtZXM6CisgICAgICAgICAgICAgICAgaWYgdGVzdCBub3QgaW4gcnVubmVyLnJlc3Vs
dHM6CisgICAgICAgICAgICAgICAgICAgIHJlc3VsdF9kaWN0aW9uYXJ5W3Rlc3RdID0geydzdGF0
dXMnOiAnU2tpcHBlZCcsICdvdXRwdXQnOiBOb25lfQorCisgICAgICAgICAgICBmb3IgdGVzdCwg
cmVzdWx0IGluIHJ1bm5lci5yZXN1bHRzLml0ZXJpdGVtcygpOgorICAgICAgICAgICAgICAgIHN0
YXR1c190b19zdHJpbmcgPSB7CisgICAgICAgICAgICAgICAgICAgIHJ1bm5lci5TVEFUVVNfRkFJ
TEVEOiAnRmFpbGVkJywKKyAgICAgICAgICAgICAgICAgICAgcnVubmVyLlNUQVRVU19DUkFTSEVE
OiAnQ3Jhc2hlZCcsCisgICAgICAgICAgICAgICAgICAgIHJ1bm5lci5TVEFUVVNfVElNRU9VVDog
J1RpbWVkb3V0JywKKyAgICAgICAgICAgICAgICB9LmdldChyZXN1bHRbMF0pCisgICAgICAgICAg
ICAgICAgaWYgbm90IHN0YXR1c190b19zdHJpbmc6CisgICAgICAgICAgICAgICAgICAgIGNvbnRp
bnVlCisgICAgICAgICAgICAgICAgcmVzdWx0X2RpY3Rpb25hcnlbdGVzdF0gPSB7J3N0YXR1cyc6
IHN0YXR1c190b19zdHJpbmcsICdvdXRwdXQnOiByZXN1bHRbMV19CisgICAgICAgICAgICBzZWxm
Ll9zdHJlYW0ud3JpdGVsbihkdW1wcyhyZXN1bHRfZGljdGlvbmFyeSwgaW5kZW50PTQsIHNvcnRf
a2V5cz1UcnVlKSkKKyAgICAgICAgICAgIHJldHVybiBNYW5hZ2VyLkZBSUxFRF9URVNUUworCisg
ICAgICAgIHNlbGYuX3N0cmVhbS53cml0ZWxuKCctJyAqIDMwKQorCiAgICAgICAgIGlmIGxlbihz
dWNjZXNzZnVsKSArIGRpc2FibGVkID09IGxlbih0ZXN0X25hbWVzKToKICAgICAgICAgICAgIHNl
bGYuX3N0cmVhbS53cml0ZWxuKCdBbGwgdGVzdHMgc3VjY2Vzc2Z1bGx5IHBhc3NlZCEnKQogICAg
ICAgICAgICAgcmV0dXJuIE1hbmFnZXIuU1VDQ0VTUwpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9hcGlfdGVzdHMvcnVuX2FwaV90ZXN0cy5weQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L2FwaV90ZXN0cy9ydW5fYXBpX3Rlc3RzLnB5CShyZXZpc2lvbiAyMzUyMDIp
CisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2FwaV90ZXN0cy9ydW5fYXBpX3Rlc3RzLnB5CSh3
b3JraW5nIGNvcHkpCkBAIC03Myw3ICs3Myw3IEBAIGRlZiBydW4ocG9ydCwgb3B0aW9ucywgYXJn
cywgbG9nZ2luZ19zdHIKICAgICAgICAgc3RyZWFtID0gTWV0ZXJlZFN0cmVhbShsb2dnaW5nX3N0
cmVhbSwgb3B0aW9ucy52ZXJib3NlLCBsb2dnZXI9bG9nZ2VyLCBudW1iZXJfb2ZfY29sdW1ucz1w
b3J0Lmhvc3QucGxhdGZvcm0udGVybWluYWxfd2lkdGgoKSwgcHJpbnRfdGltZXN0YW1wcz1vcHRp
b25zLnRpbWVzdGFtcHMpCiAgICAgICAgIG1hbmFnZXIgPSBNYW5hZ2VyKHBvcnQsIG9wdGlvbnMs
IHN0cmVhbSkKIAotICAgICAgICByZXN1bHQgPSBtYW5hZ2VyLnJ1bihhcmdzKQorICAgICAgICBy
ZXN1bHQgPSBtYW5hZ2VyLnJ1bihhcmdzLCBqc29uPW9wdGlvbnMuanNvbikKICAgICAgICAgX2xv
Zy5kZWJ1ZygiVGVzdGluZyBjb21wbGV0ZWQsIEV4aXQgc3RhdHVzOiAlZCIgJSByZXN1bHQpCiAg
ICAgICAgIHJldHVybiByZXN1bHQKICAgICBmaW5hbGx5OgpAQCAtOTIsNiArOTIsOCBAQCBkZWYg
cGFyc2VfYXJncyhhcmdzKToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVscD0nRW5h
YmxlIHZlcmJvc2UgcHJpbnRpbmcnKSwKICAgICAgICAgb3B0cGFyc2UubWFrZV9vcHRpb24oJy0t
dGltZXN0YW1wcycsIGFjdGlvbj0nc3RvcmVfdHJ1ZScsIGRlZmF1bHQ9RmFsc2UsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGhlbHA9J1ByaW50IHRpbWVzdGFtcHMgZm9yIGVhY2ggbG9n
Z2VkIGxpbmUnKSwKKyAgICAgICAgb3B0cGFyc2UubWFrZV9vcHRpb24oJy0tanNvbicsIGFjdGlv
bj0nc3RvcmVfdHJ1ZScsIGRlZmF1bHQ9RmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGhlbHA9J1ByaW50IHRlc3QgcmVzdWx0cyBhcyBKU09OJyksCiAgICAgXSkpCiAKICAgICBv
cHRpb25fZ3JvdXBfZGVmaW5pdGlvbnMuYXBwZW5kKCgnV2ViS2l0IE9wdGlvbnMnLCBbCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347879</attachid>
            <date>2018-08-22 17:11:50 -0700</date>
            <delta_ts>2018-08-23 14:24:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188869-20180822171149.patch</filename>
            <type>text/plain</type>
            <size>5421</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIzNTIxMCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDIzIEBACisyMDE4LTA4LTIyICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBBUEkgdGVzdHMgc2hvdWxkIG91dHB1dCBqc29uIHJlc3VsdHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4ODg2OQorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNDM2MTU2NTI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgSlNPTiBvdXRwdXQgZm9yIEFQSSB0ZXN0cyBpcyBvZiB0aGUg
Zm9ybToKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICA8dGVzdF9uYW1lPjogeyJzdGF0
dXMiOiA8dGVzdCBzdGF0dXM+LCAib3V0cHV0IjogPHRlc3QgbG9nPn0KKyAgICAgICAgICAgIH0K
KyAgICAgICAgVGVzdHMgd2hpY2ggYXJlIHN1Y2Nlc3NmdWwgYXJlIG5vdCBkaXNwbGF5ZWQgaW4g
dGhlIGpzb24gb3V0cHV0LgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9hcGlfdGVzdHMv
bWFuYWdlci5weToKKyAgICAgICAgKE1hbmFnZXIucnVuKTogUHJpbnQgdGVzdCByZXN1bHRzIHRv
IHByb3ZpZGVkIGZpbGUgYXMgYSBqc29uIGRpY3Rpb25hcnkuCisgICAgICAgICogU2NyaXB0cy93
ZWJraXRweS9hcGlfdGVzdHMvcnVuX2FwaV90ZXN0cy5weToKKyAgICAgICAgKHJ1bik6IFBhc3Mg
anNvbiBvcHRpb24uCisgICAgICAgIChwYXJzZV9hcmdzKTogQWRkIC0tanNvbi1vdXRwdXQgZmxh
Zy4KKwogMjAxOC0wOC0yMiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4K
IAogICAgICAgICBbQXR0YWNobWVudCBTdXBwb3J0XSBTdXBwb3J0IGRyYWdnaW5nIGF0dGFjaG1l
bnQgZWxlbWVudHMgb3V0IGFzIGZpbGVzIG9uIG1hY09TCkluZGV4OiBUb29scy9TY3JpcHRzL3dl
YmtpdHB5L2FwaV90ZXN0cy9tYW5hZ2VyLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvYXBpX3Rlc3RzL21hbmFnZXIucHkJKHJldmlzaW9uIDIzNTIwMikKKysrIFRvb2xz
L1NjcmlwdHMvd2Via2l0cHkvYXBpX3Rlc3RzL21hbmFnZXIucHkJKHdvcmtpbmcgY29weSkKQEAg
LTIwLDYgKzIwLDcgQEAKICMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKICMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKK2ltcG9ydCBq
c29uCiBpbXBvcnQgbG9nZ2luZwogaW1wb3J0IG9zCiAKQEAgLTE0OCw3ICsxNDksMTIgQEAgY2xh
c3MgTWFuYWdlcihvYmplY3QpOgogICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLl9wb3J0LnBh
dGhfdG9fYXBpX3Rlc3RfYmluYXJpZXMoKS5rZXlzKCkKICAgICAgICAgcmV0dXJuIGJpbmFyaWVz
IG9yIHNlbGYuX3BvcnQucGF0aF90b19hcGlfdGVzdF9iaW5hcmllcygpLmtleXMoKQogCi0gICAg
ZGVmIHJ1bihzZWxmLCBhcmdzKToKKyAgICBkZWYgcnVuKHNlbGYsIGFyZ3MsIGpzb25fb3V0cHV0
PU5vbmUpOgorICAgICAgICBpZiBqc29uX291dHB1dDoKKyAgICAgICAgICAgIGpzb25fb3V0cHV0
ID0gc2VsZi5ob3N0LmZpbGVzeXN0ZW0uYWJzcGF0aChqc29uX291dHB1dCkKKyAgICAgICAgICAg
IGlmIG5vdCBzZWxmLmhvc3QuZmlsZXN5c3RlbS5pc2RpcihzZWxmLmhvc3QuZmlsZXN5c3RlbS5k
aXJuYW1lKGpzb25fb3V0cHV0KSkgb3Igc2VsZi5ob3N0LmZpbGVzeXN0ZW0uaXNkaXIoanNvbl9v
dXRwdXQpOgorICAgICAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcignQ2Fubm90IHdyaXRl
IHRvIHt9Jy5mb3JtYXQoanNvbl9vdXRwdXQpKQorCiAgICAgICAgIHNlbGYuX3N0cmVhbS53cml0
ZV91cGRhdGUoJ0NoZWNraW5nIGJ1aWxkIC4uLicpCiAgICAgICAgIGlmIG5vdCBzZWxmLl9wb3J0
LmNoZWNrX2FwaV90ZXN0X2J1aWxkKHNlbGYuX2JpbmFyaWVzX2Zvcl9hcmd1bWVudHMoYXJncykp
OgogICAgICAgICAgICAgX2xvZy5lcnJvcignQnVpbGQgY2hlY2sgZmFpbGVkJykKQEAgLTE4NCwx
OCArMTkwLDIyIEBAIGNsYXNzIE1hbmFnZXIob2JqZWN0KToKICAgICAgICAgZGlzYWJsZWQgPSBs
ZW4ocnVubmVyLnJlc3VsdF9tYXBfYnlfc3RhdHVzKHJ1bm5lci5TVEFUVVNfRElTQUJMRUQpKQog
ICAgICAgICBfbG9nLmluZm8oJ1JhbiB7fSB0ZXN0cyBvZiB7fSB3aXRoIHt9IHN1Y2Nlc3NmdWwn
LmZvcm1hdChsZW4ocnVubmVyLnJlc3VsdHMpIC0gZGlzYWJsZWQsIGxlbih0ZXN0X25hbWVzKSwg
bGVuKHN1Y2Nlc3NmdWwpKSkKIAotICAgICAgICBzZWxmLl9zdHJlYW0ud3JpdGVsbignLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJykKKyAgICAgICAgc2VsZi5fc3RyZWFtLndyaXRlbG4o
Jy0nICogMzApCiAgICAgICAgIGlmIGxlbihzdWNjZXNzZnVsKSArIGRpc2FibGVkID09IGxlbih0
ZXN0X25hbWVzKToKICAgICAgICAgICAgIHNlbGYuX3N0cmVhbS53cml0ZWxuKCdBbGwgdGVzdHMg
c3VjY2Vzc2Z1bGx5IHBhc3NlZCEnKQorICAgICAgICAgICAgaWYganNvbl9vdXRwdXQ6CisgICAg
ICAgICAgICAgICAgc2VsZi5ob3N0LmZpbGVzeXN0ZW0ud3JpdGVfdGV4dF9maWxlKGpzb25fb3V0
cHV0LCAne30nKQogICAgICAgICAgICAgcmV0dXJuIE1hbmFnZXIuU1VDQ0VTUwogCiAgICAgICAg
IHNlbGYuX3N0cmVhbS53cml0ZWxuKCdUZXN0IHN1aXRlIGZhaWxlZCcpCiAgICAgICAgIHNlbGYu
X3N0cmVhbS53cml0ZWxuKCcnKQogCisgICAgICAgIHJlc3VsdF9kaWN0aW9uYXJ5ID0ge30KICAg
ICAgICAgc2tpcHBlZCA9IFtdCiAgICAgICAgIGZvciB0ZXN0IGluIHRlc3RfbmFtZXM6CiAgICAg
ICAgICAgICBpZiB0ZXN0IG5vdCBpbiBydW5uZXIucmVzdWx0czoKICAgICAgICAgICAgICAgICBz
a2lwcGVkLmFwcGVuZCh0ZXN0KQorICAgICAgICAgICAgICAgIHJlc3VsdF9kaWN0aW9uYXJ5W3Rl
c3RdID0geydzdGF0dXMnOiAnU2tpcHBlZCcsICdvdXRwdXQnOiBOb25lfQogICAgICAgICBpZiBz
a2lwcGVkOgogICAgICAgICAgICAgc2VsZi5fc3RyZWFtLndyaXRlbG4oJ1NraXBwZWQge30gdGVz
dHMnLmZvcm1hdChsZW4oc2tpcHBlZCkpKQogICAgICAgICAgICAgc2VsZi5fc3RyZWFtLndyaXRl
bG4oJycpCkBAIC0yMDcsNCArMjE3LDE3IEBAIGNsYXNzIE1hbmFnZXIob2JqZWN0KToKICAgICAg
ICAgc2VsZi5fcHJpbnRfdGVzdHNfcmVzdWx0X3dpdGhfc3RhdHVzKHJ1bm5lci5TVEFUVVNfQ1JB
U0hFRCwgcnVubmVyKQogICAgICAgICBzZWxmLl9wcmludF90ZXN0c19yZXN1bHRfd2l0aF9zdGF0
dXMocnVubmVyLlNUQVRVU19USU1FT1VULCBydW5uZXIpCiAKKyAgICAgICAgZm9yIHRlc3QsIHJl
c3VsdCBpbiBydW5uZXIucmVzdWx0cy5pdGVyaXRlbXMoKToKKyAgICAgICAgICAgIHN0YXR1c190
b19zdHJpbmcgPSB7CisgICAgICAgICAgICAgICAgcnVubmVyLlNUQVRVU19GQUlMRUQ6ICdGYWls
ZWQnLAorICAgICAgICAgICAgICAgIHJ1bm5lci5TVEFUVVNfQ1JBU0hFRDogJ0NyYXNoZWQnLAor
ICAgICAgICAgICAgICAgIHJ1bm5lci5TVEFUVVNfVElNRU9VVDogJ1RpbWVkb3V0JywKKyAgICAg
ICAgICAgIH0uZ2V0KHJlc3VsdFswXSkKKyAgICAgICAgICAgIGlmIG5vdCBzdGF0dXNfdG9fc3Ry
aW5nOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICByZXN1bHRfZGljdGlv
bmFyeVt0ZXN0XSA9IHsnc3RhdHVzJzogc3RhdHVzX3RvX3N0cmluZywgJ291dHB1dCc6IHJlc3Vs
dFsxXX0KKworICAgICAgICBpZiBqc29uX291dHB1dDoKKyAgICAgICAgICAgIHNlbGYuaG9zdC5m
aWxlc3lzdGVtLndyaXRlX3RleHRfZmlsZShqc29uX291dHB1dCwganNvbi5kdW1wcyhyZXN1bHRf
ZGljdGlvbmFyeSwgc29ydF9rZXlzPVRydWUsIGluZGVudD00KSkKKwogICAgICAgICByZXR1cm4g
TWFuYWdlci5GQUlMRURfVEVTVFMKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvYXBpX3Rl
c3RzL3J1bl9hcGlfdGVzdHMucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9hcGlfdGVzdHMvcnVuX2FwaV90ZXN0cy5weQkocmV2aXNpb24gMjM1MjAyKQorKysgVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9hcGlfdGVzdHMvcnVuX2FwaV90ZXN0cy5weQkod29ya2luZyBjb3B5
KQpAQCAtNzMsNyArNzMsNyBAQCBkZWYgcnVuKHBvcnQsIG9wdGlvbnMsIGFyZ3MsIGxvZ2dpbmdf
c3RyCiAgICAgICAgIHN0cmVhbSA9IE1ldGVyZWRTdHJlYW0obG9nZ2luZ19zdHJlYW0sIG9wdGlv
bnMudmVyYm9zZSwgbG9nZ2VyPWxvZ2dlciwgbnVtYmVyX29mX2NvbHVtbnM9cG9ydC5ob3N0LnBs
YXRmb3JtLnRlcm1pbmFsX3dpZHRoKCksIHByaW50X3RpbWVzdGFtcHM9b3B0aW9ucy50aW1lc3Rh
bXBzKQogICAgICAgICBtYW5hZ2VyID0gTWFuYWdlcihwb3J0LCBvcHRpb25zLCBzdHJlYW0pCiAK
LSAgICAgICAgcmVzdWx0ID0gbWFuYWdlci5ydW4oYXJncykKKyAgICAgICAgcmVzdWx0ID0gbWFu
YWdlci5ydW4oYXJncywganNvbl9vdXRwdXQ9b3B0aW9ucy5qc29uX291dHB1dCkKICAgICAgICAg
X2xvZy5kZWJ1ZygiVGVzdGluZyBjb21wbGV0ZWQsIEV4aXQgc3RhdHVzOiAlZCIgJSByZXN1bHQp
CiAgICAgICAgIHJldHVybiByZXN1bHQKICAgICBmaW5hbGx5OgpAQCAtOTIsNiArOTIsOCBAQCBk
ZWYgcGFyc2VfYXJncyhhcmdzKToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVscD0n
RW5hYmxlIHZlcmJvc2UgcHJpbnRpbmcnKSwKICAgICAgICAgb3B0cGFyc2UubWFrZV9vcHRpb24o
Jy0tdGltZXN0YW1wcycsIGFjdGlvbj0nc3RvcmVfdHJ1ZScsIGRlZmF1bHQ9RmFsc2UsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGhlbHA9J1ByaW50IHRpbWVzdGFtcHMgZm9yIGVhY2gg
bG9nZ2VkIGxpbmUnKSwKKyAgICAgICAgb3B0cGFyc2UubWFrZV9vcHRpb24oJy0tanNvbi1vdXRw
dXQnLCBhY3Rpb249J3N0b3JlJywgZGVmYXVsdD1Ob25lLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBoZWxwPSdTYXZlIHRlc3QgcmVzdWx0cyBhcyBKU09OIHRvIGZpbGUnKSwKICAgICBd
KSkKIAogICAgIG9wdGlvbl9ncm91cF9kZWZpbml0aW9ucy5hcHBlbmQoKCdXZWJLaXQgT3B0aW9u
cycsIFsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347952</attachid>
            <date>2018-08-23 14:24:06 -0700</date>
            <delta_ts>2018-08-23 14:50:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188869-20180823142405.patch</filename>
            <type>text/plain</type>
            <size>5682</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIzNTIxMCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDI2IEBACisyMDE4LTA4LTIyICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBBUEkgdGVzdHMgc2hvdWxkIG91dHB1dCBqc29uIHJlc3VsdHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4ODg2OQorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNDM2MTU2NTI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgSlNPTiBvdXRwdXQgZm9yIEFQSSB0ZXN0cyBpcyBvZiB0aGUg
Zm9ybToKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAiRmFpbGVkIjogW3sibmFtZSI6
IDx0ZXN0IG5hbWU+LCAib3V0cHV0IjogPHRlc3QgbG9nPn1dLAorICAgICAgICAgICAgICAgICJU
aW1lZG91dCI6IFsuLi5dLAorICAgICAgICAgICAgICAgICJTa2lwcGVkIjogWy4uLl0sCisgICAg
ICAgICAgICAgICAgIkNyYXNoZWQiOiBbLi4uXQorICAgICAgICAgICAgfQorICAgICAgICBUZXN0
cyB3aGljaCBhcmUgc3VjY2Vzc2Z1bCBhcmUgbm90IGRpc3BsYXllZCBpbiB0aGUganNvbiBvdXRw
dXQuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2FwaV90ZXN0cy9tYW5hZ2VyLnB5Ogor
ICAgICAgICAoTWFuYWdlci5ydW4pOiBQcmludCB0ZXN0IHJlc3VsdHMgdG8gcHJvdmlkZWQgZmls
ZSBhcyBhIGpzb24gZGljdGlvbmFyeS4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2FwaV90
ZXN0cy9ydW5fYXBpX3Rlc3RzLnB5OgorICAgICAgICAocnVuKTogUGFzcyBqc29uIG9wdGlvbi4K
KyAgICAgICAgKHBhcnNlX2FyZ3MpOiBBZGQgLS1qc29uLW91dHB1dCBmbGFnLgorCiAyMDE4LTA4
LTIyICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFtB
dHRhY2htZW50IFN1cHBvcnRdIFN1cHBvcnQgZHJhZ2dpbmcgYXR0YWNobWVudCBlbGVtZW50cyBv
dXQgYXMgZmlsZXMgb24gbWFjT1MKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvYXBpX3Rl
c3RzL21hbmFnZXIucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9hcGlf
dGVzdHMvbWFuYWdlci5weQkocmV2aXNpb24gMjM1MjAyKQorKysgVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9hcGlfdGVzdHMvbWFuYWdlci5weQkod29ya2luZyBjb3B5KQpAQCAtMjAsNiArMjAsNyBA
QAogIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwogIyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAoraW1wb3J0IGpzb24KIGltcG9ydCBs
b2dnaW5nCiBpbXBvcnQgb3MKIApAQCAtMTQ4LDcgKzE0OSwxMiBAQCBjbGFzcyBNYW5hZ2VyKG9i
amVjdCk6CiAgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3BvcnQucGF0aF90b19hcGlfdGVz
dF9iaW5hcmllcygpLmtleXMoKQogICAgICAgICByZXR1cm4gYmluYXJpZXMgb3Igc2VsZi5fcG9y
dC5wYXRoX3RvX2FwaV90ZXN0X2JpbmFyaWVzKCkua2V5cygpCiAKLSAgICBkZWYgcnVuKHNlbGYs
IGFyZ3MpOgorICAgIGRlZiBydW4oc2VsZiwgYXJncywganNvbl9vdXRwdXQ9Tm9uZSk6CisgICAg
ICAgIGlmIGpzb25fb3V0cHV0OgorICAgICAgICAgICAganNvbl9vdXRwdXQgPSBzZWxmLmhvc3Qu
ZmlsZXN5c3RlbS5hYnNwYXRoKGpzb25fb3V0cHV0KQorICAgICAgICAgICAgaWYgbm90IHNlbGYu
aG9zdC5maWxlc3lzdGVtLmlzZGlyKHNlbGYuaG9zdC5maWxlc3lzdGVtLmRpcm5hbWUoanNvbl9v
dXRwdXQpKSBvciBzZWxmLmhvc3QuZmlsZXN5c3RlbS5pc2Rpcihqc29uX291dHB1dCk6CisgICAg
ICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCdDYW5ub3Qgd3JpdGUgdG8ge30nLmZvcm1h
dChqc29uX291dHB1dCkpCisKICAgICAgICAgc2VsZi5fc3RyZWFtLndyaXRlX3VwZGF0ZSgnQ2hl
Y2tpbmcgYnVpbGQgLi4uJykKICAgICAgICAgaWYgbm90IHNlbGYuX3BvcnQuY2hlY2tfYXBpX3Rl
c3RfYnVpbGQoc2VsZi5fYmluYXJpZXNfZm9yX2FyZ3VtZW50cyhhcmdzKSk6CiAgICAgICAgICAg
ICBfbG9nLmVycm9yKCdCdWlsZCBjaGVjayBmYWlsZWQnKQpAQCAtMTg0LDkgKzE5MCwxOCBAQCBj
bGFzcyBNYW5hZ2VyKG9iamVjdCk6CiAgICAgICAgIGRpc2FibGVkID0gbGVuKHJ1bm5lci5yZXN1
bHRfbWFwX2J5X3N0YXR1cyhydW5uZXIuU1RBVFVTX0RJU0FCTEVEKSkKICAgICAgICAgX2xvZy5p
bmZvKCdSYW4ge30gdGVzdHMgb2Yge30gd2l0aCB7fSBzdWNjZXNzZnVsJy5mb3JtYXQobGVuKHJ1
bm5lci5yZXN1bHRzKSAtIGRpc2FibGVkLCBsZW4odGVzdF9uYW1lcyksIGxlbihzdWNjZXNzZnVs
KSkpCiAKLSAgICAgICAgc2VsZi5fc3RyZWFtLndyaXRlbG4oJy0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLScpCisgICAgICAgIHJlc3VsdF9kaWN0aW9uYXJ5ID0geworICAgICAgICAgICAg
J1NraXBwZWQnOiBbXSwKKyAgICAgICAgICAgICdGYWlsZWQnOiBbXSwKKyAgICAgICAgICAgICdD
cmFzaGVkJzogW10sCisgICAgICAgICAgICAnVGltZWRvdXQnOiBbXSwKKyAgICAgICAgfQorCisg
ICAgICAgIHNlbGYuX3N0cmVhbS53cml0ZWxuKCctJyAqIDMwKQogICAgICAgICBpZiBsZW4oc3Vj
Y2Vzc2Z1bCkgKyBkaXNhYmxlZCA9PSBsZW4odGVzdF9uYW1lcyk6CiAgICAgICAgICAgICBzZWxm
Ll9zdHJlYW0ud3JpdGVsbignQWxsIHRlc3RzIHN1Y2Nlc3NmdWxseSBwYXNzZWQhJykKKyAgICAg
ICAgICAgIGlmIGpzb25fb3V0cHV0OgorICAgICAgICAgICAgICAgIHNlbGYuaG9zdC5maWxlc3lz
dGVtLndyaXRlX3RleHRfZmlsZShqc29uX291dHB1dCwganNvbi5kdW1wcyhyZXN1bHRfZGljdGlv
bmFyeSwgaW5kZW50PTQpKQogICAgICAgICAgICAgcmV0dXJuIE1hbmFnZXIuU1VDQ0VTUwogCiAg
ICAgICAgIHNlbGYuX3N0cmVhbS53cml0ZWxuKCdUZXN0IHN1aXRlIGZhaWxlZCcpCkBAIC0xOTYs
NiArMjExLDcgQEAgY2xhc3MgTWFuYWdlcihvYmplY3QpOgogICAgICAgICBmb3IgdGVzdCBpbiB0
ZXN0X25hbWVzOgogICAgICAgICAgICAgaWYgdGVzdCBub3QgaW4gcnVubmVyLnJlc3VsdHM6CiAg
ICAgICAgICAgICAgICAgc2tpcHBlZC5hcHBlbmQodGVzdCkKKyAgICAgICAgICAgICAgICByZXN1
bHRfZGljdGlvbmFyeVsnU2tpcHBlZCddLmFwcGVuZCh7J25hbWUnOiB0ZXN0LCAnb3V0cHV0Jzog
Tm9uZX0pCiAgICAgICAgIGlmIHNraXBwZWQ6CiAgICAgICAgICAgICBzZWxmLl9zdHJlYW0ud3Jp
dGVsbignU2tpcHBlZCB7fSB0ZXN0cycuZm9ybWF0KGxlbihza2lwcGVkKSkpCiAgICAgICAgICAg
ICBzZWxmLl9zdHJlYW0ud3JpdGVsbignJykKQEAgLTIwNyw0ICsyMjMsMTggQEAgY2xhc3MgTWFu
YWdlcihvYmplY3QpOgogICAgICAgICBzZWxmLl9wcmludF90ZXN0c19yZXN1bHRfd2l0aF9zdGF0
dXMocnVubmVyLlNUQVRVU19DUkFTSEVELCBydW5uZXIpCiAgICAgICAgIHNlbGYuX3ByaW50X3Rl
c3RzX3Jlc3VsdF93aXRoX3N0YXR1cyhydW5uZXIuU1RBVFVTX1RJTUVPVVQsIHJ1bm5lcikKIAor
ICAgICAgICBmb3IgdGVzdCwgcmVzdWx0IGluIHJ1bm5lci5yZXN1bHRzLml0ZXJpdGVtcygpOgor
ICAgICAgICAgICAgc3RhdHVzX3RvX3N0cmluZyA9IHsKKyAgICAgICAgICAgICAgICBydW5uZXIu
U1RBVFVTX0ZBSUxFRDogJ0ZhaWxlZCcsCisgICAgICAgICAgICAgICAgcnVubmVyLlNUQVRVU19D
UkFTSEVEOiAnQ3Jhc2hlZCcsCisgICAgICAgICAgICAgICAgcnVubmVyLlNUQVRVU19USU1FT1VU
OiAnVGltZWRvdXQnLAorICAgICAgICAgICAgfS5nZXQocmVzdWx0WzBdKQorICAgICAgICAgICAg
aWYgbm90IHN0YXR1c190b19zdHJpbmc6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAg
ICAgICAgIHJlc3VsdF9kaWN0aW9uYXJ5W3N0YXR1c190b19zdHJpbmddID0geyduYW1lJzogdGVz
dCwgJ291dHB1dCc6IHJlc3VsdFsxXX0KKworICAgICAgICBpZiBqc29uX291dHB1dDoKKyAgICAg
ICAgICAgIHByaW50IGpzb25fb3V0cHV0CisgICAgICAgICAgICBzZWxmLmhvc3QuZmlsZXN5c3Rl
bS53cml0ZV90ZXh0X2ZpbGUoanNvbl9vdXRwdXQsIGpzb24uZHVtcHMocmVzdWx0X2RpY3Rpb25h
cnksIGluZGVudD00KSkKKwogICAgICAgICByZXR1cm4gTWFuYWdlci5GQUlMRURfVEVTVFMKSW5k
ZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvYXBpX3Rlc3RzL3J1bl9hcGlfdGVzdHMucHkKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9hcGlfdGVzdHMvcnVuX2FwaV90ZXN0
cy5weQkocmV2aXNpb24gMjM1MjAyKQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS9hcGlfdGVz
dHMvcnVuX2FwaV90ZXN0cy5weQkod29ya2luZyBjb3B5KQpAQCAtNzMsNyArNzMsNyBAQCBkZWYg
cnVuKHBvcnQsIG9wdGlvbnMsIGFyZ3MsIGxvZ2dpbmdfc3RyCiAgICAgICAgIHN0cmVhbSA9IE1l
dGVyZWRTdHJlYW0obG9nZ2luZ19zdHJlYW0sIG9wdGlvbnMudmVyYm9zZSwgbG9nZ2VyPWxvZ2dl
ciwgbnVtYmVyX29mX2NvbHVtbnM9cG9ydC5ob3N0LnBsYXRmb3JtLnRlcm1pbmFsX3dpZHRoKCks
IHByaW50X3RpbWVzdGFtcHM9b3B0aW9ucy50aW1lc3RhbXBzKQogICAgICAgICBtYW5hZ2VyID0g
TWFuYWdlcihwb3J0LCBvcHRpb25zLCBzdHJlYW0pCiAKLSAgICAgICAgcmVzdWx0ID0gbWFuYWdl
ci5ydW4oYXJncykKKyAgICAgICAgcmVzdWx0ID0gbWFuYWdlci5ydW4oYXJncywganNvbl9vdXRw
dXQ9b3B0aW9ucy5qc29uX291dHB1dCkKICAgICAgICAgX2xvZy5kZWJ1ZygiVGVzdGluZyBjb21w
bGV0ZWQsIEV4aXQgc3RhdHVzOiAlZCIgJSByZXN1bHQpCiAgICAgICAgIHJldHVybiByZXN1bHQK
ICAgICBmaW5hbGx5OgpAQCAtOTIsNiArOTIsOCBAQCBkZWYgcGFyc2VfYXJncyhhcmdzKToKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVscD0nRW5hYmxlIHZlcmJvc2UgcHJpbnRpbmcn
KSwKICAgICAgICAgb3B0cGFyc2UubWFrZV9vcHRpb24oJy0tdGltZXN0YW1wcycsIGFjdGlvbj0n
c3RvcmVfdHJ1ZScsIGRlZmF1bHQ9RmFsc2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGhlbHA9J1ByaW50IHRpbWVzdGFtcHMgZm9yIGVhY2ggbG9nZ2VkIGxpbmUnKSwKKyAgICAgICAg
b3B0cGFyc2UubWFrZV9vcHRpb24oJy0tanNvbi1vdXRwdXQnLCBhY3Rpb249J3N0b3JlJywgZGVm
YXVsdD1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSdTYXZlIHRlc3Qg
cmVzdWx0cyBhcyBKU09OIHRvIGZpbGUnKSwKICAgICBdKSkKIAogICAgIG9wdGlvbl9ncm91cF9k
ZWZpbml0aW9ucy5hcHBlbmQoKCdXZWJLaXQgT3B0aW9ucycsIFsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347956</attachid>
            <date>2018-08-23 14:50:08 -0700</date>
            <delta_ts>2018-08-23 15:12:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188869-20180823145008.patch</filename>
            <type>text/plain</type>
            <size>5663</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIzNTI0OSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDI2IEBACisyMDE4LTA4LTIzICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBBUEkgdGVzdHMgc2hvdWxkIG91dHB1dCBqc29uIHJlc3VsdHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4ODg2OQorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNDM2MTU2NTI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgSlNPTiBvdXRwdXQgZm9yIEFQSSB0ZXN0cyBpcyBvZiB0aGUg
Zm9ybToKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAiRmFpbGVkIjogW3sibmFtZSI6
IDx0ZXN0IG5hbWU+LCAib3V0cHV0IjogPHRlc3QgbG9nPn1dLAorICAgICAgICAgICAgICAgICJU
aW1lZG91dCI6IFsuLi5dLAorICAgICAgICAgICAgICAgICJTa2lwcGVkIjogWy4uLl0sCisgICAg
ICAgICAgICAgICAgIkNyYXNoZWQiOiBbLi4uXQorICAgICAgICAgICAgfQorICAgICAgICBUZXN0
cyB3aGljaCBhcmUgc3VjY2Vzc2Z1bCBhcmUgbm90IGRpc3BsYXllZCBpbiB0aGUganNvbiBvdXRw
dXQuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2FwaV90ZXN0cy9tYW5hZ2VyLnB5Ogor
ICAgICAgICAoTWFuYWdlci5ydW4pOiBQcmludCB0ZXN0IHJlc3VsdHMgdG8gcHJvdmlkZWQgZmls
ZSBhcyBhIGpzb24gZGljdGlvbmFyeS4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2FwaV90
ZXN0cy9ydW5fYXBpX3Rlc3RzLnB5OgorICAgICAgICAocnVuKTogUGFzcyBqc29uIG9wdGlvbi4K
KyAgICAgICAgKHBhcnNlX2FyZ3MpOiBBZGQgLS1qc29uLW91dHB1dCBmbGFnLgorCiAyMDE4LTA4
LTIzICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAg
W1dTTF0gVGVybmFyeSBleHByZXNzaW9ucyBhcHBlYXIgdG8gYmUgdW5pbXBsZW1lbnRlZApJbmRl
eDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9hcGlfdGVzdHMvbWFuYWdlci5weQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2FwaV90ZXN0cy9tYW5hZ2VyLnB5CShyZXZpc2lv
biAyMzUyNDkpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2FwaV90ZXN0cy9tYW5hZ2VyLnB5
CSh3b3JraW5nIGNvcHkpCkBAIC0yMCw2ICsyMCw3IEBACiAjIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
CiAjIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgogCitpbXBvcnQganNvbgogaW1wb3J0IGxvZ2dpbmcKIGltcG9ydCBvcwogCkBAIC0x
NDgsNyArMTQ5LDEyIEBAIGNsYXNzIE1hbmFnZXIob2JqZWN0KToKICAgICAgICAgICAgICAgICBy
ZXR1cm4gc2VsZi5fcG9ydC5wYXRoX3RvX2FwaV90ZXN0X2JpbmFyaWVzKCkua2V5cygpCiAgICAg
ICAgIHJldHVybiBiaW5hcmllcyBvciBzZWxmLl9wb3J0LnBhdGhfdG9fYXBpX3Rlc3RfYmluYXJp
ZXMoKS5rZXlzKCkKIAotICAgIGRlZiBydW4oc2VsZiwgYXJncyk6CisgICAgZGVmIHJ1bihzZWxm
LCBhcmdzLCBqc29uX291dHB1dD1Ob25lKToKKyAgICAgICAgaWYganNvbl9vdXRwdXQ6CisgICAg
ICAgICAgICBqc29uX291dHB1dCA9IHNlbGYuaG9zdC5maWxlc3lzdGVtLmFic3BhdGgoanNvbl9v
dXRwdXQpCisgICAgICAgICAgICBpZiBub3Qgc2VsZi5ob3N0LmZpbGVzeXN0ZW0uaXNkaXIoc2Vs
Zi5ob3N0LmZpbGVzeXN0ZW0uZGlybmFtZShqc29uX291dHB1dCkpIG9yIHNlbGYuaG9zdC5maWxl
c3lzdGVtLmlzZGlyKGpzb25fb3V0cHV0KToKKyAgICAgICAgICAgICAgICByYWlzZSBSdW50aW1l
RXJyb3IoJ0Nhbm5vdCB3cml0ZSB0byB7fScuZm9ybWF0KGpzb25fb3V0cHV0KSkKKwogICAgICAg
ICBzZWxmLl9zdHJlYW0ud3JpdGVfdXBkYXRlKCdDaGVja2luZyBidWlsZCAuLi4nKQogICAgICAg
ICBpZiBub3Qgc2VsZi5fcG9ydC5jaGVja19hcGlfdGVzdF9idWlsZChzZWxmLl9iaW5hcmllc19m
b3JfYXJndW1lbnRzKGFyZ3MpKToKICAgICAgICAgICAgIF9sb2cuZXJyb3IoJ0J1aWxkIGNoZWNr
IGZhaWxlZCcpCkBAIC0xODQsOSArMTkwLDE4IEBAIGNsYXNzIE1hbmFnZXIob2JqZWN0KToKICAg
ICAgICAgZGlzYWJsZWQgPSBsZW4ocnVubmVyLnJlc3VsdF9tYXBfYnlfc3RhdHVzKHJ1bm5lci5T
VEFUVVNfRElTQUJMRUQpKQogICAgICAgICBfbG9nLmluZm8oJ1JhbiB7fSB0ZXN0cyBvZiB7fSB3
aXRoIHt9IHN1Y2Nlc3NmdWwnLmZvcm1hdChsZW4ocnVubmVyLnJlc3VsdHMpIC0gZGlzYWJsZWQs
IGxlbih0ZXN0X25hbWVzKSwgbGVuKHN1Y2Nlc3NmdWwpKSkKIAotICAgICAgICBzZWxmLl9zdHJl
YW0ud3JpdGVsbignLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJykKKyAgICAgICAgcmVz
dWx0X2RpY3Rpb25hcnkgPSB7CisgICAgICAgICAgICAnU2tpcHBlZCc6IFtdLAorICAgICAgICAg
ICAgJ0ZhaWxlZCc6IFtdLAorICAgICAgICAgICAgJ0NyYXNoZWQnOiBbXSwKKyAgICAgICAgICAg
ICdUaW1lZG91dCc6IFtdLAorICAgICAgICB9CisKKyAgICAgICAgc2VsZi5fc3RyZWFtLndyaXRl
bG4oJy0nICogMzApCiAgICAgICAgIGlmIGxlbihzdWNjZXNzZnVsKSArIGRpc2FibGVkID09IGxl
bih0ZXN0X25hbWVzKToKICAgICAgICAgICAgIHNlbGYuX3N0cmVhbS53cml0ZWxuKCdBbGwgdGVz
dHMgc3VjY2Vzc2Z1bGx5IHBhc3NlZCEnKQorICAgICAgICAgICAgaWYganNvbl9vdXRwdXQ6Cisg
ICAgICAgICAgICAgICAgc2VsZi5ob3N0LmZpbGVzeXN0ZW0ud3JpdGVfdGV4dF9maWxlKGpzb25f
b3V0cHV0LCBqc29uLmR1bXBzKHJlc3VsdF9kaWN0aW9uYXJ5LCBpbmRlbnQ9NCkpCiAgICAgICAg
ICAgICByZXR1cm4gTWFuYWdlci5TVUNDRVNTCiAKICAgICAgICAgc2VsZi5fc3RyZWFtLndyaXRl
bG4oJ1Rlc3Qgc3VpdGUgZmFpbGVkJykKQEAgLTE5Niw2ICsyMTEsNyBAQCBjbGFzcyBNYW5hZ2Vy
KG9iamVjdCk6CiAgICAgICAgIGZvciB0ZXN0IGluIHRlc3RfbmFtZXM6CiAgICAgICAgICAgICBp
ZiB0ZXN0IG5vdCBpbiBydW5uZXIucmVzdWx0czoKICAgICAgICAgICAgICAgICBza2lwcGVkLmFw
cGVuZCh0ZXN0KQorICAgICAgICAgICAgICAgIHJlc3VsdF9kaWN0aW9uYXJ5WydTa2lwcGVkJ10u
YXBwZW5kKHsnbmFtZSc6IHRlc3QsICdvdXRwdXQnOiBOb25lfSkKICAgICAgICAgaWYgc2tpcHBl
ZDoKICAgICAgICAgICAgIHNlbGYuX3N0cmVhbS53cml0ZWxuKCdTa2lwcGVkIHt9IHRlc3RzJy5m
b3JtYXQobGVuKHNraXBwZWQpKSkKICAgICAgICAgICAgIHNlbGYuX3N0cmVhbS53cml0ZWxuKCcn
KQpAQCAtMjA3LDQgKzIyMywxOCBAQCBjbGFzcyBNYW5hZ2VyKG9iamVjdCk6CiAgICAgICAgIHNl
bGYuX3ByaW50X3Rlc3RzX3Jlc3VsdF93aXRoX3N0YXR1cyhydW5uZXIuU1RBVFVTX0NSQVNIRUQs
IHJ1bm5lcikKICAgICAgICAgc2VsZi5fcHJpbnRfdGVzdHNfcmVzdWx0X3dpdGhfc3RhdHVzKHJ1
bm5lci5TVEFUVVNfVElNRU9VVCwgcnVubmVyKQogCisgICAgICAgIGZvciB0ZXN0LCByZXN1bHQg
aW4gcnVubmVyLnJlc3VsdHMuaXRlcml0ZW1zKCk6CisgICAgICAgICAgICBzdGF0dXNfdG9fc3Ry
aW5nID0geworICAgICAgICAgICAgICAgIHJ1bm5lci5TVEFUVVNfRkFJTEVEOiAnRmFpbGVkJywK
KyAgICAgICAgICAgICAgICBydW5uZXIuU1RBVFVTX0NSQVNIRUQ6ICdDcmFzaGVkJywKKyAgICAg
ICAgICAgICAgICBydW5uZXIuU1RBVFVTX1RJTUVPVVQ6ICdUaW1lZG91dCcsCisgICAgICAgICAg
ICB9LmdldChyZXN1bHRbMF0pCisgICAgICAgICAgICBpZiBub3Qgc3RhdHVzX3RvX3N0cmluZzoK
KyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgcmVzdWx0X2RpY3Rpb25hcnlb
c3RhdHVzX3RvX3N0cmluZ10uYXBwZW5kKHsnbmFtZSc6IHRlc3QsICdvdXRwdXQnOiByZXN1bHRb
MV19KQorCisgICAgICAgIGlmIGpzb25fb3V0cHV0OgorICAgICAgICAgICAgcHJpbnQganNvbl9v
dXRwdXQKKyAgICAgICAgICAgIHNlbGYuaG9zdC5maWxlc3lzdGVtLndyaXRlX3RleHRfZmlsZShq
c29uX291dHB1dCwganNvbi5kdW1wcyhyZXN1bHRfZGljdGlvbmFyeSwgaW5kZW50PTQpKQorCiAg
ICAgICAgIHJldHVybiBNYW5hZ2VyLkZBSUxFRF9URVNUUwpJbmRleDogVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9hcGlfdGVzdHMvcnVuX2FwaV90ZXN0cy5weQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9T
Y3JpcHRzL3dlYmtpdHB5L2FwaV90ZXN0cy9ydW5fYXBpX3Rlc3RzLnB5CShyZXZpc2lvbiAyMzUy
NDkpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2FwaV90ZXN0cy9ydW5fYXBpX3Rlc3RzLnB5
CSh3b3JraW5nIGNvcHkpCkBAIC03Myw3ICs3Myw3IEBAIGRlZiBydW4ocG9ydCwgb3B0aW9ucywg
YXJncywgbG9nZ2luZ19zdHIKICAgICAgICAgc3RyZWFtID0gTWV0ZXJlZFN0cmVhbShsb2dnaW5n
X3N0cmVhbSwgb3B0aW9ucy52ZXJib3NlLCBsb2dnZXI9bG9nZ2VyLCBudW1iZXJfb2ZfY29sdW1u
cz1wb3J0Lmhvc3QucGxhdGZvcm0udGVybWluYWxfd2lkdGgoKSwgcHJpbnRfdGltZXN0YW1wcz1v
cHRpb25zLnRpbWVzdGFtcHMpCiAgICAgICAgIG1hbmFnZXIgPSBNYW5hZ2VyKHBvcnQsIG9wdGlv
bnMsIHN0cmVhbSkKIAotICAgICAgICByZXN1bHQgPSBtYW5hZ2VyLnJ1bihhcmdzKQorICAgICAg
ICByZXN1bHQgPSBtYW5hZ2VyLnJ1bihhcmdzLCBqc29uX291dHB1dD1vcHRpb25zLmpzb25fb3V0
cHV0KQogICAgICAgICBfbG9nLmRlYnVnKCJUZXN0aW5nIGNvbXBsZXRlZCwgRXhpdCBzdGF0dXM6
ICVkIiAlIHJlc3VsdCkKICAgICAgICAgcmV0dXJuIHJlc3VsdAogICAgIGZpbmFsbHk6CkBAIC05
Miw2ICs5Miw4IEBAIGRlZiBwYXJzZV9hcmdzKGFyZ3MpOgogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBoZWxwPSdFbmFibGUgdmVyYm9zZSBwcmludGluZycpLAogICAgICAgICBvcHRwYXJz
ZS5tYWtlX29wdGlvbignLS10aW1lc3RhbXBzJywgYWN0aW9uPSdzdG9yZV90cnVlJywgZGVmYXVs
dD1GYWxzZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVscD0nUHJpbnQgdGltZXN0
YW1wcyBmb3IgZWFjaCBsb2dnZWQgbGluZScpLAorICAgICAgICBvcHRwYXJzZS5tYWtlX29wdGlv
bignLS1qc29uLW91dHB1dCcsIGFjdGlvbj0nc3RvcmUnLCBkZWZhdWx0PU5vbmUsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGhlbHA9J1NhdmUgdGVzdCByZXN1bHRzIGFzIEpTT04gdG8g
ZmlsZScpLAogICAgIF0pKQogCiAgICAgb3B0aW9uX2dyb3VwX2RlZmluaXRpb25zLmFwcGVuZCgo
J1dlYktpdCBPcHRpb25zJywgWwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347960</attachid>
            <date>2018-08-23 15:12:25 -0700</date>
            <delta_ts>2018-08-23 15:50:58 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-188869-20180823151224.patch</filename>
            <type>text/plain</type>
            <size>5629</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIzNTI0OSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDI2IEBACisyMDE4LTA4LTIzICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICBBUEkgdGVzdHMgc2hvdWxkIG91dHB1dCBqc29uIHJlc3VsdHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4ODg2OQorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNDM2MTU2NTI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWFrYXNo
IEphaW4uCisKKyAgICAgICAgSlNPTiBvdXRwdXQgZm9yIEFQSSB0ZXN0cyBpcyBvZiB0aGUgZm9y
bToKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAiRmFpbGVkIjogW3sibmFtZSI6IDx0
ZXN0IG5hbWU+LCAib3V0cHV0IjogPHRlc3QgbG9nPn1dLAorICAgICAgICAgICAgICAgICJUaW1l
ZG91dCI6IFsuLi5dLAorICAgICAgICAgICAgICAgICJTa2lwcGVkIjogWy4uLl0sCisgICAgICAg
ICAgICAgICAgIkNyYXNoZWQiOiBbLi4uXQorICAgICAgICAgICAgfQorICAgICAgICBUZXN0cyB3
aGljaCBhcmUgc3VjY2Vzc2Z1bCBhcmUgbm90IGRpc3BsYXllZCBpbiB0aGUganNvbiBvdXRwdXQu
CisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2FwaV90ZXN0cy9tYW5hZ2VyLnB5OgorICAg
ICAgICAoTWFuYWdlci5ydW4pOiBQcmludCB0ZXN0IHJlc3VsdHMgdG8gcHJvdmlkZWQgZmlsZSBh
cyBhIGpzb24gZGljdGlvbmFyeS4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2FwaV90ZXN0
cy9ydW5fYXBpX3Rlc3RzLnB5OgorICAgICAgICAocnVuKTogUGFzcyBqc29uIG9wdGlvbi4KKyAg
ICAgICAgKHBhcnNlX2FyZ3MpOiBBZGQgLS1qc29uLW91dHB1dCBmbGFnLgorCiAyMDE4LTA4LTIz
ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgW1dT
TF0gVGVybmFyeSBleHByZXNzaW9ucyBhcHBlYXIgdG8gYmUgdW5pbXBsZW1lbnRlZApJbmRleDog
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9hcGlfdGVzdHMvbWFuYWdlci5weQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2FwaV90ZXN0cy9tYW5hZ2VyLnB5CShyZXZpc2lvbiAy
MzUyNDkpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2FwaV90ZXN0cy9tYW5hZ2VyLnB5CSh3
b3JraW5nIGNvcHkpCkBAIC0yMCw2ICsyMCw3IEBACiAjIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCiAj
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgogCitpbXBvcnQganNvbgogaW1wb3J0IGxvZ2dpbmcKIGltcG9ydCBvcwogCkBAIC0xNDgs
NyArMTQ5LDEyIEBAIGNsYXNzIE1hbmFnZXIob2JqZWN0KToKICAgICAgICAgICAgICAgICByZXR1
cm4gc2VsZi5fcG9ydC5wYXRoX3RvX2FwaV90ZXN0X2JpbmFyaWVzKCkua2V5cygpCiAgICAgICAg
IHJldHVybiBiaW5hcmllcyBvciBzZWxmLl9wb3J0LnBhdGhfdG9fYXBpX3Rlc3RfYmluYXJpZXMo
KS5rZXlzKCkKIAotICAgIGRlZiBydW4oc2VsZiwgYXJncyk6CisgICAgZGVmIHJ1bihzZWxmLCBh
cmdzLCBqc29uX291dHB1dD1Ob25lKToKKyAgICAgICAgaWYganNvbl9vdXRwdXQ6CisgICAgICAg
ICAgICBqc29uX291dHB1dCA9IHNlbGYuaG9zdC5maWxlc3lzdGVtLmFic3BhdGgoanNvbl9vdXRw
dXQpCisgICAgICAgICAgICBpZiBub3Qgc2VsZi5ob3N0LmZpbGVzeXN0ZW0uaXNkaXIoc2VsZi5o
b3N0LmZpbGVzeXN0ZW0uZGlybmFtZShqc29uX291dHB1dCkpIG9yIHNlbGYuaG9zdC5maWxlc3lz
dGVtLmlzZGlyKGpzb25fb3V0cHV0KToKKyAgICAgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJy
b3IoJ0Nhbm5vdCB3cml0ZSB0byB7fScuZm9ybWF0KGpzb25fb3V0cHV0KSkKKwogICAgICAgICBz
ZWxmLl9zdHJlYW0ud3JpdGVfdXBkYXRlKCdDaGVja2luZyBidWlsZCAuLi4nKQogICAgICAgICBp
ZiBub3Qgc2VsZi5fcG9ydC5jaGVja19hcGlfdGVzdF9idWlsZChzZWxmLl9iaW5hcmllc19mb3Jf
YXJndW1lbnRzKGFyZ3MpKToKICAgICAgICAgICAgIF9sb2cuZXJyb3IoJ0J1aWxkIGNoZWNrIGZh
aWxlZCcpCkBAIC0xODQsOSArMTkwLDE4IEBAIGNsYXNzIE1hbmFnZXIob2JqZWN0KToKICAgICAg
ICAgZGlzYWJsZWQgPSBsZW4ocnVubmVyLnJlc3VsdF9tYXBfYnlfc3RhdHVzKHJ1bm5lci5TVEFU
VVNfRElTQUJMRUQpKQogICAgICAgICBfbG9nLmluZm8oJ1JhbiB7fSB0ZXN0cyBvZiB7fSB3aXRo
IHt9IHN1Y2Nlc3NmdWwnLmZvcm1hdChsZW4ocnVubmVyLnJlc3VsdHMpIC0gZGlzYWJsZWQsIGxl
bih0ZXN0X25hbWVzKSwgbGVuKHN1Y2Nlc3NmdWwpKSkKIAotICAgICAgICBzZWxmLl9zdHJlYW0u
d3JpdGVsbignLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJykKKyAgICAgICAgcmVzdWx0
X2RpY3Rpb25hcnkgPSB7CisgICAgICAgICAgICAnU2tpcHBlZCc6IFtdLAorICAgICAgICAgICAg
J0ZhaWxlZCc6IFtdLAorICAgICAgICAgICAgJ0NyYXNoZWQnOiBbXSwKKyAgICAgICAgICAgICdU
aW1lZG91dCc6IFtdLAorICAgICAgICB9CisKKyAgICAgICAgc2VsZi5fc3RyZWFtLndyaXRlbG4o
Jy0nICogMzApCiAgICAgICAgIGlmIGxlbihzdWNjZXNzZnVsKSArIGRpc2FibGVkID09IGxlbih0
ZXN0X25hbWVzKToKICAgICAgICAgICAgIHNlbGYuX3N0cmVhbS53cml0ZWxuKCdBbGwgdGVzdHMg
c3VjY2Vzc2Z1bGx5IHBhc3NlZCEnKQorICAgICAgICAgICAgaWYganNvbl9vdXRwdXQ6CisgICAg
ICAgICAgICAgICAgc2VsZi5ob3N0LmZpbGVzeXN0ZW0ud3JpdGVfdGV4dF9maWxlKGpzb25fb3V0
cHV0LCBqc29uLmR1bXBzKHJlc3VsdF9kaWN0aW9uYXJ5LCBpbmRlbnQ9NCkpCiAgICAgICAgICAg
ICByZXR1cm4gTWFuYWdlci5TVUNDRVNTCiAKICAgICAgICAgc2VsZi5fc3RyZWFtLndyaXRlbG4o
J1Rlc3Qgc3VpdGUgZmFpbGVkJykKQEAgLTE5Niw2ICsyMTEsNyBAQCBjbGFzcyBNYW5hZ2VyKG9i
amVjdCk6CiAgICAgICAgIGZvciB0ZXN0IGluIHRlc3RfbmFtZXM6CiAgICAgICAgICAgICBpZiB0
ZXN0IG5vdCBpbiBydW5uZXIucmVzdWx0czoKICAgICAgICAgICAgICAgICBza2lwcGVkLmFwcGVu
ZCh0ZXN0KQorICAgICAgICAgICAgICAgIHJlc3VsdF9kaWN0aW9uYXJ5WydTa2lwcGVkJ10uYXBw
ZW5kKHsnbmFtZSc6IHRlc3QsICdvdXRwdXQnOiBOb25lfSkKICAgICAgICAgaWYgc2tpcHBlZDoK
ICAgICAgICAgICAgIHNlbGYuX3N0cmVhbS53cml0ZWxuKCdTa2lwcGVkIHt9IHRlc3RzJy5mb3Jt
YXQobGVuKHNraXBwZWQpKSkKICAgICAgICAgICAgIHNlbGYuX3N0cmVhbS53cml0ZWxuKCcnKQpA
QCAtMjA3LDQgKzIyMywxNyBAQCBjbGFzcyBNYW5hZ2VyKG9iamVjdCk6CiAgICAgICAgIHNlbGYu
X3ByaW50X3Rlc3RzX3Jlc3VsdF93aXRoX3N0YXR1cyhydW5uZXIuU1RBVFVTX0NSQVNIRUQsIHJ1
bm5lcikKICAgICAgICAgc2VsZi5fcHJpbnRfdGVzdHNfcmVzdWx0X3dpdGhfc3RhdHVzKHJ1bm5l
ci5TVEFUVVNfVElNRU9VVCwgcnVubmVyKQogCisgICAgICAgIGZvciB0ZXN0LCByZXN1bHQgaW4g
cnVubmVyLnJlc3VsdHMuaXRlcml0ZW1zKCk6CisgICAgICAgICAgICBzdGF0dXNfdG9fc3RyaW5n
ID0geworICAgICAgICAgICAgICAgIHJ1bm5lci5TVEFUVVNfRkFJTEVEOiAnRmFpbGVkJywKKyAg
ICAgICAgICAgICAgICBydW5uZXIuU1RBVFVTX0NSQVNIRUQ6ICdDcmFzaGVkJywKKyAgICAgICAg
ICAgICAgICBydW5uZXIuU1RBVFVTX1RJTUVPVVQ6ICdUaW1lZG91dCcsCisgICAgICAgICAgICB9
LmdldChyZXN1bHRbMF0pCisgICAgICAgICAgICBpZiBub3Qgc3RhdHVzX3RvX3N0cmluZzoKKyAg
ICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgcmVzdWx0X2RpY3Rpb25hcnlbc3Rh
dHVzX3RvX3N0cmluZ10uYXBwZW5kKHsnbmFtZSc6IHRlc3QsICdvdXRwdXQnOiByZXN1bHRbMV19
KQorCisgICAgICAgIGlmIGpzb25fb3V0cHV0OgorICAgICAgICAgICAgc2VsZi5ob3N0LmZpbGVz
eXN0ZW0ud3JpdGVfdGV4dF9maWxlKGpzb25fb3V0cHV0LCBqc29uLmR1bXBzKHJlc3VsdF9kaWN0
aW9uYXJ5LCBpbmRlbnQ9NCkpCisKICAgICAgICAgcmV0dXJuIE1hbmFnZXIuRkFJTEVEX1RFU1RT
CkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2FwaV90ZXN0cy9ydW5fYXBpX3Rlc3RzLnB5
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvYXBpX3Rlc3RzL3J1bl9hcGlf
dGVzdHMucHkJKHJldmlzaW9uIDIzNTI0OSkKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvYXBp
X3Rlc3RzL3J1bl9hcGlfdGVzdHMucHkJKHdvcmtpbmcgY29weSkKQEAgLTczLDcgKzczLDcgQEAg
ZGVmIHJ1bihwb3J0LCBvcHRpb25zLCBhcmdzLCBsb2dnaW5nX3N0cgogICAgICAgICBzdHJlYW0g
PSBNZXRlcmVkU3RyZWFtKGxvZ2dpbmdfc3RyZWFtLCBvcHRpb25zLnZlcmJvc2UsIGxvZ2dlcj1s
b2dnZXIsIG51bWJlcl9vZl9jb2x1bW5zPXBvcnQuaG9zdC5wbGF0Zm9ybS50ZXJtaW5hbF93aWR0
aCgpLCBwcmludF90aW1lc3RhbXBzPW9wdGlvbnMudGltZXN0YW1wcykKICAgICAgICAgbWFuYWdl
ciA9IE1hbmFnZXIocG9ydCwgb3B0aW9ucywgc3RyZWFtKQogCi0gICAgICAgIHJlc3VsdCA9IG1h
bmFnZXIucnVuKGFyZ3MpCisgICAgICAgIHJlc3VsdCA9IG1hbmFnZXIucnVuKGFyZ3MsIGpzb25f
b3V0cHV0PW9wdGlvbnMuanNvbl9vdXRwdXQpCiAgICAgICAgIF9sb2cuZGVidWcoIlRlc3Rpbmcg
Y29tcGxldGVkLCBFeGl0IHN0YXR1czogJWQiICUgcmVzdWx0KQogICAgICAgICByZXR1cm4gcmVz
dWx0CiAgICAgZmluYWxseToKQEAgLTkyLDYgKzkyLDggQEAgZGVmIHBhcnNlX2FyZ3MoYXJncyk6
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlbHA9J0VuYWJsZSB2ZXJib3NlIHByaW50
aW5nJyksCiAgICAgICAgIG9wdHBhcnNlLm1ha2Vfb3B0aW9uKCctLXRpbWVzdGFtcHMnLCBhY3Rp
b249J3N0b3JlX3RydWUnLCBkZWZhdWx0PUZhbHNlLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBoZWxwPSdQcmludCB0aW1lc3RhbXBzIGZvciBlYWNoIGxvZ2dlZCBsaW5lJyksCisgICAg
ICAgIG9wdHBhcnNlLm1ha2Vfb3B0aW9uKCctLWpzb24tb3V0cHV0JywgYWN0aW9uPSdzdG9yZScs
IGRlZmF1bHQ9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVscD0nU2F2ZSB0
ZXN0IHJlc3VsdHMgYXMgSlNPTiB0byBmaWxlJyksCiAgICAgXSkpCiAKICAgICBvcHRpb25fZ3Jv
dXBfZGVmaW5pdGlvbnMuYXBwZW5kKCgnV2ViS2l0IE9wdGlvbnMnLCBbCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>