UNPKG

magnitude-test

Version:

A TypeScript client for running automated UI tests through the Magnitude testing platform

113 lines (112 loc) 2.8 kB
import { spinnerChars as localSpinnerChars } from './constants'; // Import and alias // --- UI State --- // Export spinnerChars so TermAppRenderer can access it via uiState.spinnerChars export const spinnerChars = localSpinnerChars; // currentWidth removed as it's no longer used for layout export let redrawScheduled = false; export let renderSettings = { showActions: true }; export let timerInterval = null; export let currentTestStates = {}; export let allRegisteredTests = []; // Changed from currentTests export let currentModel = ''; export let elapsedTimes = {}; export let isFinished = false; export let spinnerFrame = 0; export let lastOutputLineCount = 0; // Track lines for stability export let isFirstDraw = true; // Flag to handle the first redraw specially // resizeTimeout removed // isResizing removed /** * Resets all UI state to initial values */ export function resetState() { // currentWidth reset removed redrawScheduled = false; renderSettings = { showActions: true }; // Reset render settings timerInterval = null; currentTestStates = {}; allRegisteredTests = []; // Changed from currentTests currentModel = ''; elapsedTimes = {}; isFinished = false; spinnerFrame = 0; lastOutputLineCount = 0; isFirstDraw = true; // resizeTimeout reset removed // isResizing reset removed } /** * Sets the redrawScheduled flag */ export function setRedrawScheduled(value) { redrawScheduled = value; } /** * Sets the lastOutputLineCount */ export function setLastOutputLineCount(count) { lastOutputLineCount = count; } /** * Sets the isFirstDraw flag */ export function setIsFirstDraw(value) { isFirstDraw = value; } // setCurrentWidth removed // setIsResizing removed // setResizeTimeout removed /** * Sets the currentModel */ export function setCurrentModel(model) { currentModel = model; } /** * Sets the allRegisteredTests */ export function setAllRegisteredTests(tests) { allRegisteredTests = tests; } /** * Sets the currentTestStates */ export function setCurrentTestStates(states) { currentTestStates = states; } /** * Sets the timerInterval */ export function setTimerInterval(interval) { timerInterval = interval; } /** * Sets the spinnerFrame */ export function setSpinnerFrame(frame) { spinnerFrame = frame; } /** * Sets the elapsedTimes */ export function setElapsedTimes(times) { elapsedTimes = times; } /** * Updates a specific entry in the elapsedTimes map */ export function updateElapsedTime(testId, time) { elapsedTimes[testId] = time; } /** * Sets the isFinished flag */ export function setIsFinished(value) { isFinished = value; } /** * Sets the renderSettings */ export function setRenderSettings(settings) { renderSettings = settings; }