OneNote Merge Testing - an example of "not a bug, it's a feature"

  • Last week Mike and I were performing some merge testing. "Merge" is the word we use to describe the behavior of taking my changes and Mike's changes on a page in a notebook and merging them together. For instance, if there was a table on the page, and I added data to cell 1 and Mike added data to cell 2, after we both sync we should have the same data in each of the 2 cells. It's not always that simple, though, and we were verifying OneNote was still functioning properly.

  • One of the tests was this case: we start with a page with some text on it. We both sync, then both select to work offline (via File | Sync | Work Offline). This forces both of us to use only our local copy of the notebook. The tests we performed were all based on behavior of OneNote when one of us syncs before the other. So we each started with the same page and did this one test. I added some text to the end of the paragraph, and Mike deleted the paragraph. Here's what happened next.

  • Mike synchronized his notebook. At this point, he had a page with the paragraph deleted, and his UI showed him as up to date. Then I synchronized my computer (with SHIFT+F9) and I was left with the paragraph with my changes. My UI now showed as being up to date. Mike was sitting next to me but did not have my changes. When he synced again, the paragraph he had deleted "came back" with my changes. This is the expected result - if one user adds data and another deletes data, the user that added data "wins" and the data is retained.

  • The next text confused me for a bit. We both went offline again, and Mike added a new password protected section named "Poindexter". He uploaded his changes. I synchronized my machine, and this is what I saw:

  • Since Mike was sitting right next to me, I checked his machine and this is what he saw:

  • Notice his "Poindexter" section is red chalk colored, but mine has no color. This was a bit interesting, and I thought we may be seeing a bug. I wondered why this was the case, but then I remembered the color of the section is contained in the XML. Using OMSpy, this is what it looks like:

  • <one:Section xmlns:one="https://schemas.microsoft.com/office/onenote/2007/onenote" name="Poindexter" ID="{1D39DC73-7F43-05E0-00D8-2ED18771038A}{1}{B0}" path="\\servername\share\ON2007\Poindexter.one" color="#

  • BA7575

  • ">

  • I colored the color tag red to make it a little easier to read. Then I remembered that in order to get the XML from the section, I had to give the password to the section. This makes sense since once I have the XML, I can get to all the data on the page. Since I had not given the password after the initial sync of the section, OneNote had no color to use, so used the default white. So no bug, and the feature was still working as expected. It's always great to sit down and do some focused testing and find no bugs - it lets you know the product is working!

  • Last thing: the color tag is the red, green and blue value expressed in hexadecimal notation, but all "run together." In this case, the Red value would be BA in hex, or 186 in decimal. The Green and Blue are both 75 in hex, or 117 in decimal. If you use MSPaint (or any other application) to create a custom color, you will get the "red chalk" color OneNote uses:

  • Questions, comments, concerns and criticisms are always welcome,

  • John