mirror of
https://github.com/thoughtbot/capybara-webkit
synced 2023-03-27 23:22:28 -04:00
Better failure when screenshot doesn't save
* Non-writable paths would raise JSON::ParseError * Now a clearer error is raised
This commit is contained in:
parent
d787215939
commit
b78ba754e5
2 changed files with 20 additions and 1 deletions
|
@ -90,4 +90,14 @@ describe Capybara::Webkit::Driver, "rendering an image" do
|
|||
driver.evaluate_script('window.innerHeight').should eq 600
|
||||
end
|
||||
end
|
||||
|
||||
context "with invalid filepath" do
|
||||
before do
|
||||
@file_name = File.dirname(@file_name)
|
||||
end
|
||||
|
||||
it "raises an InvalidResponseError" do
|
||||
expect { render({}) }.to raise_error(Capybara::Webkit::InvalidResponseError)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
#include "Render.h"
|
||||
#include "WebPage.h"
|
||||
#include "WebPageManager.h"
|
||||
#include "ErrorMessage.h"
|
||||
|
||||
Render::Render(WebPageManager *manager, QStringList &arguments, QObject *parent) : SocketCommand(manager, arguments, parent) {
|
||||
}
|
||||
|
@ -14,5 +15,13 @@ void Render::start() {
|
|||
|
||||
bool result = page()->render( imagePath, size );
|
||||
|
||||
finish(result);
|
||||
if (result) {
|
||||
finish(true);
|
||||
} else {
|
||||
const QString failure = QString("Unable to save %1x%2 image to %3").
|
||||
arg(width).
|
||||
arg(height).
|
||||
arg(imagePath);
|
||||
finish(false, new ErrorMessage(failure));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue