Hex1b.Automation
Assembly: Hex1b.dll
Classes
AutomationStepRecord
Immutable record of a completed automation step. Used by to track step history for diagnostic purposes.
public sealed record AutomationStepRecord : IEquatable<AutomationStepRecord>BmpEncoder
Encodes raw pixel data to BMP format for embedding in SVG as data URIs.
public static class BmpEncoderCellMatchContext
Context provided to cell predicates during pattern matching. Contains information about the current position, cell, and match state.
public sealed class CellMatchContextCellPatternMatch
Represents a successful pattern match containing all traversed cells and capture information.
public sealed class CellPatternMatchCellPatternSearcher
A fluent builder for describing patterns of terminal cells. Patterns can match based on character content, cell attributes, colors, and spatial relationships. The searcher is immutable - all methods return new instances, making patterns safe to reuse and compose.
public sealed class CellPatternSearcherCellPatternSearchResult
Collection of all pattern matches found in a search.
public sealed class CellPatternSearchResultHex1bAutomationException
Exception thrown by when an automation step fails. Includes rich diagnostic information including the full step history, terminal snapshot, and source location to help pinpoint the failure.
public sealed class Hex1bAutomationException : Exception, ISerializableHex1bTerminalAutomator
Provides an imperative, async API for automating terminal interactions in tests. Each method executes immediately and records its result in a step history, providing rich diagnostic context when failures occur.
public sealed class Hex1bTerminalAutomatorHex1bTerminalInputSequence
A sequence of test steps that can be applied to a terminal. Built using .
public sealed class Hex1bTerminalInputSequenceHex1bTerminalInputSequenceBuilder
Fluent builder for creating test sequences to simulate user interaction.
public sealed class Hex1bTerminalInputSequenceBuilderHex1bTerminalInputSequenceOptions
Options for configuring test sequence execution.
public sealed class Hex1bTerminalInputSequenceOptionsHex1bTerminalRegionExtensions
Extension methods for providing common text operations.
public static class Hex1bTerminalRegionExtensionsHex1bTerminalSnapshot
An immutable snapshot of terminal state at a point in time. Used for assertions and wait conditions in test sequences.
public sealed class Hex1bTerminalSnapshot : IHex1bTerminalRegion, IDisposableHex1bTerminalSnapshotRegion
A lightweight view into a terminal snapshot that provides localized coordinates. The region translates local (0,0)-based coordinates to the absolute position in the snapshot.
public sealed class Hex1bTerminalSnapshotRegion : IHex1bTerminalRegionKeyInputStep
A step that sends a single key event.
public sealed record KeyInputStep : TestStep, IEquatable<TestStep>, IEquatable<KeyInputStep>MouseInputStep
A step that sends a mouse event at a specific position.
public sealed record MouseInputStep : TestStep, IEquatable<TestStep>, IEquatable<MouseInputStep>SixelDecoder
Decodes Sixel graphics data to raw pixel arrays for SVG rendering.
public static class SixelDecoderSixelImage
Represents a decoded Sixel image as RGBA pixel data.
public sealed class SixelImageTerminalAnsiOptions
Options for ANSI rendering of terminal regions.
public class TerminalAnsiOptionsTerminalRegionAnsiExtensions
Extension methods for rendering terminal regions to ANSI escape code format.
public static class TerminalRegionAnsiExtensionsTerminalRegionCellPatternExtensions
Extension methods for searching terminal regions with cell patterns.
public static class TerminalRegionCellPatternExtensionsTerminalRegionHtmlExtensions
Extension methods for rendering terminal regions to interactive HTML format.
public static class TerminalRegionHtmlExtensionsTerminalRegionSvgExtensions
Extension methods for rendering terminal regions to SVG format.
public static class TerminalRegionSvgExtensionsTerminalSvgOptions
Options for SVG rendering of terminal regions.
public class TerminalSvgOptionsTestPatternGenerator
Generates well-known test pattern images for verifying graphics rendering. These patterns have predictable, easily verifiable outputs.
public static class TestPatternGeneratorTestStep
Base class for test sequence steps. Each step knows how to execute itself against a terminal.
public abstract record TestStep : IEquatable<TestStep>TextInputStep
A step that types a string of text, optionally with delays between keystrokes.
public sealed record TextInputStep : TestStep, IEquatable<TestStep>, IEquatable<TextInputStep>WaitStep
A step that pauses for a specified duration.
public sealed record WaitStep : TestStep, IEquatable<TestStep>, IEquatable<WaitStep>WaitUntilStep
A step that waits until a condition is met on the terminal.
public sealed record WaitUntilStep : TestStep, IEquatable<TestStep>, IEquatable<WaitUntilStep>WaitUntilTimeoutException
Exception thrown when a times out waiting for a condition. Includes rich diagnostic information about the terminal state at the time of timeout.
public sealed class WaitUntilTimeoutException : TimeoutException, ISerializableStructs
FindOptions
Options for Find pattern methods.
public readonly struct FindOptionsMultiLineTextMatch
Represents a text match that may span multiple lines in a terminal region.
public readonly record struct MultiLineTextMatch : IEquatable<MultiLineTextMatch>TextMatch
Represents a text match found in a terminal region, with its coordinates.
public readonly record struct TextMatch : IEquatable<TextMatch>TraversedCell
Represents a single cell that was traversed during pattern matching.
public readonly record struct TraversedCell : IEquatable<TraversedCell>Interfaces
IHex1bTerminalRegion
Common interface for terminal snapshot and snapshot regions. Provides core cell access and region extraction.
public interface IHex1bTerminalRegionEnums
Direction
Direction of movement in the terminal grid.
public enum DirectionFindCursorPosition
Specifies where to position the cursor after a Find match.
public enum FindCursorPositionScrollbackWidth
Controls how scrollback line widths are adapted when included in a snapshot.
public enum ScrollbackWidth