__tests__/PSKit.ReadCsv.tests.ps1
Import-Module $PSScriptRoot/../PSKit.psd1 -Force Describe "PSKit tests - Read-Csv" { BeforeAll { $script:url = 'https://raw.githubusercontent.com/dfinke/ImportExcel/master/Examples/JustCharts/TargetData.csv' $script:file = "$PSScriptRoot\..\data\targetData.csv" $script:str = @" "Cost","Date","Name" "1.1","1/1/2015","John" "2.1","1/2/2015","Tom" "5.1","1/2/2015","Dick" "11.1","1/2/2015","Harry" "7.1","1/2/2015","Jane" "22.1","1/2/2015","Mary" "32.1","1/2/2015","Liz" "@ } It "Shoud Read from a url" { $actual = Read-Csv $url $actual.Count | Should -Be 7 $actual = $url | Read-Csv $actual.Count | Should -Be 7 } It "Shoud Read from a file" { $actual = Read-Csv $file $actual.Count | Should -Be 7 $actual = $file | Read-Csv $actual.Count | Should -Be 7 } It "Shoud Read from a string" { $actual = Read-Csv $str $actual.Count | Should -Be 7 $actual = $str | Read-Csv $actual.Count | Should -Be 7 } It "Should do all" { $actual = $url, $str, $file | Read-Csv $actual.Count | Should -Be 21 } It "Should Read Tab Separated Values from a string" { $tsvData = @" Region`tItemName`tTotalSold South`torange`t31 West`tmelon`t91 South`tpear`t40 North`tdrill`t43 South`torange`t77 South`tpeach`t67 West`tscrews`t48 North`tavocado`t52 North`tpeach`t63 East`tavocado1`t62 "@ $actual = Read-Csv -target $tsvData -Delimiter "`t" $actual.Count | Should -Be 10 } } |