discourse/app/assets/javascripts/wizard/test/models/wizard-field-test.js.es6

35 lines
850 B
Plaintext
Raw Normal View History

2018-06-15 23:03:24 +08:00
import WizardField from "wizard/models/wizard-field";
2016-08-26 01:14:56 +08:00
2016-11-26 03:29:24 +08:00
moduleFor("model:wizard-field");
2016-08-26 01:14:56 +08:00
2018-06-15 23:03:24 +08:00
test("basic state", assert => {
const w = WizardField.create({ type: "text" });
assert.ok(w.get("unchecked"));
assert.ok(!w.get("valid"));
assert.ok(!w.get("invalid"));
2016-08-26 01:14:56 +08:00
});
2018-06-15 23:03:24 +08:00
test("text - required - validation", assert => {
const w = WizardField.create({ type: "text", required: true });
assert.ok(w.get("unchecked"));
2016-08-26 01:14:56 +08:00
w.check();
2018-06-15 23:03:24 +08:00
assert.ok(!w.get("unchecked"));
assert.ok(!w.get("valid"));
assert.ok(w.get("invalid"));
2016-08-26 01:14:56 +08:00
2018-06-15 23:03:24 +08:00
w.set("value", "a value");
2016-08-26 01:14:56 +08:00
w.check();
2018-06-15 23:03:24 +08:00
assert.ok(!w.get("unchecked"));
assert.ok(w.get("valid"));
assert.ok(!w.get("invalid"));
2016-08-26 01:14:56 +08:00
});
2018-06-15 23:03:24 +08:00
test("text - optional - validation", assert => {
const f = WizardField.create({ type: "text" });
assert.ok(f.get("unchecked"));
2016-08-26 01:14:56 +08:00
f.check();
2018-06-15 23:03:24 +08:00
assert.ok(f.get("valid"));
2016-08-26 01:14:56 +08:00
});