Fixing a bug in automation with equation support in OneNote
One of our math test scripts failed last week. It was a test designed to verify this equation could be created successfully in OneNote:
Not much to it and I can manually create this equation fine. This made me think it was a problem with the test itself.
In this case, the test simply uses our XML API to import the math ML onto a page. It reads the math ML from a text file and here is this line of math ML from that file (excuse the formatting here):
<mml:math xmlns:mml="https://www.w3.org/1998/Math/MathML" xmlns:m="https://schemas.openxmlformats.org/officeDocument/2006/math">
<mml:mover accent="true"><mml:mrow><mml:mi>A</mml:mi><mml:maction actiontype=”nobuildup”><mml:mo>^</mml:mo></mml:maction>
<mml:mi>B</mml:mi></mml:mrow><mml:mo>¯</mml:mo>
</mml:mover><mml:mo>=</mml:mo><mml:mo>!</mml:mo>
<mml:mfenced separators="|"><mml:mrow><mml:mi>A</mml:mi>
<mml:maction actiontype=”nobuildup”><mml:mo>^</mml:mo>
</mml:maction><mml:mi>B</mml:mi></mml:mrow></mml:mfenced>
</mml:math>
If you look very closely and have eagle eyes, you can probably see what the error is (was).
Look right around the "nobuild" attribute for actiontype.
<mml:maction actiontype=”nobuildup”>
Notice the smart quotes? Those are not acceptable for our XML import. The fix here was as simple as changing them to "normal" quotes and checking in the file. To be complete, though, I checked the file to ensure this was the only equation which had these symbols and it was. Now the tests are passing 100% of the time again, which is what I expect.
Next up will be a quick check to figure out how they got checked in to begin with.
Anyway, if you get some XML import errors this is one more thing to check.
Questions, comments, concerns and criticisms always welcome,
John