Combine write data calls

This commit is contained in:
Daniel Imms 2023-11-08 07:42:25 -08:00
parent bff9161987
commit 9ad04e81aa
No known key found for this signature in database
GPG Key ID: E5CF412B63651C69

View File

@ -29,24 +29,23 @@ export function setup() {
// Create the simplest system profile to get as little process interaction as possible // Create the simplest system profile to get as little process interaction as possible
await terminal.createEmptyTerminal(); await terminal.createEmptyTerminal();
// Write prompt, fill viewport, finish command // Write prompt, fill viewport, finish command, print new prompt, verify sticky scroll
await terminal.runCommandWithValue(TerminalCommandIdWithValue.WriteDataToTerminal, `${vsc('A')}Prompt> ${vsc('B')}sticky scroll 1`); await terminal.runCommandWithValue(TerminalCommandIdWithValue.WriteDataToTerminal, [
await terminal.runCommandWithValue(TerminalCommandIdWithValue.WriteDataToTerminal, `\\r\\n${vsc('C')}`); `${vsc('A')}Prompt> ${vsc('B')}sticky scroll 1`,
await terminal.runCommandWithValue(TerminalCommandIdWithValue.WriteDataToTerminal, `\\r\\ndata`.repeat(50)); `\\r\\n${vsc('C')}`,
await terminal.runCommandWithValue(TerminalCommandIdWithValue.WriteDataToTerminal, `\\r\\n${vsc('D;0')}`); // Success `\\r\\ndata`.repeat(50),
`\\r\\n${vsc('D;0')}`, // Success
// Print next prompt and validate, this is needed to finish the previous command `${vsc('A')}Prompt> ${vsc('B')}sticky scroll 2`
await terminal.runCommandWithValue(TerminalCommandIdWithValue.WriteDataToTerminal, `${vsc('A')}Prompt> ${vsc('B')}sticky scroll 2`); ].join(''));
await app.code.waitForElements('.terminal-sticky-scroll', false, elements => elements.some(e => e.textContent.indexOf('Prompt> sticky scroll 1') >= 0)); await app.code.waitForElements('.terminal-sticky-scroll', false, elements => elements.some(e => e.textContent.indexOf('Prompt> sticky scroll 1') >= 0));
// And again to verify the sticky scroll changes, this time with a failed command // And again with a failed command
await terminal.runCommandWithValue(TerminalCommandIdWithValue.WriteDataToTerminal, `\\r\\n${vsc('C')}`); await terminal.runCommandWithValue(TerminalCommandIdWithValue.WriteDataToTerminal, [
await terminal.runCommandWithValue(TerminalCommandIdWithValue.WriteDataToTerminal, `\\r\\ndata`.repeat(50)); `\\r\\n${vsc('C')}`,
await terminal.runCommandWithValue(TerminalCommandIdWithValue.WriteDataToTerminal, `\\r\\n${vsc('D;1')}`); // Fail `\\r\\ndata`.repeat(50),
`\\r\\n${vsc('D;1')}`, // Fail
// Print next prompt and validate, this is needed to finish the previous command `${vsc('A')}Prompt> ${vsc('B')}`,
await terminal.runCommandWithValue(TerminalCommandIdWithValue.WriteDataToTerminal, `${vsc('A')}Prompt> ${vsc('B')}`); ].join(''));
await terminal.assertCommandDecorations({ placeholder: 1, success: 0, error: 0 });
await app.code.waitForElements('.terminal-sticky-scroll', false, elements => elements.some(e => e.textContent.indexOf('Prompt> sticky scroll 2') >= 0)); await app.code.waitForElements('.terminal-sticky-scroll', false, elements => elements.some(e => e.textContent.indexOf('Prompt> sticky scroll 2') >= 0));
}); });
}); });