@applicaster/zapp-react-native-utils
Version:
Applicaster Zapp React Native utilities package
168 lines (161 loc) • 3.88 kB
JavaScript
import { fontKey } from "..";
describe("fontKey", () => {
it("generate fonts configuration", () => {
const output = [
{
initial_value: undefined,
key: "label_font_color",
label: "Label font color",
type: "color_picker_rgba",
},
{
initial_value: 24,
key: "label_font_size",
label: "Label font size",
type: "number_input",
},
{
initial_value: undefined,
key: "label_ios_font_family",
label: "Label font iOS",
type: "ios_font_selector",
},
{
initial_value: undefined,
key: "label_android_font_family",
label: "Label font Android",
type: "android_font_selector",
},
{
initial_value: undefined,
key: "label_line_height",
label: "Label line height",
type: "number_input",
},
{
initial_value: undefined,
key: "label_letter_spacing_ios",
label: "Label letter spacing iOS",
type: "number_input",
},
{
initial_value: undefined,
key: "label_letter_spacing_android",
label: "Label letter spacing android",
type: "number_input",
},
{
initial_value: undefined,
key: "label_text_transform",
label: "Label text transform",
options: [
{
text: "Default",
value: "default",
},
{
text: "Uppercase",
value: "uppercase",
},
{
text: "Lowercase",
value: "lowercase",
},
{
text: "Capitalize",
value: "capitalize",
},
],
type: "select",
},
];
const result = fontKey(
"Label",
{
fontSize: 24,
},
null
);
expect(result).toEqual(output);
});
it("generate fonts configuration", () => {
const output = [
{
initial_value: undefined,
key: "label_font_color",
label: "Label font color",
type: "color_picker_rgba",
},
{
initial_value: 24,
key: "label_font_size",
label: "Label font size",
type: "number_input",
},
{
initial_value: "SFProText-Heavy",
key: "label_ios_font_family",
label: "Label font iOS",
type: "ios_font_selector",
},
{
initial_value: "Roboto-Black",
key: "label_android_font_family",
label: "Label font Android",
type: "android_font_selector",
},
{
initial_value: undefined,
key: "label_line_height",
label: "Label line height",
type: "number_input",
},
{
initial_value: undefined,
key: "label_letter_spacing_ios",
label: "Label letter spacing iOS",
type: "number_input",
},
{
initial_value: undefined,
key: "label_letter_spacing_android",
label: "Label letter spacing android",
type: "number_input",
},
{
initial_value: undefined,
key: "label_text_transform",
label: "Label text transform",
options: [
{
text: "Default",
value: "default",
},
{
text: "Uppercase",
value: "uppercase",
},
{
text: "Lowercase",
value: "lowercase",
},
{
text: "Capitalize",
value: "capitalize",
},
],
type: "select",
},
];
const result = fontKey(
"Label",
{
fontFamilyiOS: "SFProText-Heavy",
fontFamilyAndroid: "Roboto-Black",
fontSize: 24,
},
null
);
expect(result).toEqual(output);
});
});