Skip to content

Conversation

@wcmatthysen
Copy link

@wcmatthysen wcmatthysen commented Aug 26, 2016

I have a forked mavenized repository of WorldWind with a lot of changes that I made over the years as I was using WorldWind in a project. These include nice additional classes like an offscreen WorldWind canvas as well as a lot of smaller changes that improves the usability of WorldWind that accumulated over time. I want to contribute all of those changes here and perhaps help to mavenize WorldWind. I felt the best way is to start small with a couple of cleanups as well as fixing the unit-test so that we can run them from the command-line:

  1. I removed the embedded jackson sources and added the jackson-core-asl.jar as a dependency.
  2. I saw a couple of files had the executable-bit set and I fixed this.
  3. I fixed the unit tests so that we can run them from the command line with ant. When I did an initial checkout I got a lot of failed unit tests where the test-runner complained that the test-class was empty. To fix this I added RunWith(Enclosed.class)-annotations at the top and changed the test.xml ant file to ignore inner test classes to avoid tests from being run twice.

Fixed the permissions of the image and source files. Image and source
files should not have their executable-bit set.
Removed the embedded jackon source code and added jackson-core-asl.jar
instead (we use version 1.9.6). Changed the build.xml file to reference
this jar during the compilation process.
Executing the unit tests from the command-line using ant resulted in a
lot of failed tests. To fix this a number of changes had to be made:

- Modified the unit tests containing nested test classes by adding an
  @RunWith(Enclosed.class) annotation at the top.
- Added an @ignore annotation to the HighResolutionTerrainTest2 as this
  test is currently failing. Also, added @ignore annotations for
  IconRetrievalTest and PointGraphicRetrievalTest as these tests take
  too long to execute.
- Made some changes to the run.tests ant-target in test.xml. Firstly, we
  added an option to print the test-summary to give more detailed output
  during test execution. Then, added an exclusion clause for all nested
  test classes ("**/*$*.class"). This ensures that tests are not
  executed twice when using the Enclosed test-runner. Added additional
  exclusion clauses for classes that are not unit-tests.
- Added a clause to test.xml that generates a junit test-report for us.
  The report is stored in HTML format in the testReports directory.
@wcmatthysen wcmatthysen mentioned this pull request Nov 28, 2016
4 tasks
@pdavidc
Copy link

pdavidc commented Dec 9, 2016

wcmatthysen, Thank you very much for contributing these changes. After reviewing this pull request, the NASA World Wind team found that the unit tests were in need of updating, and that the MIL-STD-2525 image sources (which you found had executable bits set) needed to be rearranged in the SDK. Given that, we've taken your pull request as a recommendation and have implemented changes that address the root problems.

In the short term, we've kept the embedded Jackson sources. We plan to migrate World Wind Java to a modern build system, and will externalize the Jackson sources when we do.

@pdavidc pdavidc closed this Dec 9, 2016
@pdavidc pdavidc added this to the v2.1.0 milestone Dec 9, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

2 participants