Make not initialised its own error to help dl-fldigi

pull/1/merge
Daniel Richman 2012-09-03 21:42:57 +01:00
rodzic a1d56d58cd
commit b641981709
4 zmienionych plików z 23 dodań i 2 usunięć

Wyświetl plik

@ -9,7 +9,7 @@ namespace habitat {
void UploaderAction::check(habitat::Uploader *u)
{
if (u == NULL)
throw runtime_error("Uploader settings were not initialised");
throw NotInitialisedError();
}
void UploaderSettings::apply(UploaderThread &uthr)
@ -224,6 +224,11 @@ void *UploaderThread::run()
{
break;
}
catch (NotInitialisedError &e)
{
caught_exception(e);
continue;
}
catch (runtime_error &e)
{
caught_exception(e);
@ -261,6 +266,12 @@ void UploaderThread::reset_done()
log("Settings reset");
}
void UploaderThread::caught_exception(const NotInitialisedError &error)
{
const string what(error.what());
warning("Caught NotInitialisedError");
}
void UploaderThread::caught_exception(const runtime_error &error)
{
const string what(error.what());

Wyświetl plik

@ -13,6 +13,12 @@ using namespace std;
/* Add some more EZ stuff. */
namespace habitat {
class NotInitialisedError : public runtime_error
{
public:
NotInitialisedError() : runtime_error("habitat::NotInitialisedError") {};
};
class UploaderThread;
class UploaderAction
@ -187,6 +193,7 @@ public:
virtual void saved_id(const string &type, const string &id);
virtual void initialised();
virtual void reset_done();
virtual void caught_exception(const NotInitialisedError &error);
virtual void caught_exception(const runtime_error &error);
virtual void caught_exception(const invalid_argument &error);
virtual void got_flights(const vector<Json::Value> &flights);

Wyświetl plik

@ -916,7 +916,7 @@ class TestCPPConnectorThreaded(TestCPPConnector):
try:
self.uploader.payload_telemetry("asdf", {})
except ProxyException as e:
assert "not initialised" in str(e)
assert "NotInitialised" in str(e)
else:
raise AssertionError("not initialised was not thrown")

Wyświetl plik

@ -50,6 +50,9 @@ class TestUploaderThread : public habitat::UploaderThread
void reset_done() { report_result("return"); };
void caught_exception(const habitat::NotInitialisedError &error)
{ report_result("error", "NotInitialisedError"); }
void caught_exception(const runtime_error &error)
{ report_result("error", "runtime_error", error.what()); }