1
0
Fork 0
firefox/toolkit/components/uniffi-bindgen-gecko-js/fixtures/tests/xpcshell/test_sprites.js
Daniel Baumann 5e9a113729
Adding upstream version 140.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-25 09:37:52 +02:00

34 lines
1 KiB
JavaScript

/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
const Sprites = ChromeUtils.importESModule(
"resource://gre/modules/RustSprites.sys.mjs"
);
add_task(async function () {
Assert.ok(Sprites.Sprite);
const sempty = await Sprites.Sprite.init(null);
Assert.deepEqual(
await sempty.getPosition(),
new Sprites.Point({ x: 0, y: 0 })
);
const s = await Sprites.Sprite.init(new Sprites.Point({ x: 0, y: 1 }));
Assert.deepEqual(await s.getPosition(), new Sprites.Point({ x: 0, y: 1 }));
s.moveTo(new Sprites.Point({ x: 1, y: 2 }));
Assert.deepEqual(await s.getPosition(), new Sprites.Point({ x: 1, y: 2 }));
s.moveBy(new Sprites.Vector({ dx: -4, dy: 2 }));
Assert.deepEqual(await s.getPosition(), new Sprites.Point({ x: -3, y: 4 }));
const srel = await Sprites.Sprite.newRelativeTo(
new Sprites.Point({ x: 0, y: 1 }),
new Sprites.Vector({ dx: 1, dy: 1.5 })
);
Assert.deepEqual(
await srel.getPosition(),
new Sprites.Point({ x: 1, y: 2.5 })
);
});