Boost C++ Libraries: Ticket #11359: BOOST_CHECK_EQUAL_COLLECTIONS: can't control output operator https://svn.boost.org/trac10/ticket/11359 <p> The BOOST_CHECK_EQUAL_COLLECTIONS does not use print_helper_t&lt;T&gt; or print_log_value&lt;T&gt; to print the values to screen like BOOST_CHECK_EQUAL does. </p> <p> I work with data that is usually printed as hex. I can control when data should be printed as hex when I use BOOST_CHECK_EQUAL: <a class="ext-link" href="http://stackoverflow.com/questions/17572583/boost-check-fails-to-compile-operator-for-custom-types"><span class="icon">​</span>http://stackoverflow.com/questions/17572583/boost-check-fails-to-compile-operator-for-custom-types</a> </p> <p> However, the same technique does not work with BOOST_CHECK_EQUAL_COLLECTIONS. </p> <p> Please do one of the following: </p> <blockquote> <p> 1) Fix the collections version to use the same print helpers </p> </blockquote> <blockquote> <p> 2) Provide an easier way for the end user to control how data is displayed </p> </blockquote> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/11359 Trac 1.4.3 Raffi Enficiaud Fri, 29 May 2015 09:07:18 GMT <link>https://svn.boost.org/trac10/ticket/11359#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/11359#comment:1</guid> <description> <p> I believe this is a duplicate of <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/9390" title="#9390: Bugs: Incomplete BOOST_TEST_DONT_PRINT_LOG_VALUE (closed: fixed)">#9390</a> that is already fixed. Would you please try the current develop branch? </p> </description> <category>Ticket</category> </item> <item> <author>weegreenblobbie@…</author> <pubDate>Fri, 29 May 2015 18:06:18 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/11359#comment:2 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/11359#comment:2</guid> <description> <p> I cloned and build the develop branch like so: </p> <pre class="wiki">cd /tmp git clone https://github.com/boostorg/boost.git boost-dev cd boost-dev git submodule update --init --recursive git checkout develop git submodule status | grep test 954d3ab699ed474d9d2e95a8f81bbacf86865b26 libs/test (boost-1.56.0) ./bootstrap.sh --prefix=/opt/boost-dev ./b2 stage threading=multi link=shared sudo ./b2 install threading=multi link=shared sudo chmod -R 0755 /opt/boost-dev </pre><p> But there is no difference in my output. I'll try updating submodule 'test' to the latest revision. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>anonymous</dc:creator> <pubDate>Fri, 29 May 2015 18:10:10 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/11359#comment:3 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/11359#comment:3</guid> <description> <p> oops, my submodule update and check commands were transposed ... </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Raffi Enficiaud</dc:creator> <pubDate>Fri, 29 May 2015 20:39:18 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/11359#comment:4 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/11359#comment:4</guid> <description> <p> Replying to <a class="ticket" href="https://svn.boost.org/trac10/ticket/11359#comment:3" title="Comment 3">anonymous</a>: </p> <blockquote class="citation"> <p> oops, my submodule update and check commands were transposed ... </p> </blockquote> <p> So, do you have the status for the develop branch? the commit <code>954d3ab699ed474d9d2e95a8f81bbacf86865b26</code> is the current master. You have to do </p> <pre class="wiki">git checkout develop git submodule init git submodule update --recursive </pre> </description> <category>Ticket</category> </item> <item> <author>weegreenblobbie@…</author> <pubDate>Fri, 29 May 2015 21:03:31 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/11359#comment:5 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/11359#comment:5</guid> <description> <p> I have confirmed that the HEAD of the develop for 'test' does work as expected! </p> <p> Here is the command sequence that I used to clone and checkout the 'develop' branch for 'test': </p> <pre class="wiki">cd /tmp git clone https://github.com/boostorg/boost.git boost-dev cd boost-dev git checkout master git submodule update --init --recursive cd libs/test git checkout develop cd ../../ git submodule status | grep test +704f827401301e15e46b9de883f8d5ec4739bbef libs/test (heads/develop) ./bootstrap.sh --prefix=/opt/boost-dev ./b2 stage threading=multi link=shared sudo ./b2 install threading=multi link=shared sudo chmod -R 0755 /opt/boost-dev </pre><p> Some example output for my HEX example: </p> <pre class="wiki">src/foobar/tests/test_Foo.cc(96): error: in "test_Foo_30": check { packet.begin(), packet.end() } == { data.begin(), data.end() } has failed. Mismatch at position 1: 0x0000000000000001 != 0x0000000000000002 Mismatch at position 2: 0x0000000000000002 != 0x0000000000000003 Mismatch at position 3: 0x0000000000000003 != 0x0000000000000004 Mismatch at position 4: 0x0000000000000004 != 0x0000000000000005 Mismatch at position 5: 0x0000000000000005 != 0x0000000000000006 </pre><p> You can close this ticket and mark the milestone boost release. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Raffi Enficiaud</dc:creator> <pubDate>Fri, 29 May 2015 21:25:46 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/11359#comment:6 https://svn.boost.org/trac10/ticket/11359#comment:6 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">duplicate</span> </li> </ul> Ticket florian.rathgeber@… Tue, 24 Nov 2015 09:21:37 GMT cc changed https://svn.boost.org/trac10/ticket/11359#comment:7 https://svn.boost.org/trac10/ticket/11359#comment:7 <ul> <li><strong>cc</strong> <span class="trac-author">florian.rathgeber@…</span> added </li> </ul> <p> Note that this fix prevents using <code>BOOST_CHECK_EQUAL_COLLECTIONS</code> to compare two nested vectors e.g. <code>std::vector&lt; std::vector&lt;T&gt; &gt;</code>. </p> Ticket