Add support for fake input in asciicast recordings

* Fixes a bug with `SelectionPrompt` and page size.
* Allow `IAnsiConsoleInput` to return `null`.
This commit is contained in:
Patrik Svensson
2021-05-24 02:36:14 +02:00
committed by Phil Scott
parent 46abadaccb
commit 450d87f5d3
56 changed files with 1314 additions and 1166 deletions

View File

@ -1,3 +1,3 @@
{"version": 2, "width": 84, "height": 12, "title": "default-exception (plain)", "env": {"TERM": "Spectre.Console"}}
[0, "o", "\u001B[37mSystem.\u001B[0m\u001B[37mInvalidOperationException\u001B[0m: \u001B[1;31mWhaaat?\u001B[0m\r\n \u001B[37mSystem.Security.Authentication.\u001B[0m\u001B[37mInvalidCredentialException\u001B[0m: \u001B[1;31mThe credentials \u001B[0m \r\n \u001B[1;31mare invalid.\u001B[0m \r\n \u001B[37mat\u001B[0m \u001B[37mDocExampleGenerator.Exceptions.\u001B[0m\u001B[37mCheckCredentials\u001B[0m\u001B[37m(\u001B[0m\u001B[34mInt32\u001B[0m \u001B[37mqux\u001B[0m, \u001B[34mString[,]\u001B[0m \r\n \u001B[37mcorgi)\u001B[0m \u001B[37min\u001B[0m \r\n \u001B[37mR:\\Projects\\phil-scott-78\\spectre.console\\examples\\DocExampleGenerator\\S\u001B[0m\r\n \u001B[37mamples\\\u001B[0m\u001B[1;37mExceptions.cs\u001B[0m\u001B[37m:\u001B[0m\u001B[34m75\u001B[0m \r\n \u001B[37mat\u001B[0m \u001B[37mDocExampleGenerator.Exceptions.\u001B[0m\u001B[37mDoMagic\u001B[0m\u001B[37m(\u001B[0m\u001B[34mInt32\u001B[0m \u001B[37mfoo\u001B[0m, \u001B[34mString[,]\u001B[0m \u001B[37mbar)\u001B[0m \u001B[37min\u001B[0m \r\n \u001B[37mR:\\Projects\\phil-scott-78\\spectre.console\\examples\\DocExampleGenerator\\S\u001B[0m\r\n \u001B[37mamples\\\u001B[0m\u001B[1;37mExceptions.cs\u001B[0m\u001B[37m:\u001B[0m\u001B[34m65\u001B[0m \r\n \u001B[37mat\u001B[0m \u001B[37mDocExampleGenerator.Exceptions.\u001B[0m\u001B[37mDoMagic\u001B[0m\u001B[37m(\u001B[0m\u001B[34mInt32\u001B[0m \u001B[37mfoo\u001B[0m, \u001B[34mString[,]\u001B[0m \u001B[37mbar)\u001B[0m \u001B[37min\u001B[0m \r\n \u001B[37mR:\\Projects\\phil-scott-78\\spectre.console\\examples\\DocExampleGenerator\\Sample\u001B[0m\r\n \u001B[37ms\\\u001B[0m\u001B[1;37mExceptions.cs\u001B[0m\u001B[37m:\u001B[0m\u001B[34m69\u001B[0m \r\n \u001B[37mat\u001B[0m \u001B[37mDocExampleGenerator.Exceptions.BaseExceptionSample..\u001B[0m\u001B[37mctor\u001B[0m\u001B[37m()\u001B[0m \u001B[37min\u001B[0m \r\n \u001B[37mR:\\Projects\\phil-scott-78\\spectre.console\\examples\\DocExampleGenerator\\Sample\u001B[0m\r\n \u001B[37ms\\\u001B[0m\u001B[1;37mExceptions.cs\u001B[0m\u001B[37m:\u001B[0m\u001B[34m19\u001B[0m \r\n"]
[0, "o", "\u001B[37mSystem.\u001B[0m\u001B[37mInvalidOperationException\u001B[0m: \u001B[1;31mWhaaat?\u001B[0m\r\n \u001B[37mSystem.Security.Authentication.\u001B[0m\u001B[37mInvalidCredentialException\u001B[0m: \u001B[1;31mThe credentials \u001B[0m \r\n \u001B[1;31mare invalid.\u001B[0m \r\n \u001B[37mat\u001B[0m \u001B[37mGenerator.Commands.Samples.Exceptions.\u001B[0m\u001B[37mCheckCredentials\u001B[0m\u001B[37m(\u001B[0m\u001B[34mInt32\u001B[0m \u001B[37mqux\u001B[0m, \u001B[34mString\u001B[0m\r\n \u001B[34m[,]\u001B[0m \u001B[37mcorgi)\u001B[0m \u001B[37min\u001B[0m \r\n \u001B[37mC:\\Users\\Patrik\\Source\\github\\patriksvensson\\spectre.console\\resources\\s\u001B[0m\r\n \u001B[37mcripts\\Generator\\Commands\\AsciiCast\\Samples\\\u001B[0m\u001B[1;37mExceptions.cs\u001B[0m\u001B[37m:\u001B[0m\u001B[34m75\u001B[0m \r\n \u001B[37mat\u001B[0m \u001B[37mGenerator.Commands.Samples.Exceptions.\u001B[0m\u001B[37mDoMagic\u001B[0m\u001B[37m(\u001B[0m\u001B[34mInt32\u001B[0m \u001B[37mfoo\u001B[0m, \u001B[34mString[,]\u001B[0m \u001B[37mbar)\u001B[0m \r\n \u001B[37min\u001B[0m \r\n \u001B[37mC:\\Users\\Patrik\\Source\\github\\patriksvensson\\spectre.console\\resources\\s\u001B[0m\r\n \u001B[37mcripts\\Generator\\Commands\\AsciiCast\\Samples\\\u001B[0m\u001B[1;37mExceptions.cs\u001B[0m\u001B[37m:\u001B[0m\u001B[34m65\u001B[0m \r\n \u001B[37mat\u001B[0m \u001B[37mGenerator.Commands.Samples.Exceptions.\u001B[0m\u001B[37mDoMagic\u001B[0m\u001B[37m(\u001B[0m\u001B[34mInt32\u001B[0m \u001B[37mfoo\u001B[0m, \u001B[34mString[,]\u001B[0m \u001B[37mbar)\u001B[0m \u001B[37min\u001B[0m \r\n \u001B[37mC:\\Users\\Patrik\\Source\\github\\patriksvensson\\spectre.console\\resources\\script\u001B[0m\r\n \u001B[37ms\\Generator\\Commands\\AsciiCast\\Samples\\\u001B[0m\u001B[1;37mExceptions.cs\u001B[0m\u001B[37m:\u001B[0m\u001B[34m69\u001B[0m \r\n \u001B[37mat\u001B[0m \u001B[37mGenerator.Commands.Samples.Exceptions.BaseExceptionSample..\u001B[0m\u001B[37mctor\u001B[0m\u001B[37m()\u001B[0m \u001B[37min\u001B[0m \r\n \u001B[37mC:\\Users\\Patrik\\Source\\github\\patriksvensson\\spectre.console\\resources\\script\u001B[0m\r\n \u001B[37ms\\Generator\\Commands\\AsciiCast\\Samples\\\u001B[0m\u001B[1;37mExceptions.cs\u001B[0m\u001B[37m:\u001B[0m\u001B[34m19\u001B[0m \r\n"]