[node] Reset Style::Impl::lastError when loading a new style
This commit is contained in:
@@ -114,3 +114,54 @@ test(`render ignores request functions calling the callback a second time`, func
|
||||
});
|
||||
});
|
||||
|
||||
test(`render reports an error from loading the current style`, function(t) {
|
||||
var map = new mbgl.Map({
|
||||
request: function(req, callback) {
|
||||
var data = mockfs.dataForRequest(req);
|
||||
if (mockfs.source_vector === data) {
|
||||
callback(new Error('message'));
|
||||
} else {
|
||||
callback(null, { data: data });
|
||||
}
|
||||
}
|
||||
});
|
||||
map.load(mockfs.style_vector);
|
||||
map.render({ zoom: 16 }, function(err, pixels) {
|
||||
t.assert(err);
|
||||
t.assert(/message/.test(err.message));
|
||||
t.assert(!pixels);
|
||||
|
||||
map.render({ zoom: 16 }, function(err, pixels) {
|
||||
t.assert(err);
|
||||
t.assert(/message/.test(err.message));
|
||||
t.assert(!pixels);
|
||||
t.end();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
test(`render does not report an error from rendering a previous style`, function(t) {
|
||||
var map = new mbgl.Map({
|
||||
request: function(req, callback) {
|
||||
var data = mockfs.dataForRequest(req);
|
||||
if (mockfs.source_vector === data) {
|
||||
callback(new Error('message'));
|
||||
} else {
|
||||
callback(null, { data: data });
|
||||
}
|
||||
}
|
||||
});
|
||||
map.load(mockfs.style_vector);
|
||||
map.render({ zoom: 16 }, function(err, pixels) {
|
||||
t.assert(err);
|
||||
t.assert(/message/.test(err.message));
|
||||
t.assert(!pixels);
|
||||
|
||||
map.load(mockfs.style_raster);
|
||||
map.render({ zoom: 16 }, function(err, pixels) {
|
||||
t.error(err);
|
||||
t.assert(pixels);
|
||||
t.end();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -38,6 +38,7 @@ Style::Impl::Impl(Scheduler& scheduler_, FileSource& fileSource_, float pixelRat
|
||||
Style::Impl::~Impl() = default;
|
||||
|
||||
void Style::Impl::loadJSON(const std::string& json_) {
|
||||
lastError = nullptr;
|
||||
observer->onStyleLoading();
|
||||
|
||||
url.clear();
|
||||
@@ -45,6 +46,7 @@ void Style::Impl::loadJSON(const std::string& json_) {
|
||||
}
|
||||
|
||||
void Style::Impl::loadURL(const std::string& url_) {
|
||||
lastError = nullptr;
|
||||
observer->onStyleLoading();
|
||||
|
||||
loaded = false;
|
||||
|
||||
Reference in New Issue
Block a user