Skip to content

Commit

Permalink
test(ui): test instance setup
Browse files Browse the repository at this point in the history
- fix auto complete choice on blur
- fix button disabled
  • Loading branch information
18alantom committed Jun 27, 2023
1 parent badae87 commit 64671e5
Show file tree
Hide file tree
Showing 6 changed files with 46 additions and 7 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
.DS_Store
node_modules
/dbs
/dist
/notebook

Expand Down
1 change: 1 addition & 0 deletions src/components/Button.vue
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
<template>
<button
class="rounded-md flex justify-center items-center text-sm"
:disabled="disabled"
:class="_class"
v-bind="$attrs"
>
Expand Down
10 changes: 5 additions & 5 deletions src/components/Controls/AutoComplete.vue
Original file line number Diff line number Diff line change
Expand Up @@ -262,15 +262,15 @@ export default {
return;
}
if (label && this.suggestions.length === 0) {
if (this.suggestions.length === 0) {
this.triggerChange(label);
return;
}
if (
label &&
!this.suggestions.map(({ label }) => label).includes(label)
) {
const suggestion = this.suggestions.find((s) => s.label === label);
if (suggestion) {
this.setSuggestion(suggestion);
} else {
const suggestions = await this.getSuggestions(label);
this.setSuggestion(suggestions[0]);
}
Expand Down
1 change: 1 addition & 0 deletions src/components/Sidebar.vue
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
"
>
<h6
data-testid="company-name"
class="
font-semibold
whitespace-nowrap
Expand Down
1 change: 1 addition & 0 deletions src/pages/SetupWizard/SetupWizard.vue
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@
<Button
type="primary"
class="w-24"
data-testid="submit-button"
:disabled="!areAllValuesFilled || loading"
@click="submit"
>{{ t`Submit` }}</Button
Expand Down
39 changes: 37 additions & 2 deletions uitest/index.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ const appSourcePath = path.join(root, 'dist_electron', 'build', 'main.js');
(async function run() {
const electronApp = await _electron.launch({ args: [appSourcePath] });
const window = await electronApp.firstWindow();
window.setDefaultTimeout(10_000);

test('load app', async (t) => {
t.equal(await window.title(), 'Frappe Books', 'title matches');
Expand Down Expand Up @@ -42,9 +43,43 @@ const appSourcePath = path.join(root, 'dist_electron', 'build', 'main.js');
t.ok(await createNew.isVisible(), 'create new is visible');
});

test('fill setup form', async (t) => {
const filePath = path.join(root, 'dbs', 'books_uitest.db');
await electronApp.evaluate(({ dialog }, filePath) => {
dialog.showSaveDialog = () =>
Promise.resolve({ canceled: false, filePath });
}, filePath);
await window.getByTestId('create-new-file').click();
await window.getByTestId('submit-button').waitFor();

t.equal(
await window.getByTestId('submit-button').isDisabled(),
true,
'submit button is disabled before form fill'
);

await window.getByPlaceholder('Company Name').fill('Test Company');
await window.getByPlaceholder('John Doe').fill('Test Owner');
await window.getByPlaceholder('[email protected]').fill('[email protected]');
await window.getByPlaceholder('Select Country').fill('India');
await window.getByPlaceholder('Select Country').blur();
await window.getByPlaceholder('Prime Bank').fill('Test Bank');
await window.getByPlaceholder('Prime Bank').blur();

t.equal(
await window.getByTestId('submit-button').isDisabled(),
false,
'submit button enabled after form fill'
);
});

test('create new instance', async (t) => {
// await window.getByTestId('create-new-file').click();
t.ok(true, '...');
await window.getByTestId('submit-button').click();
t.equal(
await window.getByTestId('company-name').innerText(),
'Test Company',
'new instance created, company name found in sidebar'
);
});

test('close app', async (t) => {
Expand Down

0 comments on commit 64671e5

Please sign in to comment.