mirror of
https://github.com/konvajs/konva.git
synced 2025-10-08 00:14:23 +08:00
refactor tests
This commit is contained in:
166
test/manual/HSV-test.ts
Normal file
166
test/manual/HSV-test.ts
Normal file
@@ -0,0 +1,166 @@
|
||||
import { assert } from 'chai';
|
||||
|
||||
import { addStage, Konva, loadImage } from '../unit/utis';
|
||||
|
||||
describe('HSV', function () {
|
||||
// ======================================================
|
||||
it('hue shift tween transparancy', function (done) {
|
||||
var stage = addStage();
|
||||
|
||||
loadImage('darth-vader.jpg', (imageObj) => {
|
||||
var layer = new Konva.Layer();
|
||||
const darth = new Konva.Image({
|
||||
x: 10,
|
||||
y: 10,
|
||||
image: imageObj,
|
||||
draggable: true,
|
||||
});
|
||||
|
||||
layer.add(darth);
|
||||
stage.add(layer);
|
||||
|
||||
darth.cache();
|
||||
darth.filters([Konva.Filters.HSV]);
|
||||
darth.hue(360);
|
||||
layer.draw();
|
||||
|
||||
var tween = new Konva.Tween({
|
||||
node: darth,
|
||||
duration: 1.0,
|
||||
hue: 0,
|
||||
easing: Konva.Easings.EaseInOut,
|
||||
});
|
||||
|
||||
darth.on('mouseover', function () {
|
||||
tween.play();
|
||||
});
|
||||
|
||||
darth.on('mouseout', function () {
|
||||
tween.reverse();
|
||||
});
|
||||
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
// ======================================================
|
||||
it('saturate image', function (done) {
|
||||
var stage = addStage();
|
||||
|
||||
loadImage('darth-vader.jpg', (imageObj) => {
|
||||
var layer = new Konva.Layer();
|
||||
const darth = new Konva.Image({
|
||||
x: 10,
|
||||
y: 10,
|
||||
image: imageObj,
|
||||
draggable: true,
|
||||
});
|
||||
|
||||
layer.add(darth);
|
||||
stage.add(layer);
|
||||
|
||||
darth.cache();
|
||||
darth.filters([Konva.Filters.HSV]);
|
||||
|
||||
darth.saturation(1.0);
|
||||
layer.draw();
|
||||
|
||||
var tween = new Konva.Tween({
|
||||
node: darth,
|
||||
duration: 1.0,
|
||||
saturation: -1.0,
|
||||
easing: Konva.Easings.EaseInOut,
|
||||
});
|
||||
|
||||
darth.on('mouseover', function () {
|
||||
tween.play();
|
||||
});
|
||||
|
||||
darth.on('mouseout', function () {
|
||||
tween.reverse();
|
||||
});
|
||||
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
// ======================================================
|
||||
it('saturation tween transparancy', function (done) {
|
||||
var stage = addStage();
|
||||
|
||||
loadImage('darth-vader.jpg', (imageObj) => {
|
||||
var layer = new Konva.Layer();
|
||||
const darth = new Konva.Image({
|
||||
x: 10,
|
||||
y: 10,
|
||||
image: imageObj,
|
||||
draggable: true,
|
||||
});
|
||||
|
||||
layer.add(darth);
|
||||
stage.add(layer);
|
||||
|
||||
darth.cache();
|
||||
darth.filters([Konva.Filters.HSV]);
|
||||
darth.saturation(1.0);
|
||||
layer.draw();
|
||||
|
||||
var tween = new Konva.Tween({
|
||||
node: darth,
|
||||
duration: 1.0,
|
||||
saturation: -1,
|
||||
easing: Konva.Easings.EaseInOut,
|
||||
});
|
||||
|
||||
darth.on('mouseover', function () {
|
||||
tween.play();
|
||||
});
|
||||
|
||||
darth.on('mouseout', function () {
|
||||
tween.reverse();
|
||||
});
|
||||
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
// ======================================================
|
||||
it('value tween transparancy', function (done) {
|
||||
var stage = addStage();
|
||||
|
||||
loadImage('darth-vader.jpg', (imageObj) => {
|
||||
var layer = new Konva.Layer();
|
||||
const darth = new Konva.Image({
|
||||
x: 10,
|
||||
y: 10,
|
||||
image: imageObj,
|
||||
draggable: true,
|
||||
});
|
||||
|
||||
layer.add(darth);
|
||||
stage.add(layer);
|
||||
|
||||
darth.cache();
|
||||
darth.filters([Konva.Filters.HSV]);
|
||||
darth.value(1.0);
|
||||
layer.draw();
|
||||
|
||||
var tween = new Konva.Tween({
|
||||
node: darth,
|
||||
duration: 1.0,
|
||||
value: -1.0,
|
||||
easing: Konva.Easings.EaseInOut,
|
||||
});
|
||||
|
||||
darth.on('mouseover', function () {
|
||||
tween.play();
|
||||
});
|
||||
|
||||
darth.on('mouseout', function () {
|
||||
tween.reverse();
|
||||
});
|
||||
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
Reference in New Issue
Block a user