Skip to content

Commit 7b3cea7

Browse files
Merge branch 'master' of github.com:krayin/laravel-crm
2 parents 7484783 + d0fe5b6 commit 7b3cea7

File tree

1 file changed

+51
-0
lines changed

1 file changed

+51
-0
lines changed
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
import { test, expect } from "../setup";
2+
import { generateName, generateSKU, generateDescription, generateDate, generateEmail, generatePhoneNumber } from '../utils/faker';
3+
4+
test.describe("lead management", () => {
5+
test("should create a lead", async ({ adminPage }) => {
6+
/**
7+
* Go to the lead listing page.
8+
*/
9+
await adminPage.goto("admin/leads");
10+
11+
await adminPage.getByRole('link', { name: 'Create Lead' }).click();
12+
13+
/**
14+
* Fill the lead form.
15+
*/
16+
await adminPage.fill('input[name="title"]', generateName());
17+
await adminPage.fill('textarea[name="description"]', generateDescription());
18+
await adminPage
19+
.locator('select[name="lead_source_id"]')
20+
.selectOption("1");
21+
22+
await adminPage.fill('input[name="expected_close_date"]', generateDate());
23+
24+
await adminPage
25+
.locator('select[name="lead_type_id"]')
26+
.selectOption("1");
27+
28+
await adminPage
29+
.locator('select[name="user_id"]')
30+
.selectOption("1");
31+
await adminPage.fill('input[name="lead_value"]', '1000');
32+
33+
await adminPage.locator('div').filter({ hasText: /^Click to Add$/ }).nth(1).click();
34+
await adminPage.getByRole('textbox', { name: 'Search...' }).click();
35+
await adminPage.getByRole('textbox', { name: 'Search...' }).fill(generateName());
36+
await adminPage.getByText('Add as New').click();
37+
38+
await adminPage.fill('input[name="person[emails][0][value]"]', generateEmail());
39+
await adminPage.fill('input[name="person[contact_numbers][0][value]"]', generatePhoneNumber());
40+
41+
await adminPage.locator('div').filter({ hasText: /^Click to add$/ }).nth(2).click();
42+
await adminPage.getByRole('textbox', { name: 'Search...' }).click();
43+
await adminPage.getByRole('textbox', { name: 'Search...' }).fill(generateName());
44+
await adminPage.getByText('Add as New').click();
45+
46+
47+
await adminPage.getByRole('button', { name: 'Save' }).click();
48+
49+
await expect(adminPage.getByText('Lead created successfully.', { exact: true })).toBeVisible();
50+
});
51+
});

0 commit comments

Comments
 (0)