Skip to content

Commit 71f29ef

Browse files
committed
Fix clippy and split test
1 parent c8b894e commit 71f29ef

File tree

2 files changed

+31
-8
lines changed

2 files changed

+31
-8
lines changed

dsc/src/mcp/invoke_dsc_resource.rs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ use dsc_lib::{
77
dscresources::{
88
dscresource::Invoke,
99
invoke_result::{
10-
DeleteResult,
1110
ExportResult,
1211
GetResult,
1312
SetResult,
@@ -39,7 +38,7 @@ pub enum ResourceOperationResult {
3938
SetResult(SetResult),
4039
TestResult(TestResult),
4140
ExportResult(ExportResult),
42-
DeleteResult(DeleteResult),
41+
DeleteResult { success: bool },
4342
}
4443

4544
#[derive(Serialize, JsonSchema)]
@@ -98,11 +97,10 @@ impl McpServer {
9897
Ok(ResourceOperationResult::TestResult(result))
9998
},
10099
DscOperation::Delete => {
101-
let result = match resource.delete(&properties_json, &ExecutionKind::Actual) {
102-
Ok(res) => res,
100+
match resource.delete(&properties_json) {
101+
Ok(()) => Ok(ResourceOperationResult::DeleteResult { success: true }),
103102
Err(e) => return Err(McpError::internal_error(e.to_string(), None)),
104-
};
105-
Ok(ResourceOperationResult::DeleteResult(result))
103+
}
106104
},
107105
DscOperation::Export => {
108106
let result = match resource.export(&properties_json) {

dsc/tests/dsc_mcp.tests.ps1

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -304,10 +304,9 @@ Describe 'Tests for MCP server' {
304304
@{ operation = 'get'; property = 'actualState' }
305305
@{ operation = 'set'; property = 'beforeState' }
306306
@{ operation = 'test'; property = 'desiredState' }
307-
@{ operation = 'delete'; property = 'beforeState' }
308307
@{ operation = 'export'; property = 'actualState' }
309308
) {
310-
param($operation)
309+
param($operation, $property)
311310

312311
$mcpRequest = @{
313312
jsonrpc = "2.0"
@@ -334,4 +333,30 @@ Describe 'Tests for MCP server' {
334333
$response.result.structuredContent.result.$property.action | Should -BeExactly $operation -Because $because
335334
$response.result.structuredContent.result.$property.hello | Should -BeExactly "World" -Because $because
336335
}
336+
337+
It 'Calling invoke_dsc_resource for delete operation' {
338+
$mcpRequest = @{
339+
jsonrpc = "2.0"
340+
id = 12
341+
method = "tools/call"
342+
params = @{
343+
name = "invoke_dsc_resource"
344+
arguments = @{
345+
type = 'Test/Operation'
346+
operation = 'delete'
347+
resource_type = 'Test/Operation'
348+
properties_json = (@{
349+
hello = "World"
350+
action = 'delete'
351+
} | ConvertTo-Json -Depth 20)
352+
}
353+
}
354+
}
355+
356+
$response = Send-McpRequest -request $mcpRequest
357+
$response.id | Should -Be 12
358+
$because = ($response | ConvertTo-Json -Depth 20 | Out-String)
359+
($response.result.structuredContent.psobject.properties | Measure-Object).Count | Should -Be 1 -Because $because
360+
$response.result.structuredContent.result.success | Should -Be $true -Because $because
361+
}
337362
}

0 commit comments

Comments
 (0)