xterm tests

pull/5370/head
bunsenstraat 11 months ago
parent 921f36a969
commit fce18a995a
  1. 32
      apps/remixdesktop/test/tests/app/xterm.test.ts
  2. 2
      libs/remix-ui/terminal/src/lib/components/remix-ui-terminal-menu-buttons.tsx
  3. 2
      libs/remix-ui/workspace/src/lib/components/electron-menu.tsx
  4. 2
      libs/remix-ui/xterm/src/lib/components/remix-ui-xterminals.tsx

@ -0,0 +1,32 @@
import { NightwatchBrowser } from 'nightwatch'
module.exports = {
before: function (browser: NightwatchBrowser, done: VoidFunction) {
done()
},
'opem template': function (browser: NightwatchBrowser) {
browser
.waitForElementVisible('*[data-id="openFolderButton"]', 10000)
.click('*[data-id="openFolderButton"]')
},
'open xterm linux and create a file': function (browser: NightwatchBrowser) {
browser
.waitForElementVisible('*[data-id="tabXTerm"]', 10000)
.click('*[data-id="tabXTerm"]')
.waitForElementVisible('*[data-type="remixUIXT"]', 10000)
.click('*[data-type="remixUIXT"]')
.perform(function () {
const actions = this.actions({ async: true })
return actions.sendKeys('echo "Hello, World!" > example.txt').sendKeys(this.Keys.ENTER)
})
.waitForElementVisible('*[data-id="treeViewLitreeViewItemexample.txt"]', 10000)
},
'rename that file': function (browser: NightwatchBrowser) {
browser
.perform(function () {
const actions = this.actions({ async: true })
return actions.sendKeys('mv example.txt newExample.txt').sendKeys(this.Keys.ENTER)
})
.waitForElementVisible('*[data-id="treeViewLitreeViewItemnewExample.txt"]', 10000)
}
}

@ -23,7 +23,7 @@ export const RemixUITerminalMenuButtons = (props: RemixUiTerminalProps) => {
<button id="tabOutput" className={`xtermButton btn btn-sm border-secondary mr-2 border ${!xtermState.showOutput ? '' : 'd-flex btn-secondary'}`} onClick={selectOutput}>
Output
</button>
<button id="tabXTerm" className={`xtermButton btn btn-sm border-secondary ${xtermState.terminalsEnabled ? 'd-block' : 'd-none'} ${xtermState.showOutput ? 'd-none' : 'btn-secondary'}`} onClick={showTerminal}>
<button data-id="tabXTerm" id="tabXTerm" className={`xtermButton btn btn-sm border-secondary ${xtermState.terminalsEnabled ? 'd-block' : 'd-none'} ${xtermState.showOutput ? 'd-none' : 'btn-secondary'}`} onClick={showTerminal}>
<span className="far fa-terminal border-0 ml-1"></span>
</button>
</div>

@ -30,7 +30,7 @@ export const ElectronMenu = () => {
(platform !== appPlatformTypes.desktop) ? null :
(global.fs.browser.isSuccessfulWorkspace ? null :
<>
<div onClick={async () => { await openFolderElectron(null) }} className='btn btn-primary'><FormattedMessage id="electron.openFolder" /></div>
<div data-id="openFolderButton" onClick={async () => { await openFolderElectron(null) }} className='btn btn-primary'><FormattedMessage id="electron.openFolder" /></div>
{global.fs.browser.recentFolders.length > 0 ?
<>
<label className="py-2 pt-3 align-self-center m-0">

@ -146,7 +146,7 @@ export const RemixUiXterminals = (props: RemixUiXterminalsProps) => {
{ <div className={`flex-row w-100 h-100 ${xtermState.showOutput ? 'h-0 d-none' : 'h-100 d-flex'}`}>
{terminals.map((xtermState) => {
return (
<div className={`h-100 w-100 ${xtermState.hidden ? 'd-none' : 'd-block'}`} key={xtermState.pid} data-id={`remixUIXT${xtermState.pid}`}>
<div className={`h-100 w-100 ${xtermState.hidden ? 'd-none' : 'd-block'}`} key={xtermState.pid} data-type="remixUIXT" data-id={`remixUIXT${xtermState.pid}`}>
<RemixUiXterm
theme={theme}
setTerminalRef={setTerminalRef}

Loading…
Cancel
Save