142 lines
2.7 KiB
Protocol Buffer
142 lines
2.7 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
option go_package = "github.com/linuxsuren/api-testing/pkg/server";
|
|
|
|
package server;
|
|
|
|
service Runner {
|
|
rpc Run (TestTask) returns (TestResult) {}
|
|
rpc Sample(Empty) returns (HelloReply) {}
|
|
rpc GetVersion(Empty) returns (HelloReply) {}
|
|
|
|
rpc GetSuites(Empty) returns (Suites) {}
|
|
|
|
rpc CreateTestSuite(TestSuiteIdentity) returns (HelloReply) {}
|
|
rpc GetTestSuite(TestSuiteIdentity) returns (TestSuite) {}
|
|
rpc UpdateTestSuite(TestSuite) returns (HelloReply) {}
|
|
rpc DeleteTestSuite(TestSuiteIdentity) returns (HelloReply) {}
|
|
|
|
rpc ListTestCase(TestSuiteIdentity) returns (Suite) {}
|
|
rpc RunTestCase(TestCaseIdentity) returns (TestCaseResult) {}
|
|
rpc GetTestCase(TestCaseIdentity) returns (TestCase) {}
|
|
rpc CreateTestCase(TestCaseWithSuite) returns (HelloReply) {}
|
|
rpc UpdateTestCase(TestCaseWithSuite) returns (HelloReply) {}
|
|
rpc DeleteTestCase(TestCaseIdentity) returns (HelloReply) {}
|
|
|
|
rpc PopularHeaders(Empty) returns (Pairs) {}
|
|
rpc GetSuggestedAPIs(TestSuiteIdentity) returns (TestCases) {}
|
|
rpc FunctionsQuery(SimpleQuery) returns (Pairs) {}
|
|
}
|
|
|
|
message Suites {
|
|
map<string, Items> data = 1;
|
|
}
|
|
|
|
message Items {
|
|
repeated string data = 1;
|
|
}
|
|
|
|
message TestCaseIdentity {
|
|
string suite = 1;
|
|
string testcase = 2;
|
|
}
|
|
|
|
message TestSuite {
|
|
string name = 1;
|
|
string api = 2;
|
|
APISpec spec = 3;
|
|
}
|
|
|
|
message APISpec {
|
|
string kind = 1;
|
|
string url = 2;
|
|
}
|
|
|
|
message TestSuiteIdentity {
|
|
string name = 1;
|
|
string api = 2;
|
|
}
|
|
|
|
message TestTask {
|
|
string data = 1;
|
|
string kind = 2;
|
|
string caseName = 3;
|
|
string level = 4;
|
|
map<string, string> env = 5;
|
|
}
|
|
|
|
message TestResult {
|
|
string message = 1;
|
|
string error = 2;
|
|
repeated TestCaseResult testCaseResult = 3;
|
|
}
|
|
|
|
message HelloReply {
|
|
string message = 1;
|
|
string error = 2;
|
|
}
|
|
|
|
message Suite {
|
|
string name = 1;
|
|
string api = 2;
|
|
repeated TestCase items = 3;
|
|
}
|
|
|
|
message TestCaseWithSuite {
|
|
string suiteName = 1;
|
|
TestCase data = 2;
|
|
}
|
|
|
|
message TestCases {
|
|
repeated TestCase data = 1;
|
|
}
|
|
|
|
message TestCase {
|
|
string name = 1;
|
|
Request request = 2;
|
|
Response response = 3;
|
|
}
|
|
|
|
message Request {
|
|
string api = 1;
|
|
string method = 2;
|
|
repeated Pair header = 3;
|
|
repeated Pair query = 4;
|
|
repeated Pair form = 5;
|
|
string body = 6;
|
|
}
|
|
|
|
message Response {
|
|
int32 statusCode = 1;
|
|
string body = 2;
|
|
repeated Pair header = 3;
|
|
repeated Pair bodyFieldsExpect = 4;
|
|
repeated string verify = 5;
|
|
string schema = 6;
|
|
}
|
|
|
|
message TestCaseResult {
|
|
int32 statusCode = 1;
|
|
string body = 2;
|
|
repeated Pair header = 3;
|
|
string error = 4;
|
|
string id = 5;
|
|
string output = 6;
|
|
}
|
|
|
|
message Pair {
|
|
string key = 1;
|
|
string value = 2;
|
|
}
|
|
|
|
message Pairs {
|
|
repeated Pair data = 1;
|
|
}
|
|
|
|
message SimpleQuery {
|
|
string name = 1;
|
|
}
|
|
|
|
message Empty {
|
|
}
|