@kintone/dts-gen
Version:
Types for kintone js api and Types generating tools
208 lines • 6.1 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const fileldtype_converter_1 = require("./fileldtype-converter");
const objectvalues_1 = require("../utils/objectvalues");
describe("FileFieldTypeConverter", () => {
const input = {
userSelect: {
type: "USER_SELECT",
code: "userSelect",
},
userSelect2: {
type: "USER_SELECT",
code: "userSelect2",
},
singleLineText: {
type: "SINGLE_LINE_TEXT",
code: "singleLineText",
},
multiLineText: {
type: "MULTI_LINE_TEXT",
code: "multiLineText",
},
richText: {
type: "RICH_TEXT",
code: "richText",
},
date: {
type: "DATE",
code: "date",
},
time: {
type: "TIME",
code: "time",
},
recordNumber: {
type: "RECORD_NUMBER",
code: "recordNumber",
},
createdTime: {
type: "CREATED_TIME",
code: "createdTime",
},
updatedTime: {
type: "UPDATED_TIME",
code: "updatedTime",
},
dropDown: {
type: "DROP_DOWN",
code: "dropDown",
},
link: {
type: "LINK",
code: "link",
},
number: {
type: "NUMBER",
code: "number",
},
file: {
type: "FILE",
code: "file",
},
checkbox: {
type: "CHECK_BOX",
code: "checkbox",
},
multiSelect: {
type: "MULTI_SELECT",
code: "multiSelect",
},
creator: {
type: "CREATOR",
code: "creator",
},
modifier: {
type: "MODIFIER",
code: "modifier",
},
// Lookup field and Related App record should be excluded
relatedApp: {
type: "FILE",
code: "relatedApp",
relatedApp: "12",
},
lookupApp: {
type: "CHECK_BOX",
code: "lookupApp",
relatedApp: "13",
},
};
test("selectFieldsTypesEquals returns lists of values which is selected if fieldType is same", () => {
const type = fileldtype_converter_1.VisibleForTesting.constants.FILE_TYPE;
const output = fileldtype_converter_1.VisibleForTesting.selectFieldsTypesEquals(type, (0, objectvalues_1.objectValues)(input));
const expected = [
{
type: "FILE",
code: "file",
},
];
expect(output).toEqual(expected);
});
test("selectFieldsTypesIn returns list of values which is selected if fieldType was contained in condition.", () => {
const types = fileldtype_converter_1.VisibleForTesting.constants.STRING_LIST_TYPES;
const output = fileldtype_converter_1.VisibleForTesting.selectFieldsTypesIn(types, (0, objectvalues_1.objectValues)(input));
const expected = [
{
code: "checkbox",
type: "CHECK_BOX",
},
{
code: "multiSelect",
type: "MULTI_SELECT",
},
];
expect(output).toEqual(expected);
});
test("convertSubTableFields", () => {
const subTables = [
{
type: "SUBTABLE",
code: "subTable",
fields: input,
},
];
const output = fileldtype_converter_1.VisibleForTesting.convertSubTableFields(subTables);
const expectedSimpleFields = [
{
code: "singleLineText",
type: "SINGLE_LINE_TEXT",
},
{
code: "multiLineText",
type: "MULTI_LINE_TEXT",
},
{
code: "richText",
type: "RICH_TEXT",
},
{
code: "date",
type: "DATE",
},
{
code: "time",
type: "TIME",
},
{
code: "dropDown",
type: "DROP_DOWN",
},
{
code: "link",
type: "LINK",
},
{
code: "number",
type: "NUMBER",
},
];
expect(output[0].fields.stringFields).toEqual(expectedSimpleFields);
const expectedFieldFields = [
{
code: "file",
type: "FILE",
},
];
expect(output[0].fields.fileTypeFields).toEqual(expectedFieldFields);
const expectedStringListFields = [
{
code: "checkbox",
type: "CHECK_BOX",
},
{
code: "multiSelect",
type: "MULTI_SELECT",
},
];
expect(output[0].fields.stringListFields).toEqual(expectedStringListFields);
const expectedUserFields = [
{
code: "creator",
type: "CREATOR",
},
{
code: "modifier",
type: "MODIFIER",
},
];
expect(output[0].fields.userFieldsInSavedRecord).toEqual(expectedUserFields);
const expectedSimpleValueInSavedRecord = [
{
code: "recordNumber",
type: "RECORD_NUMBER",
},
{
code: "createdTime",
type: "CREATED_TIME",
},
{
code: "updatedTime",
type: "UPDATED_TIME",
},
];
expect(output[0].fields.stringFieldsInSavedRecord).toEqual(expectedSimpleValueInSavedRecord);
expect(output[0].fields.subTableFields).toEqual([]);
});
});
//# sourceMappingURL=fieldtype-converters.test.js.map