mirror of
https://github.com/pewdiepie-archdaemon/odysseus.git
synced 2026-09-13 03:32:21 +02:00
27 lines
1.0 KiB
Python
27 lines
1.0 KiB
Python
"""Ensure per-document raster gradient controls do not leak between projects."""
|
|
|
|
from pathlib import Path
|
|
|
|
|
|
ROOT = Path(__file__).resolve().parents[1]
|
|
|
|
|
|
def test_gradient_stops_reset_when_editor_opens_and_closes():
|
|
source = (ROOT / "static/js/galleryEditor.js").read_text()
|
|
open_reset = source.index("state.gradientActive = false;", source.index("export function openEditor"))
|
|
close_reset = source.index("state.gradientActive = false;", source.index("export function closeEditor"))
|
|
|
|
assert "state.gradientStops = [];" in source[open_reset:open_reset + 120]
|
|
assert "state.gradientStops = [];" in source[close_reset:close_reset + 120]
|
|
|
|
|
|
def test_gradient_history_is_deferred_until_a_real_drag():
|
|
source = (ROOT / "static/js/editor/tools/gradient.js").read_text()
|
|
|
|
begin = source.index("begin(e) {")
|
|
drag = source.index("drag(e) {")
|
|
end = source.index("end(e) {")
|
|
assert "saveState('Gradient');" not in source[begin:drag]
|
|
assert "if (!historySaved)" in source[end:end + 420]
|
|
assert "historySaved = false;" in source[begin:drag]
|