Date: prev next · Thread: first prev next last
2012 Archives by date, by thread · List index


Hey,

I'm currently working on a unit test and bug fix for the cursor
movement in calc. There are so many corner cases that we decided that
we would benefit from writing tests for this. Since it is inside the
view part and can be easily separated from the rest of calc I decided
to write a real unit test and use mocking to break dependencies. This
works quite well and the test is simple and executed quite fast.

The problem is now that I have to compile and link the cursormove.cxx
source file into libsclo and into the unit test. Currently our build
system does not support this and I have no idea if it is possible to
add support for this.

I attached a patch that shows the problem. In
CppunitTest_sc_cursor_move.mk I use qa/unit/cursormove.cxx and
source/ui/view/cursormove.cxx. They are compiled against the header
files in qa/unit/mock. source/ui/view/cursormove.cxx is also used in
Library_sc.mk but compiled against the calc header files.

There are currently 2 related problems. First the check for duplicated
linked objects complains that cursormove.o is linked into two libs and
then David pointed out that cursormove.cxx is only compiled once with
my current approach. So one of the two makefiles uses an object file
that uses the wrong header files.

I have currently no idea how I can solve these problems. Do you have
an idea or a solution?

Regards,
Markus

The patch is based on a week old master so it might not apply cleanly

Attachment: 0001-ScCursorMovement-unit-test-for-cursor-movement.patch
Description: Binary data


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.