diff --git a/packages/core/__tests__/lib/core-check.test.ts b/packages/core/__tests__/lib/core-check.test.ts
index ba97f3f..2b583bb 100644
--- a/packages/core/__tests__/lib/core-check.test.ts
+++ b/packages/core/__tests__/lib/core-check.test.ts
@@ -19,7 +19,6 @@ describe("@idraw/core static check", () => {
angle: 0
})).toStrictEqual(false);
-
expect(Core.check.attrs({
x: 0,
y: 100,
@@ -29,4 +28,107 @@ describe("@idraw/core static check", () => {
})).toStrictEqual(false);
});
+
+ test('Core.check.rectDesc', () => {
+
+ expect(Core.check.rectDesc({
+ color: '#ffffff',
+ })).toStrictEqual(true);
+
+ expect(Core.check.rectDesc({
+ color: 123,
+ })).toStrictEqual(false);
+
+ expect(Core.check.rectDesc({
+ borderRadius: 12,
+ borderWidth: 10,
+ borderColor: '#123abf',
+ color: '#ffffff',
+ })).toStrictEqual(true);
+
+ expect(Core.check.rectDesc({
+ borderRadius: 12,
+ borderWidth: 10,
+ borderColor: '#123af',
+ })).toStrictEqual(false);
+
+ });
+
+
+ test('Core.check.imageDesc', () => {
+
+ expect(Core.check.imageDesc({
+ src: 'https://xxxxxx',
+ })).toStrictEqual(true);
+
+ expect(Core.check.imageDesc({
+ src: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOg',
+ })).toStrictEqual(true);
+
+ expect(Core.check.imageDesc({
+ src: '/xx/xxx/xxx',
+ })).toStrictEqual(true);
+
+ expect(Core.check.imageDesc({
+ src: './xx/xxx/xxx',
+ })).toStrictEqual(true);
+
+ expect(Core.check.imageDesc({
+ src: 'abcdefg',
+ })).toStrictEqual(false);
+
+ expect(Core.check.imageDesc({
+ src: 1234,
+ })).toStrictEqual(false);
+
+ expect(Core.check.imageDesc({})).toStrictEqual(false);
+ });
+
+ test('Core.check.svgDesc', () => {
+ expect(Core.check.svgDesc({
+ svg: `
+
+ `,
+ })).toStrictEqual(true);
+
+ expect(Core.check.svgDesc({
+ svg: `
+