improve test

aaa
Dominic Gannaway 8 months ago
parent 8517eef6e7
commit e102ec06fa

@ -19,7 +19,8 @@ import {
increment_write_version,
set_active_effect,
component_context,
handle_error
handle_error,
get
} from '../runtime.js';
import { equals, safe_equals } from './equality.js';
import * as e from '../errors.js';
@ -100,9 +101,11 @@ export function async_derived(fn) {
var current_deps = new Set(async_deps);
var derived_promise = derived(fn);
block(async () => {
var effect = /** @type {Effect} */ (active_effect);
var current = (promise = fn());
var current = (promise = get(derived_promise));
var restore = capture();
var unsuspend = suspend();

@ -4,12 +4,12 @@
let value = $derived((await promise) * num);
$effect(() => {
console.log('should run');
console.log(`$effect ${value} ${num}`);
});
$effect(() => {
console.log(value, num);
$effect.pre(() => {
console.log(`$effect.pre ${value} ${num}`);
});
</script>
<p>{value}</p>
<p>{value}{console.log(`template ${value} ${num}`)}</p>

@ -51,6 +51,19 @@ export default test({
await tick();
assert.htmlEqual(target.innerHTML, '<p>86</p>');
assert.deepEqual(logs, ['should run', 42, 1, 42, 2, 84, 2, 86, 2]);
assert.deepEqual(logs, [
'$effect.pre 42 1',
'template 42 1',
'$effect 42 1',
'$effect.pre 42 2',
'template 42 2',
'$effect 42 2',
'$effect.pre 84 2',
'template 84 2',
'$effect 84 2',
'$effect.pre 86 2',
'template 86 2',
'$effect 86 2'
]);
}
});

Loading…
Cancel
Save