Skip to content

Commit c3482f5

Browse files
committed
Fix format file generator and tests
1 parent e786516 commit c3482f5

File tree

3 files changed

+95
-0
lines changed

3 files changed

+95
-0
lines changed

src/ResourceManager/Compute/Commands.Compute.Test/ScenarioTests/VirtualMachineScaleSetTests.ps1

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,7 @@ function Test-VirtualMachineScaleSet
148148
Write-Verbose ('Running Command : ' + 'Get-AzureVirtualMachineScaleSetSkusList');
149149
$skuList = Get-AzureVirtualMachineScaleSetSkusList -ResourceGroupName $rgname -VMScaleSetName $vmss.Name;
150150
$output = $skuList | Out-String;
151+
Assert-True { $output.Contains("VirtualMachineScaleSetSku") };
151152
Write-Verbose ($output);
152153

153154
# List All VMs
@@ -158,6 +159,7 @@ function Test-VirtualMachineScaleSet
158159
Write-Verbose ('Running Command : ' + 'Get-AzureVirtualMachineScaleSetVMList');
159160
$vmListResult = Get-AzureVirtualMachineScaleSetVMList -VirtualMachineScaleSetVMListParameters $vmListParams;
160161
$output = $vmListResult | Out-String;
162+
Assert-True { $output.Contains("VirtualMachineScaleSetVM") };
161163
Write-Verbose ($output);
162164

163165
$vmList = $vmListResult.VirtualMachineScaleSetVMs;

src/ResourceManager/Compute/Commands.Compute/Microsoft.Azure.Commands.Compute.Automation.format.generated.ps1xml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,24 @@
129129
</ListEntries>
130130
</ListControl>
131131
</View>
132+
<View>
133+
<Name>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSet</Name>
134+
<ViewSelectedBy>
135+
<TypeName>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSet</TypeName>
136+
</ViewSelectedBy>
137+
<ListControl>
138+
<ListEntries>
139+
<ListEntry>
140+
<ListItems>
141+
<ListItem>
142+
<Label>VirtualMachineScaleSet</Label>
143+
<ScriptBlock>[Newtonsoft.Json.JsonConvert]::SerializeObject($_, [Newtonsoft.Json.Formatting]::Indented)</ScriptBlock>
144+
</ListItem>
145+
</ListItems>
146+
</ListEntry>
147+
</ListEntries>
148+
</ListControl>
149+
</View>
132150
<View>
133151
<Name>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetListSkusResponse</Name>
134152
<ViewSelectedBy>
@@ -159,6 +177,24 @@
159177
</ListEntries>
160178
</ListControl>
161179
</View>
180+
<View>
181+
<Name>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetSku</Name>
182+
<ViewSelectedBy>
183+
<TypeName>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetSku</TypeName>
184+
</ViewSelectedBy>
185+
<ListControl>
186+
<ListEntries>
187+
<ListEntry>
188+
<ListItems>
189+
<ListItem>
190+
<Label>VirtualMachineScaleSetSku</Label>
191+
<ScriptBlock>[Newtonsoft.Json.JsonConvert]::SerializeObject($_, [Newtonsoft.Json.Formatting]::Indented)</ScriptBlock>
192+
</ListItem>
193+
</ListItems>
194+
</ListEntry>
195+
</ListEntries>
196+
</ListControl>
197+
</View>
162198
<View>
163199
<Name>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVMGetResponse</Name>
164200
<ViewSelectedBy>
@@ -241,5 +277,23 @@
241277
</ListEntries>
242278
</ListControl>
243279
</View>
280+
<View>
281+
<Name>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVM</Name>
282+
<ViewSelectedBy>
283+
<TypeName>Microsoft.Azure.Management.Compute.Models.VirtualMachineScaleSetVM</TypeName>
284+
</ViewSelectedBy>
285+
<ListControl>
286+
<ListEntries>
287+
<ListEntry>
288+
<ListItems>
289+
<ListItem>
290+
<Label>VirtualMachineScaleSetVM</Label>
291+
<ScriptBlock>[Newtonsoft.Json.JsonConvert]::SerializeObject($_, [Newtonsoft.Json.Formatting]::Indented)</ScriptBlock>
292+
</ListItem>
293+
</ListItems>
294+
</ListEntry>
295+
</ListEntries>
296+
</ListControl>
297+
</View>
244298
</ViewDefinitions>
245299
</Configuration>

src/ServiceManagement/Compute/Commands.ServiceManagement.Preview/Automation/RunCodeGeneration.ps1

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1788,6 +1788,33 @@ function Get-ProperTypeName
17881788
return $typeStr;
17891789
}
17901790

1791+
1792+
# Process the list return type
1793+
function Process-ListType
1794+
{
1795+
param([Type] $rt, [System.String] $name)
1796+
1797+
$result = $null;
1798+
1799+
if ($rt -eq $null)
1800+
{
1801+
return $result;
1802+
}
1803+
1804+
$xml = '<Name>' + $rt.FullName + '</Name>';
1805+
$xml += '<ViewSelectedBy><TypeName>' + $rt.FullName + '</TypeName></ViewSelectedBy>' + [System.Environment]::NewLine;
1806+
$xml += '<ListControl><ListEntries><ListEntry><ListItems>' + [System.Environment]::NewLine;
1807+
1808+
$itemLabel = $itemName = $rt.Name;
1809+
$xml += "<ListItem><Label>${itemName}</Label><ScriptBlock>[Newtonsoft.Json.JsonConvert]::SerializeObject(" + "$" + "_, [Newtonsoft.Json.Formatting]::Indented)</ScriptBlock></ListItem>" + [System.Environment]::NewLine;
1810+
$xml += '</ListItems></ListEntry></ListEntries></ListControl>' + [System.Environment]::NewLine;
1811+
$xml = '<View>' + [System.Environment]::NewLine + $xml + '</View>' + [System.Environment]::NewLine;
1812+
1813+
Write-Verbose ("Xml: " + $xml);
1814+
1815+
return $xml;
1816+
}
1817+
17911818
# Process the return type
17921819
function Process-ReturnType
17931820
{
@@ -1836,6 +1863,13 @@ function Process-ReturnType
18361863
elseif ($typeStr.StartsWith('IList') `
18371864
-or $typeStr.StartsWith('IDictionary'))
18381865
{
1866+
$elementType = $pr1.PropertyType.GenericTypeArguments[0];
1867+
1868+
if (-not $elementType.FullName.Contains("String"))
1869+
{
1870+
$addxml = Process-ListType -rt $pr1.PropertyType.GenericTypeArguments[0] -name ${itemName};
1871+
}
1872+
18391873
$xml += "<ListItem><Label>${itemLabel}.Count</Label><ScriptBlock> if (" + "$" + "_.${itemName} -eq $" + "null) { 0 } else { $" + "_.${itemName}.Count }</ScriptBlock></ListItem>" + [System.Environment]::NewLine;
18401874
$xml += "<ListItem><Label>${itemLabel}</Label><ScriptBlock> foreach ($" + "item in $" + "_.${itemName}) { [Newtonsoft.Json.JsonConvert]::SerializeObject(" + "$" + "item, [Newtonsoft.Json.Formatting]::Indented) } </ScriptBlock></ListItem>" + [System.Environment]::NewLine;
18411875
}
@@ -1848,6 +1882,11 @@ function Process-ReturnType
18481882
$xml += '</ListItems></ListEntry></ListEntries></ListControl>' + [System.Environment]::NewLine;
18491883
$xml = '<View>' + [System.Environment]::NewLine + $xml + '</View>' + [System.Environment]::NewLine;
18501884

1885+
if (-not [System.String]::IsNullOrEmpty($addxml))
1886+
{
1887+
$xml += $addxml;
1888+
}
1889+
18511890
Write-Verbose ("Xml: " + $xml);
18521891

18531892
return $xml;

0 commit comments

Comments
 (0)