From 71330f31e5b8aae2b36b083ee0706a620edbd326 Mon Sep 17 00:00:00 2001 From: dfinke Date: Sat, 16 Jun 2018 09:20:17 -0400 Subject: [PATCH] added - before gen of file --- Examples/TestRestAPI/TestAPIReadXls.ps1 | 41 ++++++++++++++++++++++++ Examples/TestRestAPI/testlist.xlsx | Bin 0 -> 10363 bytes 2 files changed, 41 insertions(+) create mode 100644 Examples/TestRestAPI/TestAPIReadXls.ps1 create mode 100644 Examples/TestRestAPI/testlist.xlsx diff --git a/Examples/TestRestAPI/TestAPIReadXls.ps1 b/Examples/TestRestAPI/TestAPIReadXls.ps1 new file mode 100644 index 0000000..38df9be --- /dev/null +++ b/Examples/TestRestAPI/TestAPIReadXls.ps1 @@ -0,0 +1,41 @@ +function Test-APIReadXls { + param( + [parameter(Mandatory)] + $XlFilename, + $WorksheetName = 'Sheet1' + ) + + $records = Import-Excel $XlFilename + + $params = @{} + + $blocks = $(foreach ($record in $records) { + foreach ($propertyName in $record.psobject.properties.name) { + if ($propertyName -notmatch 'ExpectedResult|QueryString') { + $params.$propertyName = $record.$propertyName + } + } + + if ($record.QueryString) { + $params.Uri += "?{0}" -f $record.QueryString + } + +@" + + it "Should have the expected result '$($record.ExpectedResult)'" { + `$target = '$($params | ConvertTo-Json -compress)' | ConvertFrom-Json + `$target.psobject.Properties.name | % {`$p=@{}} {`$p.`$_=`$(`$target.`$_)} + Invoke-RestMethod @p | Should Be '$($record.ExpectedResult)' + } + +"@ + }) + +@" +Describe "Tests from $($XlFilename) in $($WorksheetName)" { +$($blocks) +} +"@ +} + +Test-APIReadXls .\testlist.xlsx \ No newline at end of file diff --git a/Examples/TestRestAPI/testlist.xlsx b/Examples/TestRestAPI/testlist.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..6e02ef5713b429e3213e2aa343d5370f049c0d3e GIT binary patch literal 10363 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 CMDmFM literal 0 HcmV?d00001