mirror of
https://github.com/idrawjs/idraw
synced 2026-05-24 10:08:34 +00:00
test: update testing of board
This commit is contained in:
parent
70860fa58b
commit
e049ff6648
4 changed files with 104 additions and 49 deletions
|
|
@ -1,48 +0,0 @@
|
|||
// // TODO
|
||||
|
||||
// import Board from '../src';
|
||||
// import { getData } from './data';
|
||||
|
||||
// const opts = {
|
||||
// width: 600,
|
||||
// height: 400,
|
||||
// contextWidth: 600,
|
||||
// contextHeight: 400,
|
||||
// devicePixelRatio: 4
|
||||
// }
|
||||
|
||||
// test('@idraw/board: event.on("scale")', async () => {
|
||||
// document.body.innerHTML = `
|
||||
// <div id="mount"></div>
|
||||
// `;
|
||||
// const mount = document.querySelector('#mount') as HTMLDivElement;
|
||||
// const board = new Board(mount, opts);
|
||||
|
||||
// const data = await execBoard(board, opts);
|
||||
// const salceNum = 2
|
||||
// expect(data).toBe(salceNum);
|
||||
// });
|
||||
|
||||
|
||||
// function execBoard(board: Board, opts: any): Promise<any> {
|
||||
// return new Promise((resolve) => {
|
||||
// const data = getData();
|
||||
// const ctx = board.getContext();
|
||||
// board.clear();
|
||||
// ctx.clearRect(0, 0, opts.width, opts.height);
|
||||
// ctx.setFillStyle('#ffffff');
|
||||
// ctx.fillRect(0, 0, opts.width, opts.height);
|
||||
// data.elements.forEach(ele => {
|
||||
// ctx.setFillStyle(ele.desc.color);
|
||||
// ctx.fillRect(ele.x, ele.y, ele.w, ele.h);
|
||||
// });
|
||||
|
||||
// // board.on('scale', (scaleNum) => {
|
||||
// // resolve(scaleNum);
|
||||
// // })
|
||||
// board.scale(2);
|
||||
// board.scrollX(-600);
|
||||
// board.scrollY(-400);
|
||||
// board.draw();
|
||||
// })
|
||||
// }
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
|
||||
exports[`@idraw/board: src/lib/style getStyle 1`] = `
|
||||
Object {
|
||||
"height": "20px",
|
||||
"margin-top": "123px",
|
||||
"overflow": "auto",
|
||||
"width": "12px",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`@idraw/board: src/lib/style setDomTransform 1`] = `
|
||||
<div
|
||||
style="transform: matrix(1, 2, -1, 1, 80, 90);"
|
||||
/>
|
||||
`;
|
||||
|
||||
exports[`@idraw/board: src/lib/style setStyle 1`] = `
|
||||
<div
|
||||
style="width:12px;height:20px;overflow:auto;margin-top:123px;"
|
||||
/>
|
||||
`;
|
||||
81
packages/board/__tests__/lib/style.test.ts
Normal file
81
packages/board/__tests__/lib/style.test.ts
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
import {
|
||||
mergeCSS2StyleAttr, setStyle, getStyle, getDomTransform,
|
||||
setDomTransform,
|
||||
} from './../../src/lib/style';
|
||||
|
||||
|
||||
describe('@idraw/board: src/lib/style', () => {
|
||||
test('mergeCSS2StyleAttr', () => {
|
||||
const str = mergeCSS2StyleAttr({
|
||||
'width': '12px',
|
||||
'height': '20px',
|
||||
'overflow': 'auto',
|
||||
'margin-top': '123px',
|
||||
});
|
||||
expect(str).toStrictEqual('width:12px; height:20px; overflow:auto; margin-top:123px;');
|
||||
});
|
||||
|
||||
test('setStyle', () => {
|
||||
const div = document.createElement('div');
|
||||
setStyle(div, {
|
||||
'width': '12px',
|
||||
'height': '20px',
|
||||
'overflow': 'auto',
|
||||
'margin-top': '123px',
|
||||
});
|
||||
expect(div).toMatchSnapshot();
|
||||
});
|
||||
|
||||
test('getStyle', () => {
|
||||
const div = document.createElement('div');
|
||||
setStyle(div, {
|
||||
'width': '12px',
|
||||
'height': '20px',
|
||||
'overflow': 'auto',
|
||||
'margin-top': '123px',
|
||||
});
|
||||
expect(getStyle(div)).toMatchSnapshot({
|
||||
'width': '12px',
|
||||
'height': '20px',
|
||||
'overflow': 'auto',
|
||||
'margin-top': '123px',
|
||||
});
|
||||
});
|
||||
|
||||
test('setDomTransform', () => {
|
||||
// transform: matrix( scaleX(), skewY(), skewX(), scaleY(), translateX(), translateY() )
|
||||
// matrix(1, 2, -1, 1, 80, 80)
|
||||
const div = document.createElement('div');
|
||||
setDomTransform(div, {
|
||||
scaleX: 1,
|
||||
skewY: 2,
|
||||
skewX: -1,
|
||||
scaleY: 1,
|
||||
translateX: 80,
|
||||
translateY: 90,
|
||||
});
|
||||
expect(div).toMatchSnapshot();
|
||||
})
|
||||
|
||||
test('getDomTransform', () => {
|
||||
// transform: matrix( scaleX(), skewY(), skewX(), scaleY(), translateX(), translateY() )
|
||||
// matrix(1, 2, -1, 1, 80, 80)
|
||||
const div = document.createElement('div');
|
||||
setDomTransform(div, {
|
||||
scaleX: 1,
|
||||
skewY: 2,
|
||||
skewX: -1,
|
||||
scaleY: 1,
|
||||
translateX: 80,
|
||||
translateY: 90,
|
||||
});
|
||||
expect(getDomTransform(div)).toStrictEqual({
|
||||
scaleX: 1,
|
||||
skewY: 2,
|
||||
skewX: -1,
|
||||
scaleY: 1,
|
||||
translateX: 80,
|
||||
translateY: 90,
|
||||
});
|
||||
})
|
||||
})
|
||||
|
|
@ -13,7 +13,7 @@ export const mergeCSS2StyleAttr = function(
|
|||
cssList.push(`${cssKey}:${cssVal}`);
|
||||
}
|
||||
}
|
||||
const styleAttr = cssList.join('; ');
|
||||
const styleAttr = cssList.join('; ') + ';';
|
||||
return styleAttr;
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue