Overview
grpc-ditto is grpc mocking server that can mock any grpc services by parsing corresponding proto file.
Usage example:
grpc-ditto --proto ~/dev/master-lock-svc/types --mocks jsonmocks
this command will run a server on port 51000 by default, parse all proto files in --proto directory, load all mocks from json files in --mocks directory and also expose grpc reflection service.
[
{
"request": {
"method": "/videa.masterlock.proto.types.MasterLockService/Lock",
"bodyPatterns": [
{
"matchesJsonPath": {"expression": "$.name", "equals": "lock1"}
},
{
"matchesJsonPath": {"expression": "$.duration", "equals": "100"}
}
]
},
"response": {
"body": {"key": "key1"}
}
},
{
"request": {
"method": "/videa.masterlock.proto.types.MasterLockService/Lock",
"bodyPatterns": [
{
"equalToJson": {"name": "lock2", "duration": "200"}
}
]
},
"response": {
"body": {"key": "key2"}
}
},
{
"request": {
"method": "/videa.masterlock.proto.types.MasterLockService/Lock",
"bodyPatterns": [
{
"matchesJsonPath": "$.name"
}
]
},
"response": {
"body": {"key": "key_all_non_empty"}
}
}
]