Bug 333117 - Equality operators for time related classes
Summary: Equality operators for time related classes
Status: RESOLVED FIXED
Alias: None
Product: marble
Classification: Applications
Component: general (show other bugs)
Version: 1.8 (KDE 4.13)
Platform: unspecified Linux
: NOR task
Target Milestone: ---
Assignee: Cruceru Calin-Cristian
URL:
Keywords: junior-jobs
Depends on:
Blocks:
 
Reported: 2014-04-06 08:43 UTC by Dennis Nienhüser
Modified: 2014-04-09 20:32 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dennis Nienhüser 2014-04-06 08:43:30 UTC
Add operator== and operator!= to the classes GeoDataTimeSpan and GeoDataTimeStamp. Change the protected bool equals method of GeoDataObject to become virtual, and overwrite it in GeoDataAbstractView. Have its implementation check the time members and altitude mode. This change will affect operator== of GeoDataCamera. Make sure that TestEquality still succeeds. Extend TestEquality by a new unit test method for GeoDataTimeSpan and GeoDataTimeStamp which verifies the implementation for several instances of each class.

Make sure to compile Marble with the BUILD_MARBLE_TESTS=TRUE option enabled and run the test case from the build folder (run tests/TestEquality). Note that operator!= should call operator==, see GeoDataAccuracy for an example. Submit a review request at https://git.reviewboard.kde.org.

Please leave a comment here (e.g. "I want to work on this task.") if you start working on this task to avoid multiple people working on it at the same time.
Comment 1 Cruceru Calin-Cristian 2014-04-06 09:41:01 UTC
I want to work on this.
Comment 2 Dennis Nienhüser 2014-04-09 20:32:39 UTC
Git commit c40b1bd55a459491a35ebe382d7f1ab4f8d99a17 by Dennis Nienhüser, on behalf of Cruceru Calin-Cristian.
Committed on 09/04/2014 at 20:19.
Pushed by nienhueser into branch 'master'.

Equality operators for time related classes
REVIEW: 117408

M  +9    -0    src/lib/marble/geodata/data/GeoDataAbstractView.cpp
M  +5    -0    src/lib/marble/geodata/data/GeoDataAbstractView.h
M  +2    -1    src/lib/marble/geodata/data/GeoDataGeometry.cpp
M  +2    -0    src/lib/marble/geodata/data/GeoDataGeometry.h
M  +1    -1    src/lib/marble/geodata/data/GeoDataObject.h
M  +1    -1    src/lib/marble/geodata/data/GeoDataPoint.cpp
M  +12   -0    src/lib/marble/geodata/data/GeoDataTimeSpan.cpp
M  +6    -0    src/lib/marble/geodata/data/GeoDataTimeSpan.h
M  +13   -0    src/lib/marble/geodata/data/GeoDataTimeStamp.cpp
M  +7    -0    src/lib/marble/geodata/data/GeoDataTimeStamp.h
M  +106  -0    tests/TestEquality.cpp

http://commits.kde.org/marble/c40b1bd55a459491a35ebe382d7f1ab4f8d99a17