mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-10-28 19:59:24 +01:00
65 lines
1.8 KiB
JavaScript
65 lines
1.8 KiB
JavaScript
import { v4 as generateUniqueId } from 'uuid';
|
|
|
|
describe('Static Front Page', () => {
|
|
beforeEach(() => {
|
|
browser.get('/');
|
|
browser.sleep(1000);
|
|
});
|
|
|
|
it('shows the front page', async () => {
|
|
let button = element(by.id('play-btn'));
|
|
|
|
await expect(button.getText()).to.eventually.eql('Join for free');
|
|
});
|
|
|
|
it('does not login when using wrong credentials', async () => {
|
|
let button = element(by.id('play-btn'));
|
|
let randomName = generateUniqueId();
|
|
|
|
button.click();
|
|
browser.sleep(1000);
|
|
|
|
element(by.model('loginUsername')).sendKeys(randomName);
|
|
element(by.model('loginPassword')).sendKeys('pass');
|
|
|
|
let login = element(by.css('#loginForm input[value="Login"]'));
|
|
|
|
login.click();
|
|
browser.sleep(1000);
|
|
|
|
let alertDialog = browser.switchTo().alert();
|
|
|
|
await expect(alertDialog.getText()).to.eventually.match(/username or password is incorrect./);
|
|
|
|
alertDialog.accept();
|
|
});
|
|
|
|
it('registers a new user', async function () {
|
|
this.timeout(30000); // TODO: Speed up registration action. Takes way too long and times out unless you extend the timeout
|
|
|
|
let button = element(by.id('play-btn'));
|
|
let randomName = generateUniqueId();
|
|
|
|
button.click();
|
|
browser.sleep(1000);
|
|
|
|
let registerTab = element(by.linkText('Register'));
|
|
registerTab.click();
|
|
element(by.model('registerVals.username')).sendKeys(randomName);
|
|
element(by.model('registerVals.email')).sendKeys(`${randomName}@example.com`);
|
|
element(by.model('registerVals.password')).sendKeys('pass');
|
|
element(by.model('registerVals.confirmPassword')).sendKeys('pass');
|
|
|
|
let register = element(by.css('#registrationForm input[type="submit"]'));
|
|
|
|
register.click();
|
|
browser.sleep(3000);
|
|
|
|
let url = await browser.getCurrentUrl();
|
|
|
|
expect(url).to.not.match(/static\/front/);
|
|
});
|
|
|
|
it('logs in an existing user');
|
|
});
|