jenesius-vue-form
Version:
Heavy form system for Vue.js
74 lines (66 loc) • 1.4 kB
text/typescript
import Form from "../../../src/classes/Form";
import useFormValues from "../../../src/hooks/use-form-values";
describe("Use Form Values", () => {
test("By default is empty", () => {
const form = new Form();
const values = useFormValues(form);
expect(values).toEqual({})
})
test("After change is should be updated", () => {
const form = new Form();
const values = useFormValues(form);
expect(values).toEqual({})
form.change({
name: "Jenesius"
})
expect(values).toEqual({
name: "Jenesius"
})
})
test("After setValues is should be updated", () => {
const form = new Form();
const values = useFormValues(form);
expect(values).toEqual({})
form.change({
age: 24
})
expect(values).toEqual({
age: 24
})
})
test("After multi setValues is should be updated", () => {
const form = new Form();
const values = useFormValues(form);
expect(values).toEqual({})
form.change({
age: 24
})
expect(values).toEqual({
age: 24
})
form.change({
name: "Jack"
})
expect(values).toEqual({
age: 24,
name: "Jack"
})
form.change({
height: 176
})
expect(values).toEqual({
age: 24,
name: "Jack",
height: 176,
})
form.change({
gender: "M"
})
expect(values).toEqual({
age: 24,
name: "Jack",
height: 176,
gender: "M"
})
})
})