fix(agent): clarify protocol capability contract
This commit is contained in:
1 parent
954dba1e13
commit
4186c94dd4
2 files changed
+65
-5
No files matched your search
@@ -1243,9 +1243,11 @@ mod tests {
|
||||
vec!["protocolVersion", "agentProtocolVersion", "capabilities"]
|
||||
);
|
||||
assert_eq!(
|
||||
string_array(&contract["capabilities"]),
|
||||
string_array(&contract["allCapabilities"]),
|
||||
AgentCapability::ALL.iter().map(|method| method.as_str()).collect::<Vec<_>>()
|
||||
);
|
||||
assert_eq!(string_array(&contract["capabilities"]), default_sql_capabilities());
|
||||
assert_eq!(string_array(&contract["defaultSqlCapabilities"]), default_sql_capabilities());
|
||||
assert_eq!(
|
||||
string_array(&contract["commonMethods"]),
|
||||
AgentMethod::ALL.iter().map(|method| method.as_str()).collect::<Vec<_>>()
|
||||
@@ -1298,4 +1300,19 @@ mod tests {
|
||||
fn string_array(value: &serde_json::Value) -> Vec<&str> {
|
||||
value.as_array().unwrap().iter().map(|item| item.as_str().unwrap()).collect()
|
||||
}
|
||||
|
||||
fn default_sql_capabilities() -> Vec<&'static str> {
|
||||
[
|
||||
AgentCapability::Connect,
|
||||
AgentCapability::TestConnection,
|
||||
AgentCapability::Metadata,
|
||||
AgentCapability::Query,
|
||||
AgentCapability::PagedQuery,
|
||||
AgentCapability::Transaction,
|
||||
AgentCapability::Ddl,
|
||||
]
|
||||
.iter()
|
||||
.map(|capability| capability.as_str())
|
||||
.collect()
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user