> cat test.json
{
"str": "somestring",
"int": 2026
}
>Test-Json -Path .\test.json -SchemaFile .\fooSchema.json
Test-Json: Cannot find JSON schema file: C:\Windows\Temp\fooSchema.json
> Test-Json: Can not open JSON schema file: C:\Windows\Temp\fooSchema.json
Exception :
Type : System.Exception
TargetSite :
Name : ThrowTerminatingError
DeclaringType : [System.Management.Automation.MshCommandRuntime]
MemberType : Method
Module : System.Management.Automation.dll
Message : Can not open JSON schema file: C:\Windows\Temp\fooSchema.json
InnerException :
Type : System.IO.FileNotFoundException
Message : Could not find file 'C:\Windows\Temp\fooSchema.json'.
FileName : C:\Windows\Temp\fooSchema.json
TargetSite :
Name : CreateFile
DeclaringType : [Microsoft.Win32.SafeHandles.SafeFileHandle]
MemberType : Method
Module : System.Private.CoreLib.dll
Source : System.Private.CoreLib
HResult : -2147024894
StackTrace :
at Microsoft.Win32.SafeHandles.SafeFileHandle.CreateFile(String fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options)
at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize, Nullable`1 unixCreateMode)
at System.IO.Strategies.OSFileStreamStrategy..ctor(String path, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize, Nullable`1 unixCreateMode)
at System.IO.Strategies.FileStreamHelpers.ChooseStrategyCore(String path, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize, Nullable`1 unixCreateMode)
at System.IO.StreamReader.ValidateArgsAndOpenPath(String path, Int32 bufferSize)
at System.IO.File.ReadAllText(String path, Encoding encoding)
at Json.Schema.JsonSchema.FromFile(String fileName)
at Microsoft.PowerShell.Commands.TestJsonCommand.BeginProcessing()
Source : System.Management.Automation
HResult : -2146233088
StackTrace :
at System.Management.Automation.MshCommandRuntime.ThrowTerminatingError(ErrorRecord errorRecord)
TargetObject : C:\Windows\Temp\fooSchema.json
CategoryInfo : OpenError: (C:\Windows\Temp\fooSchema.json:String) [Test-Json], Exception
FullyQualifiedErrorId : JsonSchemaFileOpenFailure,Microsoft.PowerShell.Commands.TestJsonCommand
InvocationInfo :
MyCommand : Test-Json
ScriptLineNumber : 1
OffsetInLine : 1
HistoryId : 1
Line : Test-Json -Path .\test.json -SchemaFile .\fooSchema.json
Statement : Test-Json -Path .\test.json -SchemaFile .\fooSchema.json
PositionMessage : At line:1 char:1
+ Test-Json -Path .\test.json -SchemaFile .\fooSchema.json
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
InvocationName : Test-Json
CommandOrigin : Internal
ScriptStackTrace : at <ScriptBlock>, <No file>: line 1
#Windows
Name Value
---- -----
PSVersion 7.6.5
PSEdition Core
GitCommitId 7.6.5
OS Microsoft Windows 10.0.26200
Platform Win32NT
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion 2.4
SerializationVersion 1.1.0.1
WSManStackVersion 3.0
#Linux
Name Value
---- -----
PSVersion 7.4.2
PSEdition Core
GitCommitId 7.4.2
OS Ubuntu 20.04.6 LTS
Platform Unix
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
WSManStackVersion 3.0
Prerequisites
Steps to reproduce
Use a valid json file
test.jsonas shown in below example. Test its schema by passing an invalid schema file json.Expected behavior
Test-Json: Cannot find JSON schema file: C:\Windows\Temp\fooSchema.jsonActual behavior
> Test-Json: Can not open JSON schema file: C:\Windows\Temp\fooSchema.jsonError details
Environment data
Visuals
No response