tests/Set-WorkdayWorkerPhoto.Tests.ps1
Get-Module WorkdayApi | Remove-Module -Force Import-Module "$PsScriptRoot\..\WorkdayApi.psd1" -Force Import-Module "$PsScriptRoot\Invoke-WorkdayRequestHelper.psm1" -Force -DisableNameChecking Describe Set-WorkdayWorkerPhoto { InModuleScope WorkdayApi { Mock Invoke-WorkdayRequest { Mock_Invoke-WorkdayRequest_Echo @args } $testFilePath = Join-Path $TestDrive 'TestFile.txt' Set-Content -Value 'Test File' -Path $testFilePath It 'Creates the expected request XML.' { $expectedResponse = @' <bsvc:Put_Worker_Photo_Request bsvc:version="v30.1" xmlns:bsvc="urn:com.workday/bsvc"><bsvc:Worker_Reference><bsvc:ID bsvc:type="WID">1</bsvc:ID></bsvc:Worker_Reference><bsvc:Worker_Photo_Data><bsvc:Filename>TestFile.txt</bsvc:Filename><bsvc:File>VGVzdCBGaWxlDQo=</bsvc:File></bsvc:Worker_Photo_Data></bsvc:Put_Worker_Photo_Request> '@ $arguments = @{ WorkerId = 1 WorkerType = 'WID' Path = $testFilePath } $response = Set-WorkdayWorkerPhoto @arguments $response.Xml.OuterXml | Should BeExactly $expectedResponse Assert-MockCalled Invoke-WorkdayRequest -Exactly 1 } } } |