Rename exceptions to follow NounAdjective convention

This commit is contained in:
James P. Howard, II
2022-09-16 16:49:35 -04:00
parent 8f7b6b65c2
commit f0295e9891
10 changed files with 22 additions and 21 deletions

View File

@@ -15,33 +15,34 @@ namespace kami::error {
class AgentNotFound : public std::logic_error {
public:
explicit AgentNotFound(const char *s) : std::logic_error(s) {};
explicit AgentNotFound(const std::string &s) : std::logic_error(s) {};
};
class InvalidCoordinates : public std::domain_error {
class CoordinatesInvalid : public std::domain_error {
public:
explicit InvalidCoordinates(const char *s) : std::domain_error(s) {};
explicit CoordinatesInvalid(const char *s) : std::domain_error(s) {};
explicit InvalidCoordinates(const std::string &s) : std::domain_error(s) {};
};
class InvalidOption : public std::invalid_argument {
public:
explicit InvalidOption(const char *s) : std::invalid_argument(s) {};
explicit InvalidOption(const std::string &s) : std::invalid_argument(s) {};
explicit CoordinatesInvalid(const std::string &s) : std::domain_error(s) {};
};
class LocationUnavailable : public std::domain_error {
public:
explicit LocationUnavailable(const char *s) : std::domain_error(s) {};
explicit LocationUnavailable(const std::string &s) : std::domain_error(s) {};
};
class OptionInvalid : public std::invalid_argument {
public:
explicit OptionInvalid(const char *s) : std::invalid_argument(s) {};
explicit OptionInvalid(const std::string &s) : std::invalid_argument(s) {};
};
class ResourceNotAvailable : public std::logic_error {
public:
explicit ResourceNotAvailable(const char *s) : std::logic_error(s) {};
explicit ResourceNotAvailable(const std::string &s) : std::logic_error(s) {};
};

View File

@@ -64,7 +64,7 @@ namespace kami {
case GridDistanceType::Euclidean:
return distance_euclidean(p);
default:
throw error::InvalidOption("Unknown distance type given");
throw error::OptionInvalid("Unknown distance type given");
}
}
@@ -174,7 +174,7 @@ namespace kami {
directions = directions_moore;
break;
default:
throw error::InvalidOption(
throw error::OptionInvalid(
fmt::format("Invalid neighborhood type {} given", (unsigned int) neighborhood_type));
}

View File

@@ -38,7 +38,7 @@ namespace kami {
AgentID MultiGrid1D::add_agent(const AgentID agent_id, const GridCoord1D &coord) {
if (!is_location_valid(coord))
throw error::InvalidCoordinates(fmt::format("Coordinates {} are invalid", coord.to_string()));
throw error::CoordinatesInvalid(fmt::format("Coordinates {} are invalid", coord.to_string()));
_agent_index->insert(std::pair<AgentID, GridCoord1D>(agent_id, coord));
_agent_grid->insert(std::pair<GridCoord1D, AgentID>(coord, agent_id));

View File

@@ -38,7 +38,7 @@ namespace kami {
AgentID MultiGrid2D::add_agent(const AgentID agent_id, const GridCoord2D &coord) {
if (!is_location_valid(coord))
throw error::InvalidCoordinates(fmt::format("Coordinates {} are invalid", coord.to_string()));
throw error::CoordinatesInvalid(fmt::format("Coordinates {} are invalid", coord.to_string()));
_agent_index->insert(std::pair<AgentID, GridCoord2D>(agent_id, coord));
_agent_grid->insert(std::pair<GridCoord2D, AgentID>(coord, agent_id));

View File

@@ -36,7 +36,7 @@ namespace kami {
AgentID SoloGrid1D::add_agent(const AgentID agent_id, const GridCoord1D &coord) {
if (!is_location_valid(coord))
throw error::InvalidCoordinates(fmt::format("Coordinates {} are invalid", coord.to_string()));
throw error::CoordinatesInvalid(fmt::format("Coordinates {} are invalid", coord.to_string()));
if (!is_location_empty(coord))
throw error::LocationUnavailable(fmt::format("Coordinates {} already occupied", coord.to_string()));

View File

@@ -38,7 +38,7 @@ namespace kami {
AgentID SoloGrid2D::add_agent(const AgentID agent_id, const GridCoord2D &coord) {
if (!is_location_valid(coord))
throw error::InvalidCoordinates(fmt::format("Coordinates {} are invalid", coord.to_string()));
throw error::CoordinatesInvalid(fmt::format("Coordinates {} are invalid", coord.to_string()));
if (!is_location_empty(coord))
throw error::LocationUnavailable(fmt::format("Coordinates {} already occupied", coord.to_string()));

View File

@@ -197,7 +197,7 @@ TEST(MultiGrid1D, move_agent) {
MultiGrid1D multigrid1d_foo(10, true);
static_cast<void>(multigrid1d_foo.add_agent(agent_id_foo, coord2));
EXPECT_THROW(auto agent_id_baz = multigrid1d_foo.move_agent(agent_id_foo, coord10), InvalidCoordinates);
EXPECT_THROW(auto agent_id_baz = multigrid1d_foo.move_agent(agent_id_foo, coord10), CoordinatesInvalid);
}
{
MultiGrid1D multigrid1d_foo(10, true);

View File

@@ -198,7 +198,7 @@ TEST(MultiGrid2D, move_agent) {
MultiGrid2D multigrid2d_foo(10, 10, true, true);
static_cast<void>(multigrid2d_foo.add_agent(agent_id_foo, coord2));
EXPECT_THROW(auto agent_id_baz = multigrid2d_foo.move_agent(agent_id_foo, coord10), InvalidCoordinates);
EXPECT_THROW(auto agent_id_baz = multigrid2d_foo.move_agent(agent_id_foo, coord10), CoordinatesInvalid);
}
{
MultiGrid2D multigrid2d_foo(10, 10, true, true);

View File

@@ -195,7 +195,7 @@ TEST(SoloGrid1D, move_agent) {
SoloGrid1D sologrid1d_foo(10, true);
static_cast<void>(sologrid1d_foo.add_agent(agent_id_foo, coord2));
EXPECT_THROW(auto agent_id_baz = sologrid1d_foo.move_agent(agent_id_foo, coord10), InvalidCoordinates);
EXPECT_THROW(auto agent_id_baz = sologrid1d_foo.move_agent(agent_id_foo, coord10), CoordinatesInvalid);
}
{
SoloGrid1D sologrid1d_foo(10, true);

View File

@@ -193,7 +193,7 @@ TEST(SoloGrid2D, move_agent) {
SoloGrid2D sologrid2d_foo(10, 10, true, true);
static_cast<void>(sologrid2d_foo.add_agent(agent_id_foo, coord2));
EXPECT_THROW(auto agent_id_baz = sologrid2d_foo.move_agent(agent_id_foo, coord10), InvalidCoordinates);
EXPECT_THROW(auto agent_id_baz = sologrid2d_foo.move_agent(agent_id_foo, coord10), CoordinatesInvalid);
}
{
SoloGrid2D sologrid2d_foo(10, 10, true, true);