Port flaky animations/stability tests to WPT crashtests

Some reformatting of the tests since a crashtest does not require
test harness and completes once onload is handled.

Bug: 329062252
Change-Id: I08183b6872706f3b821ccf5af0e863a2df225a1f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5372912
Reviewed-by: Mustaq Ahmed <mustaq@chromium.org>
Commit-Queue: Kevin Ellis <kevers@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1276342}
diff --git a/css/css-animations/crashtests/cancel-update.html b/css/css-animations/crashtests/cancel-update.html
new file mode 100644
index 0000000..1cb0946
--- /dev/null
+++ b/css/css-animations/crashtests/cancel-update.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<link rel="help" href="https://crbug.com/564354">
+<link rel="help" href="https://issues.chromium.org/issues/40447203">
+<title>Check that cancelling one running animation and updating another doesn't
+crash.</title>
+<style>
+  @keyframes anim {
+    from { background-color: blue; }
+    to { background-color: red; }
+  }
+
+  @keyframes anim2 {
+    from { opacity: 0; }
+    to { opacity: 1; }
+  }
+</style>
+<div id="target"></div>
+<script>
+  window.onload = () => {
+    target.style.animation = "anim 1s, anim2 1s";
+    target.offsetTop;
+    target.style.animation = "anim2 2s";
+    target.offsetTop;
+  };
+</script>
diff --git a/css/css-animations/crashtests/pseudo-element-animation-with-marker.html b/css/css-animations/crashtests/pseudo-element-animation-with-marker.html
new file mode 100644
index 0000000..ba7fc23
--- /dev/null
+++ b/css/css-animations/crashtests/pseudo-element-animation-with-marker.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<link rel="help" href="https://crbug.com/360457">
+<link rel="help" href="https://issues.chromium.org/issues/41099655">
+<title>Test if it doesn't crash when pseudo element has animation with marker</title>
+<style>
+@keyframes test { 0% { marker: url("crash"); } }
+body:before { animation-name: test; }
+</style>
+<doby>
+</doby>
+<script>
+  window.onload = () => {
+    document.getAnimations();
+  }
+</script>
diff --git a/css/css-transitions/crashtests/delete-image-set.html b/css/css-transitions/crashtests/delete-image-set.html
new file mode 100644
index 0000000..b6ba763
--- /dev/null
+++ b/css/css-transitions/crashtests/delete-image-set.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<link rel="help" href="https://crbug.com/363567">
+<link rel="help" href="https://issues.chromium.org/issues/40360947">
+<style>
+  div { background: url(#); }
+  div { background: -webkit-image-set(url(#) 1x); }
+  div { background: image-set(url(#) 1x); }
+</style>
+<body>
+  <div style="transition: 1s">This test passes if it does not crash.</div>
+</body>
+<script>
+window.onload = () => {
+  document.styleSheets[0].deleteRule(2);
+  document.styleSheets[0].deleteRule(1);
+};
+</script>