mapbox / windows-builds

DEPRECATED! build scripts for mapnik dependencies, mapnik, node-mapnik, node, libosmiom, osmium-tool
38 stars 22 forks source link

mapnik test.exe crashing with master as of today #91

Open wilhelmberg opened 8 years ago

wilhelmberg commented 8 years ago

investigating ...

/cc @springmeyer

wilhelmberg commented 8 years ago

Started with Python tests.

Getting

Visual rendering: 1364 failed / 672 passed

and a lot of No to_python (by-value) converter found errors:

1347) failure to run test: ..\bindings\python\test\data-visual\images\tiff_colortable-256-256-2.0-agg-reference.png (TypeError('No to_python (by-value) converter found for C++ type: class std::shared_ptr<struct mapnik::image_any>',))

looking into native tests next.

wilhelmberg commented 8 years ago

/cc @artemp test.exe does not crash anymore when built with https://github.com/mapnik/mapnik/commit/44e1102166fec8a7dc84bd6b4428f5aad48fbde7

Getting those errors with unit tests (not including PostGIS failures as I think I have to revisit my setup):

test.exe is a Catch v1.3.2 host application.
Run with -? for options

-------------------------------------------------------------------------------
conversions
  to string
-------------------------------------------------------------------------------
..\..\test\unit\core\conversions_test.cpp(17)
...............................................................................

..\..\test\unit\core\conversions_test.cpp(236): FAILED:
  REQUIRE( out == "-2" )
with expansion:
  "-4294967294" == "-2"

-------------------------------------------------------------------------------
geojson
  GeoJSON properties are properly expressed
-------------------------------------------------------------------------------
..\..\test\unit\datasource\geojson.cpp(67)
...............................................................................

..\..\test\unit\datasource\geojson.cpp(714): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  Québec == Qu��bec
with message:
  fields:
    NOM_FR
    array
    boolean
    description
    double
    empty_array
    empty_object
    int
    name
    object
    spaces
  names:
    NOM_FR
    array
    boolean
    description
    double
    empty_array
    empty_object
    int
    name
    object
    spaces

..\..\test\unit\datasource\geojson.cpp(714): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  {name:"waka",spaces:"value with spaces",int:1,double:1.1,boolean:false
  ,NOM_FR:"Québec",array:["string","value with spaces",3,1.1,null,true
  ,"Québec"],another_object:{name:"nested object"}}
  ==
  {name:"waka",spaces:"value with spaces",int:1,double:1.1,boolean:false
  ,NOM_FR:"Qu��bec",array:["string","value with spaces",3,1.1,null,true
  ,"Qu��bec"],another_object:{name:"nested object"}}

..\..\test\unit\datasource\geojson.cpp(714): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  ["string","value with spaces",3,1.1,null,true,"Québec",{name:"object within
  an array"},["array","within","an","array"]]
  ==
  ["string","value with spaces",3,1.1,null,true,"Qu��bec",{name:"object
  within an array"},["array","within","an","array"]]

..\..\test\unit\datasource\geojson.cpp(714): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  Québec == Qu��bec
with message:
  fields:
    NOM_FR
    array
    boolean
    description
    double
    empty_array
    empty_object
    int
    name
    object
    spaces
  names:
    NOM_FR
    array
    boolean
    description
    double
    empty_array
    empty_object
    int
    name
    object
    spaces

..\..\test\unit\datasource\geojson.cpp(714): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  {name:"waka",spaces:"value with spaces",int:1,double:1.1,boolean:false
  ,NOM_FR:"Québec",array:["string","value with spaces",3,1.1,null,true
  ,"Québec"],another_object:{name:"nested object"}}
  ==
  {name:"waka",spaces:"value with spaces",int:1,double:1.1,boolean:false
  ,NOM_FR:"Qu��bec",array:["string","value with spaces",3,1.1,null,true
  ,"Qu��bec"],another_object:{name:"nested object"}}

..\..\test\unit\datasource\geojson.cpp(714): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  ["string","value with spaces",3,1.1,null,true,"Québec",{name:"object within
  an array"},["array","within","an","array"]]
  ==
  ["string","value with spaces",3,1.1,null,true,"Qu��bec",{name:"object
  within an array"},["array","within","an","array"]]

..\..\test\unit\datasource\geojson.cpp(714): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  Québec == Qu��bec
with message:
  fields:
    NOM_FR
    array
    boolean
    description
    double
    empty_array
    empty_object
    int
    name
    object
    spaces
  names:
    NOM_FR
    array
    boolean
    description
    double
    empty_array
    empty_object
    int
    name
    object
    spaces

..\..\test\unit\datasource\geojson.cpp(714): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  {name:"waka",spaces:"value with spaces",int:1,double:1.1,boolean:false
  ,NOM_FR:"Québec",array:["string","value with spaces",3,1.1,null,true
  ,"Québec"],another_object:{name:"nested object"}}
  ==
  {name:"waka",spaces:"value with spaces",int:1,double:1.1,boolean:false
  ,NOM_FR:"Qu��bec",array:["string","value with spaces",3,1.1,null,true
  ,"Qu��bec"],another_object:{name:"nested object"}}

..\..\test\unit\datasource\geojson.cpp(714): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  ["string","value with spaces",3,1.1,null,true,"Québec",{name:"object within
  an array"},["array","within","an","array"]]
  ==
  ["string","value with spaces",3,1.1,null,true,"Qu��bec",{name:"object
  within an array"},["array","within","an","array"]]

..\..\test\unit\datasource\geojson.cpp(714): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  Québec == Qu��bec
with message:
  fields:
    NOM_FR
    array
    boolean
    description
    double
    empty_array
    empty_object
    int
    name
    object
    spaces
  names:
    NOM_FR
    array
    boolean
    description
    double
    empty_array
    empty_object
    int
    name
    object
    spaces

..\..\test\unit\datasource\geojson.cpp(714): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  {name:"waka",spaces:"value with spaces",int:1,double:1.1,boolean:false
  ,NOM_FR:"Québec",array:["string","value with spaces",3,1.1,null,true
  ,"Québec"],another_object:{name:"nested object"}}
  ==
  {name:"waka",spaces:"value with spaces",int:1,double:1.1,boolean:false
  ,NOM_FR:"Qu��bec",array:["string","value with spaces",3,1.1,null,true
  ,"Qu��bec"],another_object:{name:"nested object"}}

..\..\test\unit\datasource\geojson.cpp(714): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  ["string","value with spaces",3,1.1,null,true,"Québec",{name:"object within
  an array"},["array","within","an","array"]]
  ==
  ["string","value with spaces",3,1.1,null,true,"Qu��bec",{name:"object
  within an array"},["array","within","an","array"]]

-------------------------------------------------------------------------------
topology
  TopoJSON properties are properly expressed
-------------------------------------------------------------------------------
..\..\test\unit\datasource\topojson.cpp(54)
...............................................................................

..\..\test\unit\datasource\topojson.cpp(110): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  Québec == Qu��bec

..\..\test\unit\datasource\topojson.cpp(110): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  {name:"waka",spaces:"value with spaces",int:1,double:1.1,boolean:false
  ,NOM_FR:"Québec",array:["string","value with spaces",3,1.1,null,true
  ,"Québec"],another_object:{name:"nested object"}}
  ==
  {name:"waka",spaces:"value with spaces",int:1,double:1.1,boolean:false
  ,NOM_FR:"Qu��bec",array:["string","value with spaces",3,1.1,null,true
  ,"Qu��bec"],another_object:{name:"nested object"}}

..\..\test\unit\datasource\topojson.cpp(110): FAILED:
  CHECK( feature->get(std::get<0>(kv)) == std::get<1>(kv) )
with expansion:
  ["string","value with spaces",3,1.1,null,true,"Québec",{name:"object within
  an array"},["array","within","an","array"]]
  ==
  ["string","value with spaces",3,1.1,null,true,"Qu��bec",{name:"object
  within an array"},["array","within","an","array"]]

visual tests:

running visual tests with 32 concurrency
visual tests agg 
......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................✘.✘...................................
Visual rendering: 2 failed / 682 passed / 0 overwritten / 0 errors
View failure report at "/tmp/mapnik-visual-images\visual-test-results\index.html"
resetting ERRORLEVEL 
visual tests cairo 
.........................................................................................................................................................................................................................................................................................................................✘...........................................................................................................................................................................................................................................................................................................................................✘........✘.............................
Visual rendering: 3 failed / 681 passed / 0 overwritten / 0 errors
View failure report at "/tmp/mapnik-visual-images\visual-test-results\index.html"
resetting ERRORLEVEL 
visual tests grid 
............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Visual rendering: 0 failed / 684 passed / 0 overwritten / 0 errors
resetting ERRORLEVEL 
visual tests svg 
..........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Visual rendering: 0 failed / 682 passed / 0 overwritten / 0 errors
wilhelmberg commented 8 years ago

PostGIS tests are working now on my machine.


Details on the failing visual tests (they are well known, except maybe cairo->text-typographic-2-256-256-2.0).

agg

"tiff-reprojection-2-250-250-1.0" with agg... FAILED (11408 different pixels)
"tiff-reprojection-2-250-250-2.0" with agg... FAILED (11408 different pixels)

cairo

"text-typographic-2-256-256-2.0" with cairo... FAILED (2 different pixels)
"tiff-reprojection-2-250-250-1.0" with cairo... FAILED (11408 different pixels)
"tiff-reprojection-2-250-250-2.0" with cairo... FAILED (11408 different pixels)

cairo "text-typographic-2-256-256-2.0"

Only 2 pixels difference:

image

wilhelmberg commented 8 years ago

I created a copy of test-data-visual/styles/tiff-reprojection-2.xml and replaced

<Parameter name="type">gdal</Parameter>

with

<Parameter name="type">raster</Parameter>

and the error count didn't increase.

So, current hunch: test failure is somehow connected to gdal.