Signup creation and submit tests
This commit is contained in:
@@ -0,0 +1,81 @@
|
||||
import { Selector } from "testcafe";
|
||||
import { getSiteRoot, getPageUrl } from "../utils";
|
||||
import { doLogin } from "./common/login";
|
||||
|
||||
fixture`Admin events`.page(`${getSiteRoot()}/admin/signups`);
|
||||
|
||||
test("Logged in user can create signup", async t => {
|
||||
const loginForm = Selector("form.admin-login-form");
|
||||
await t.expect(loginForm.exists).ok();
|
||||
await doLogin(t);
|
||||
await t.expect(await getPageUrl() === "/admin/signups").ok();
|
||||
|
||||
const newButton = Selector("[data-e2e=\"create-signup\"]");
|
||||
await t.click(newButton);
|
||||
await t.expect(await getPageUrl() === "/admin/signups/create").ok();
|
||||
|
||||
const titleFi = Selector("#rjsf_title_fi");
|
||||
const titleEn = Selector("#rjsf_title_en");
|
||||
const visible = Selector("#rjsf_visible");
|
||||
|
||||
await t
|
||||
.typeText(titleFi, "Testi Ilmo")
|
||||
.typeText(titleEn, "Test Signup")
|
||||
.click(visible);
|
||||
|
||||
const newQuestionButton = Selector("[data-e2e=\"admin-signup-new-question\"]");
|
||||
const lastQuestion = () => Selector("[data-e2e=\"admin-signup-question\"]").child("div").child("div").nth(-1);
|
||||
|
||||
await t.click(newQuestionButton);
|
||||
let question = lastQuestion();
|
||||
let questionName = question.child("input");
|
||||
let questionTypeSelect = question.child("select");
|
||||
let requiredBox = question.child("label")
|
||||
|
||||
await t
|
||||
.selectText(questionName)
|
||||
.pressKey("delete")
|
||||
.typeText(questionName, "Nimi")
|
||||
.click(questionTypeSelect)
|
||||
.click(questionTypeSelect.find("option").withExactText("name"))
|
||||
.click(requiredBox);
|
||||
|
||||
await t.click(newQuestionButton);
|
||||
question = lastQuestion();
|
||||
questionName = question.child("input");
|
||||
questionTypeSelect = question.child("select");
|
||||
requiredBox = question.child("label");
|
||||
|
||||
await t
|
||||
.selectText(questionName)
|
||||
.pressKey("delete")
|
||||
.typeText(questionName, "S-Posti")
|
||||
.click(questionTypeSelect)
|
||||
.click(questionTypeSelect.find("option").withExactText("email"))
|
||||
.click(requiredBox);
|
||||
|
||||
await t.click(newQuestionButton);
|
||||
question = lastQuestion();
|
||||
questionName = question.child("input");
|
||||
questionTypeSelect = question.child("select");
|
||||
const radioOptions = question.child("input").nth(-1);
|
||||
|
||||
await t
|
||||
.selectText(questionName)
|
||||
.pressKey("delete")
|
||||
.typeText(questionName, "Olen")
|
||||
.click(questionTypeSelect)
|
||||
.click(questionTypeSelect.find("option").withExactText("radiobutton"))
|
||||
.typeText(radioOptions, "Nuori,Vanha,Testaaja");
|
||||
|
||||
const submit = Selector("button[type=\"submit\"]");
|
||||
|
||||
await t.click(submit);
|
||||
|
||||
const statusMessage = Selector("[data-e2e=\"admin-form-status-message\"]");
|
||||
await t
|
||||
.hover(statusMessage)
|
||||
.expect(
|
||||
statusMessage.innerText
|
||||
).eql("Sign-up created successfully");
|
||||
})
|
||||
Reference in New Issue
Block a user