UNPKG

@t7/utils

Version:

Utility methods for T7 components.

72 lines (65 loc) 3.18 kB
"use strict"; var _ = require("./"); // Dependencies. // Describe test. describe('parseFormData', function () { // ============ // Dummy names. // ============ var CHECKBOX_1_NAME = 'CHECKBOX_1_NAME'; var INPUT_1_NAME = 'INPUT_1_NAME'; var INPUT_2_NAME = 'INPUT_2_NAME'; var RADIO_1_NAME = 'RADIO_1_NAME'; var SELECT_1_NAME = 'SELECT_1_NAME'; var TEXT_AREA_1_NAME = 'TEXT_AREA_1_NAME'; var TEXT_DIV_1_NAME = 'TEXT_DIV_1_NAME'; var TEXT_DIV_2_NAME = 'TEXT_DIV_2_NAME'; // ============= // Dummy values. // ============= var CHECKBOX_1_VALUE = 'CHECKBOX_1_VALUE'; var INPUT_1_VALUE = 'INPUT_1_VALUE'; var INPUT_2_VALUE = 'INPUT_2_VALUE'; var RADIO_1_VALUE = 'RADIO_1_VALUE'; var SELECT_1_VALUE = 'SELECT_1_VALUE'; var TEXT_AREA_1_VALUE = 'TEXT_AREA_1_VALUE'; var TEXT_DIV_1_VALUE = 'TEXT_DIV_1_VALUE'; var TEST_DIV_2_PLACEHOLDER = 'TEST_DIV_2_PLACEHOLDER'; // =========== // Dummy HTML. // =========== document.body.innerHTML = "\n <form>\n\n <input\n name=\"".concat(INPUT_1_NAME, "\"\n value=\"").concat(INPUT_1_VALUE, "\"\n type=\"text\"\n />\n\n <input\n name=\"").concat(INPUT_2_NAME, "\"\n value=\"").concat(INPUT_2_VALUE, "\"\n disabled=\"disabled\"\n type=\"text\"\n />\n\n <input\n name=\"").concat(CHECKBOX_1_NAME, "\"\n value=\"").concat(CHECKBOX_1_VALUE, "\"\n type=\"checkbox\"\n checked=\"checked\"\n />\n\n <input\n name=\"").concat(RADIO_1_NAME, "\"\n value=\"").concat(RADIO_1_VALUE, "\"\n type=\"radio\"\n checked=\"checked\"\n />\n\n <select\n name=\"").concat(SELECT_1_NAME, "\"\n >\n <option\n value=\"").concat(SELECT_1_VALUE, "\"\n selected=\"selected\"\n ></option>\n </select>\n\n <textarea\n name=\"").concat(TEXT_AREA_1_NAME, "\"\n >").concat(TEXT_AREA_1_VALUE, "</textarea>\n\n <div\n name=\"").concat(TEXT_DIV_1_NAME, "\"\n contenteditable=\"true\"\n >").concat(TEXT_DIV_1_VALUE, "</div>\n\n <div\n name=\"").concat(TEXT_DIV_2_NAME, "\"\n placeholder=\"").concat(TEST_DIV_2_PLACEHOLDER, "\"\n contenteditable=\"true\"\n >").concat(TEST_DIV_2_PLACEHOLDER, "</div>\n\n </form>\n "); // ================ // Expected result. // ================ var DATA_RESULT = [{ name: INPUT_1_NAME, value: INPUT_1_VALUE }, { name: CHECKBOX_1_NAME, value: CHECKBOX_1_VALUE, checked: true }, { name: RADIO_1_NAME, value: RADIO_1_VALUE, checked: true }, { name: SELECT_1_NAME, value: SELECT_1_VALUE }, { name: TEXT_AREA_1_NAME, value: TEXT_AREA_1_VALUE }, { name: TEXT_DIV_1_NAME, value: TEXT_DIV_1_VALUE }, { name: TEXT_DIV_2_NAME, value: '' }]; // ============ // Get content. // ============ var form = document.querySelector('form'); // ===================== // Test for data output. // ===================== it('handles data output', function () { var data = (0, _.parseFormData)(form); expect(data).toEqual(DATA_RESULT); }); });