Skip to content

Commit d198571

Browse files
committed
added new ref assemblies to Files.wxs
refactor tests to remove similar xml content added single column test case
1 parent 34a3fdf commit d198571

2 files changed

Lines changed: 73 additions & 115 deletions

File tree

assets/files.wxs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,12 @@
77
<Component Id="cmp3CC027D3F160412C9F0044EBED3115DD" Guid="{8D7CAA67-8F28-422C-85FB-BDE04902E64F}">
88
<File Id="filFD2EF6BC74AF459D1BB52CA1E8C6E33B" KeyPath="yes" Source="$(env.ProductSourcePath)\NJsonSchema.dll" />
99
</Component>
10+
<Component Id="cmp85032A09199C30E63F9F2CF55B6FA9B9" Guid="{D3414CD0-7366-4008-A406-DC9E69224F42}">
11+
<File Id="fil85032A09199C30E63F9F2CF55B6FA9B9" KeyPath="yes" Source="$(env.ProductSourcePath)\System.Memory.dll" />
12+
</Component>
13+
<Component Id="cmp12FFA2A71C4F95630792652F192DAAB3" Guid="{9F6FF303-33C5-4C51-9092-B03BC1593AEF}">
14+
<File Id="fil12FFA2A71C4F95630792652F192DAAB3" KeyPath="yes" Source="$(env.ProductSourcePath)\System.Runtime.CompilerServices.Unsafe.dll" />
15+
</Component>
1016
<Component Id="cmp3B130879A26D2E954251BB81E8948069" Guid="{CD268615-4603-4A5F-B126-340ADF2EDDD5}">
1117
<File Id="filAACDEEE28FEA076C73D082A0AD21B8E0" KeyPath="yes" Source="$(env.ProductSourcePath)\Microsoft.CSharp.dll" />
1218
</Component>
@@ -1822,6 +1828,8 @@
18221828
<Fragment>
18231829
<ComponentGroup Id="$(var.ProductDirectoryName)">
18241830
<ComponentRef Id="cmp3CC027D3F160412C9F0044EBED3115DD" />
1831+
<ComponentRef Id="cmp85032A09199C30E63F9F2CF55B6FA9B9" />
1832+
<ComponentRef Id="cmp12FFA2A71C4F95630792652F192DAAB3" />
18251833
<ComponentRef Id="cmp3B130879A26D2E954251BB81E8948069" />
18261834
<ComponentRef Id="cmp02ABBE4A3EDBEBFD05DC17A009A2B79D" />
18271835
<ComponentRef Id="cmpAA10498DF244C013CB5043C62E3AA83A" />

test/powershell/Modules/Microsoft.PowerShell.Utility/Format-Table.Tests.ps1

Lines changed: 65 additions & 115 deletions
Original file line numberDiff line numberDiff line change
@@ -341,29 +341,76 @@ Left Center Right
341341
}
342342

343343
It "Format-Table should correctly render headers that span multiple rows: <variation>" -TestCases @(
344-
@{
345-
variation = "4 row, 1 row, 2 row";
346-
ps1xml = @"
344+
@{ view = "Default"; widths = 4,7,4; variation = "4 row, 1 row, 2 row"; expectedTable = @"
345+
346+
Long Header2 Head
347+
Long er3
348+
Head
349+
er
350+
---- ------- ----
351+
1 2 3
352+
353+
354+
355+
"@ },
356+
@{ view = "Default"; widths = 4,4,7; variation = "4 row, 2 row, 1 row"; expectedTable = @"
357+
358+
Long Head Header3
359+
Long er2
360+
Head
361+
er
362+
---- ---- -------
363+
1 2 3
364+
365+
366+
367+
"@ },
368+
@{ view = "Default"; widths = 14,7,3; variation = "1 row, 1 row, 3 row"; expectedTable = @"
369+
370+
LongLongHeader Header2 Hea
371+
der
372+
3
373+
-------------- ------- ---
374+
1 2 3
375+
376+
377+
378+
"@ },
379+
@{ view = "One"; widths = 4,1,1; variation = "1 column"; expectedTable = @"
380+
381+
Long
382+
Long
383+
Head
384+
er
385+
----
386+
1
387+
388+
389+
390+
"@ }
391+
) {
392+
param($view, $widths, $expectedTable)
393+
$ps1xml = @"
347394
<Configuration>
348395
<ViewDefinitions>
349396
<View>
350-
<Name>Test.Format</Name>
397+
<Name>Default</Name>
351398
<ViewSelectedBy>
352399
<TypeName>Test.Format</TypeName>
353400
</ViewSelectedBy>
354401
<TableControl>
355402
<TableHeaders>
356403
<TableColumnHeader>
357404
<Label>LongLongHeader</Label>
358-
<Width>4</Width>
405+
<Width>{0}</Width>
359406
</TableColumnHeader>
360407
<TableColumnHeader>
361408
<Label>Header2</Label>
362-
<Width>7</Width>
409+
<Width>{1}</Width>
363410
</TableColumnHeader>
364411
<TableColumnHeader>
365412
<Label>Header3</Label>
366-
<Width>4</Width>
413+
<Width>{2}</Width>
367414
</TableColumnHeader>
368415
</TableHeaders>
369416
<TableRowEntries>
@@ -383,43 +430,16 @@ Left Center Right
383430
</TableRowEntries>
384431
</TableControl>
385432
</View>
386-
</ViewDefinitions>
387-
</Configuration>
388-
"@; expectedTable = @"
389-
390-
Long Header2 Head
391-
Long er3
392-
Head
393-
er
394-
---- ------- ----
395-
1 2 3
396-
397-
398-
399-
"@ },
400-
@{
401-
variation = "4 row, 2 row, 1 row";
402-
ps1xml = @"
403-
<Configuration>
404-
<ViewDefinitions>
405433
<View>
406-
<Name>Test.Format</Name>
434+
<Name>One</Name>
407435
<ViewSelectedBy>
408436
<TypeName>Test.Format</TypeName>
409437
</ViewSelectedBy>
410438
<TableControl>
411439
<TableHeaders>
412440
<TableColumnHeader>
413441
<Label>LongLongHeader</Label>
414-
<Width>4</Width>
415-
</TableColumnHeader>
416-
<TableColumnHeader>
417-
<Label>Header2</Label>
418-
<Width>4</Width>
419-
</TableColumnHeader>
420-
<TableColumnHeader>
421-
<Label>Header3</Label>
422-
<Width>7</Width>
442+
<Width>{0}</Width>
423443
</TableColumnHeader>
424444
</TableHeaders>
425445
<TableRowEntries>
@@ -428,101 +448,31 @@ er
428448
<TableColumnItem>
429449
<PropertyName>First</PropertyName>
430450
</TableColumnItem>
431-
<TableColumnItem>
432-
<PropertyName>Second</PropertyName>
433-
</TableColumnItem>
434-
<TableColumnItem>
435-
<PropertyName>Third</PropertyName>
436-
</TableColumnItem>
437451
</TableColumnItems>
438452
</TableRowEntry>
439453
</TableRowEntries>
440454
</TableControl>
441455
</View>
442456
</ViewDefinitions>
443457
</Configuration>
444-
"@; expectedTable = @"
445-
446-
Long Head Header3
447-
Long er2
448-
Head
449-
er
450-
---- ---- -------
451-
1 2 3
452-
453-
454-
455-
"@ },
456-
@{
457-
variation = "1 row, 1 row, 3 row";
458-
ps1xml = @"
459-
<Configuration>
460-
<ViewDefinitions>
461-
<View>
462-
<Name>Test.Format</Name>
463-
<ViewSelectedBy>
464-
<TypeName>Test.Format</TypeName>
465-
</ViewSelectedBy>
466-
<TableControl>
467-
<TableHeaders>
468-
<TableColumnHeader>
469-
<Label>Header1</Label>
470-
<Width>7</Width>
471-
</TableColumnHeader>
472-
<TableColumnHeader>
473-
<Label>Header2</Label>
474-
<Width>7</Width>
475-
</TableColumnHeader>
476-
<TableColumnHeader>
477-
<Label>LongHeader3</Label>
478-
<Width>4</Width>
479-
</TableColumnHeader>
480-
</TableHeaders>
481-
<TableRowEntries>
482-
<TableRowEntry>
483-
<TableColumnItems>
484-
<TableColumnItem>
485-
<PropertyName>First</PropertyName>
486-
</TableColumnItem>
487-
<TableColumnItem>
488-
<PropertyName>Second</PropertyName>
489-
</TableColumnItem>
490-
<TableColumnItem>
491-
<PropertyName>Third</PropertyName>
492-
</TableColumnItem>
493-
</TableColumnItems>
494-
</TableRowEntry>
495-
</TableRowEntries>
496-
</TableControl>
497-
</View>
498-
</ViewDefinitions>
499-
</Configuration>
500-
"@; expectedTable = @"
501-
502-
Header1 Header2 Long
503-
Head
504-
er3
505-
------- ------- ----
506-
1 2 3
507-
508-
509-
510-
"@ }
511-
) {
512-
param($ps1xml, $expectedTable)
458+
"@
459+
$ps1xml = $ps1xml.Replace("{0}", $widths[0]).Replace("{1}", $widths[1]).Replace("{2}", $widths[2])
513460
$ps1xmlPath = Join-Path -Path $TestDrive -ChildPath "test.format.ps1xml"
514461
Set-Content -Path $ps1xmlPath -Value $ps1xml
515462
# run in own runspace so not affect global sessionstate
516463
$ps = [powershell]::Create()
517464
$ps.AddScript( {
518-
param($ps1xmlPath)
465+
param($ps1xmlPath, $view)
519466
Update-FormatData -AppendPath $ps1xmlPath
520467
$a = [PSCustomObject]@{First=1;Second=2;Third=3}
521468
$a.PSObject.TypeNames.Insert(0,"Test.Format")
522-
$a | Out-String
523-
} ).AddArgument($ps1xmlPath) | Out-Null
469+
$a | Format-Table -View $view | Out-String
470+
} ).AddArgument($ps1xmlPath).AddArgument($view) | Out-Null
524471
$output = $ps.Invoke()
525-
472+
foreach ($e in $ps.Streams.Error)
473+
{
474+
Write-Verbose $e.ToString() -Verbose
475+
}
526476
$ps.HadErrors | Should -BeFalse
527477
$output.Replace("`r","").Replace(" ",".").Replace("`n","``") | Should -BeExactly $expectedTable.Replace("`r","").Replace(" ",".").Replace("`n","``")
528478
}

0 commit comments

Comments
 (0)