Spaces:
Running
Running
File size: 2,484 Bytes
b456468 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 | import { fabric } from 'fabric';
import Graphics from '@/graphics';
import Resize from '@/component/resize';
describe('Resize', () => {
let graphics, resize, mockImage;
beforeAll(() => {
graphics = new Graphics(document.createElement('canvas'));
resize = new Resize(graphics);
});
beforeEach(() => {
mockImage = new fabric.Image(null, { width: 100, height: 100 });
graphics.setCanvasImage('mockImage', mockImage);
});
it('should return current image dimensions', () => {
let currentDimensions = resize.getCurrentDimensions();
expect(currentDimensions).toEqual({ width: 100, height: 100 });
const newDimensions = { width: 20, height: 20 };
resize.resize(newDimensions);
currentDimensions = resize.getCurrentDimensions();
expect(newDimensions).toEqual(currentDimensions);
});
it('should return original image dimensions after resizing', () => {
const originalDimensionsBeforeResizing = resize.getOriginalDimensions();
const newDimensions = { width: 20, height: 20 };
resize.resize(newDimensions);
const originalDimensionsAfterResizing = resize.getOriginalDimensions();
expect(originalDimensionsBeforeResizing).toEqual(originalDimensionsAfterResizing);
});
it('should set original dimensions', () => {
const newDimensions = { width: 20, height: 20 };
resize.setOriginalDimensions(newDimensions);
const originalDimensions = resize.getOriginalDimensions();
expect(newDimensions).toEqual(originalDimensions);
});
it('should resize image', () => {
const originalDimensions = resize.getOriginalDimensions();
const newDimensions = { width: 20, height: 20 };
resize.resize(newDimensions);
let currentDimensions = resize.getCurrentDimensions();
expect(newDimensions).toEqual(currentDimensions);
resize.resize(originalDimensions);
currentDimensions = resize.getCurrentDimensions();
expect(originalDimensions).toEqual(currentDimensions);
});
it('should set original dimensions when drawing mode is started', () => {
resize.setOriginalDimensions(null);
resize.start();
expect(resize.getOriginalDimensions()).not.toBeNull();
});
it('should have end method', () => {
expect(typeof resize.end === 'function').toBe(true);
});
it('should return promise', async () => {
const newDimensions = { width: 20, height: 20 };
const obj = await resize.resize(newDimensions);
expect(obj).toBeUndefined();
});
});
|