corrected name RequestCDD to RequestCDDC

This commit is contained in:
Gulliver 2022-12-31 13:49:58 +01:00 committed by gittiver
parent 87386e1b65
commit 0e4c094eed
5 changed files with 25 additions and 20 deletions

View File

@ -16,8 +16,13 @@ or also the key?
## TODO
+ [ ] bigint type for big integers encoded as string
+ [x] bigint type for big integers encoded as string
+ [ ] blinding utilizing crypto++
- [x] complete from_json conversions
- [x] complete tests
- [x] drone config
- [ ] select crypto library
+ https://en.wikipedia.org/wiki/Comparison_of_cryptography_libraries
### Blinding Notes

View File

@ -29,11 +29,11 @@ int main() {
CROW_ROUTE(app, "/cddc/serial")
.methods(crow::HTTPMethod::POST)([&model](const crow::request &request) {
auto req = RequestCDDSerial::from_string(request.body);
auto req = RequestCDDCSerial::from_string(request.body);
if (!req) {
return crow::response(crow::status::BAD_REQUEST);
} else {
ResponseCDDSerial res;
ResponseCDDCSerial res;
res.message_reference = req->message_reference;
auto cddc = model->getCurrentCDDC();

View File

@ -104,7 +104,7 @@ crow::json::wvalue Response::to_json() const {
return r;
}
crow::json::wvalue ResponseCDDSerial::to_json() const {
crow::json::wvalue ResponseCDDCSerial::to_json() const {
crow::json::wvalue r = Response::to_json();
TO_JSON(cdd_serial);
@ -112,8 +112,8 @@ crow::json::wvalue ResponseCDDSerial::to_json() const {
return r;
}
tl::expected<RequestCDDSerial, eError>
RequestCDDSerial::from_string(const std::string &str) {
tl::expected<RequestCDDCSerial, eError>
RequestCDDCSerial::from_string(const std::string &str) {
auto json = crow::json::load(str);
if (!json) {
return tl::make_unexpected(eError::JSON_PARSE_ERROR);
@ -122,7 +122,7 @@ RequestCDDSerial::from_string(const std::string &str) {
} else if (json["type"] != "request cdd serial") {
return tl::make_unexpected(eError::JSON_ERROR);
} else {
RequestCDDSerial r;
RequestCDDCSerial r;
r.message_reference = json["message_reference"].u();
return r;
}

View File

@ -100,14 +100,14 @@ struct Response {
virtual crow::json::wvalue to_json() const;
};
struct RequestCDDSerial {
struct RequestCDDCSerial {
unsigned int message_reference; /// Client internal message reference.
/// (Integer)
static tl::expected<RequestCDDSerial, eError>
static tl::expected<RequestCDDCSerial, eError>
from_string(const std::string &str);
};
struct ResponseCDDSerial : Response {
struct ResponseCDDCSerial : Response {
unsigned int cdd_serial;
crow::json::wvalue to_json() const override;

View File

@ -15,32 +15,32 @@ TEST_CASE( "PublicKey::to_json", "[to_json]" ) {
REQUIRE( json.keys().size() == 3 );
}
TEST_CASE("RequestCDDSerial::from_string", "[from_string]") {
TEST_CASE("RequestCDDCSerial::from_string", "[from_string]") {
// good case
std::string good = "{"
"\"message_reference\": 100000,"
"\"type\": \"request cdd serial\""
"}";
auto res = RequestCDDSerial::from_string(good);
auto res = RequestCDDCSerial::from_string(good);
REQUIRE(res.has_value() == true);
REQUIRE(res->message_reference == 100000);
// bad cases
res = RequestCDDSerial::from_string("");
res = RequestCDDCSerial::from_string("");
REQUIRE(res.has_value() == false);
// invalid type
res = RequestCDDSerial::from_string("{"
"\"message_reference\": 100000,"
"\"type\": \"request something wrong\""
"}");
res = RequestCDDCSerial::from_string("{"
"\"message_reference\": 100000,"
"\"type\": \"request something wrong\""
"}");
REQUIRE(res.has_value() == false);
// invalid attribute name
res = RequestCDDSerial::from_string("{"
"\"x_message_reference\": 100000,"
"}");
res = RequestCDDCSerial::from_string("{"
"\"x_message_reference\": 100000,"
"}");
REQUIRE(res.has_value() == false);
}