Commit Graph

15390 Commits

Author SHA1 Message Date
Thiago Marcos P. Santos
26cfddaf47 [render-test] Add access token to the test manifest
Needed if we want to run tests online. Will default to the
MAPBOX_ACCESS_TOKEN environment value.
2020-01-08 13:07:12 +02:00
Thiago Marcos P. Santos
4d815d8306 [render-test] Add flag to run tests online
And also make it not go to the network by setting the status
explicitly when when the -o flag is not passed.
2020-01-08 13:07:12 +02:00
Thiago Marcos P. Santos
08f03b1bbb [render-test] Add cache database path to the manifest
A path relative to the manifest pointing at the data cache.
2020-01-08 13:07:12 +02:00
Thiago Marcos P. Santos
502ddd3c8a [render-test] Fixed typo and remove unused 2020-01-08 13:07:12 +02:00
Thiago Marcos P. Santos
f14985f783 [tools] Added cache tool
A tool for adding resources to a cache database, important for
adding fixtures to our render test cache database.
2020-01-08 13:07:12 +02:00
Mikhail Pozdnyakov
c46f0baa57 Update change log and binary size metrics 2020-01-08 12:43:26 +02:00
Mikhail Pozdnyakov
0379615388 [core] Introduce CollisionIndex::getProjectedCollisionBoundaries()
In order to remove the repeated code.
2020-01-08 12:43:26 +02:00
Mikhail Pozdnyakov
141e4e7935 [core] Introduce CollisionBoundaries and use it in CollisionIndex 2020-01-08 12:43:26 +02:00
Mikhail Pozdnyakov
a46b1a4e4f [test] Update render test expectations 2020-01-08 12:43:26 +02:00
Mikhail Pozdnyakov
cf2946c8ff [core] Use only the first variable anchor for the symbols intersecting tile borders
Do not try the following variable anchors, if the first variable anchor placement failed.
2020-01-08 12:43:26 +02:00
Mikhail Pozdnyakov
1debf4e05b [core] Fix CollisionIndex::featureIntersectsTileBorders() implementation 2020-01-08 12:43:26 +02:00
Mikhail Pozdnyakov
c25fbe9a94 [core] Performance fix for placement in tile mode 2020-01-08 12:43:26 +02:00
Mikhail Pozdnyakov
2040d4d6f5 [core] In tile mode, place labels from tile borders first 2020-01-08 12:43:26 +02:00
Mikhail Pozdnyakov
7e5dc5608a [core] Pre-defined variable anchor at tile borders
In tile mode, stick to the first variable anchor if the label intersects tile borders.
2020-01-08 12:43:26 +02:00
Mikhail Pozdnyakov
07194f7fa5 [core] Add CollisionIndex::featureIntersectsTileBorders() 2020-01-08 12:43:26 +02:00
Mikhail Pozdnyakov
2125548a6e [core] Consolidate more logic in calculateVariableLayoutOffset() 2020-01-08 12:43:26 +02:00
Samuel Thibault
5f031dfa56 [util] fix thread.cpp portability 2020-01-08 10:50:42 +02:00
tobrun
f54d47137b [android] promote releaseCoreLayer from protected to public 2020-01-06 15:44:03 +01:00
Juha Alanen
5e7e2d23e7 [android] Share common code between test runners 2020-01-03 11:52:50 +02:00
Juha Alanen
8ce3f6a987 [build] Run Android benchmark on Firebase 2020-01-03 11:52:50 +02:00
Juha Alanen
ee66940409 [benchmark] Run benchmark as NativeActivity application on Android 2020-01-03 11:52:50 +02:00
Thiago Marcos P. Santos
6d876f1d6b [build] Make the configuration simpler
Moved the Android flags to the compilation options interface
and removed build options we are not using and go back to CMake
defaults.
2019-12-21 00:38:41 +01:00
Dane Springmeyer
d009ce88e0 remove unused code (#16077) 2019-12-19 14:39:38 -06:00
Mikhail Pozdnyakov
cc684df736 [core] Handle zero text size
The style specification stipulates that `text-size` values must be positive
(https://docs.mapbox.com/mapbox-gl-js/style-spec/#layout-symbol-text-size).

However, a zero value could be passed to the engine (e.g. as a result of
an expression) this patch handles it and avoids assertion hit in `shaping.cpp`.
2019-12-19 18:09:33 +02:00
Mikhail Pozdnyakov
28ccb0ccc0 [core] Offline download must clear batch buffer at load interrupt
Otherwise, the stale buffer data are processed again at the
repeated load. It is causing various problems like missing load
completion notification or crashes (if the previously used observer
instance has been deleted).
2019-12-18 17:19:15 +02:00
Mikhail Pozdnyakov
205f0e2f72 [tests] Update all-anchors-tile-map-mode expectations 2019-12-18 13:48:52 +02:00
Mikhail Pozdnyakov
648392585e [test runner] Show all tiles independently in Tile mode 2019-12-18 13:48:52 +02:00
Mikhail Pozdnyakov
64a37ceb05 [test runner] Rendering a single tile in Tile mode 2019-12-18 13:48:52 +02:00
Aleksandar Stojiljkovic
2fd9d4a1fe Include padding when testing camera scale in cameraForLatLngBounds
Repurpose LatLngBoundsToCameraWithBearingAndPitch to test scaling and camera setup, both with and without padding.
This adds testing of path not covered in mapbox/mapbox-gl-native-ios#59.
2019-12-17 16:19:33 +02:00
Romain Quidet
5693f3be02 correct insets camera management - see https://github.com/mapbox/mapbox-gl-native-ios/issues/59 2019-12-17 16:19:33 +02:00
Alexander Shalamov
9d758564be [core] Update changelog 2019-12-17 15:46:10 +02:00
Alexander Shalamov
00866c348e [metrics] Add baselines for a new test 2019-12-17 15:46:10 +02:00
Ansis Brammanis
aa543e43e5 [core] Fix really overscaled lines #16018 2019-12-17 15:46:10 +02:00
Alexander Shalamov
493d2ca253 [core] Update changelog 2019-12-17 14:25:19 +02:00
Alexander Shalamov
d883b740a2 [metrics] Add new baselines 2019-12-17 14:25:19 +02:00
Alexander Shalamov
ffb4998d28 [core] Unskip render tests 2019-12-17 14:25:19 +02:00
Andrew Hay Kurtz
da4eb01bc7 [core] Enable 'line-sort-key' and 'fill-sort-key' layout properties (#15839)
- Generate style code for 'line-sort-key' and 'symbol-sort-key'

- Add new layout properties to FillLayer::Impl, FillBucket, and FillLayerFactory

- Fix consistency of paint and layout properties type alias usage in FillBucket, LineBucket

- Add optional feature sorting to fill and line Layout creation

- Enable node render tests for fill-sort-key and line-sort-key

- Fix FillBucket test construction

- Prefer emplace_back to push_back for PatternFeature container

- Fix buggy static_cast for PatternFeature indices

- Maintain sort of features as they are created

- Switch pattern layout features container to list from vector for better insert performance

- Fix formatting expected by sanity check

- Use subclass PatternLayoutSorted to work around lack of template functions

- Fix to retain source order for features with equivalent sort keys during sorting

- [core] Fix clang-format

- [core] Address review comments

- [core] Pass inserting strategy class at compile time

- [core] Use sorted strategy only if sort key is defined in layout

- [core] Update style generator

- [core] Merge PatternLayout and PatternLayoutSorted classes

  - Use static methods for inserter strategies
  - Merge PatternLayout and PatternLayoutSorted classes
2019-12-17 14:25:19 +02:00
Thiago Marcos P. Santos
c3854cedc2 [render-tests] Fix tests not rendering when both metrics and render fails 2019-12-17 12:38:42 +03:00
Mikhail Pozdnyakov
6c2461baf9 [qt] Fix usage of QNetworkReply after deletion 2019-12-17 11:31:21 +02:00
Thiago Marcos P. Santos
4016ad0f67 [metrics] Remove **/token from .gitignore
This explains why these tests were not being rebaselined...
2019-12-17 11:46:04 +03:00
Thiago Marcos P. Santos
ad1a7c595d [render-test] Cleanup on the render tests results
Simplify the code path and make it print both rendering error and
metrics on fail.
2019-12-16 22:52:01 +02:00
Thiago Marcos P. Santos
e298435206 [metrics] Add new baselines for Linux Clang8 and macOS 2019-12-16 22:52:01 +02:00
Thiago Marcos P. Santos
893363f382 [metrics] Rebaseline Linux GCC8 metrics
Sames as for Android, remove ignored and probes not in use.
2019-12-16 22:52:01 +02:00
Thiago Marcos P. Santos
ef9444debd [metrics] Rebaseline Android tests
This was done using the new baseline bot :-)

- Removed metrics from ignored tests.
- Removed memory metrics for render tests, not in use.
2019-12-16 22:52:01 +02:00
Thiago Marcos P. Santos
b7e26d1ff2 [metrics] Delete test that doesn't make sense
This test is ignored because we expect it to "ignore but fail".

But it will generate a fatal error because it doesn't have the
metrics file, thus should have been skipped instead.
2019-12-16 22:52:01 +02:00
Thiago Marcos P. Santos
8869d09b25 [build] Collect and publish new baselines
Also fail the bot in case there are new baselines.
2019-12-16 22:52:01 +02:00
Thiago Marcos P. Santos
0dbe80fe66 [build] If not found, use the cache from the sanity checks bot
Better than initializing git submodules from scratch.
2019-12-16 22:52:01 +02:00
Thiago Marcos P. Santos
970cabe0eb [build] Reorganize the render tests
Move everything that might collect metrics to the metrics/ directory,
the only test manifests inside the render-test/ directory are the
unit tests of the probes.
2019-12-16 22:52:01 +02:00
Thiago Marcos P. Santos
dc61aa7691 [node] Do not run query tests
We run them now with the native tool.
2019-12-16 22:52:01 +02:00
Thiago Marcos P. Santos
1c138124a6 [render-test] Fix metrics passing when failing
Metrics will now fail, but the tool will return 0 when *ONLY* metrics
fail, to make the bot continue. We will also run ignored tests and
check if they are ignored but passing.
2019-12-16 22:52:01 +02:00