mirror of
https://github.com/denoland/deno.git
synced 2024-12-22 07:14:47 -05:00
5c17bb4287
`SafeMap` treats its argument as an object with a "length" and index properties, rather than a generic iterator, so every time we cloned it, it was dropping all the data.
26 lines
680 B
TypeScript
26 lines
680 B
TypeScript
import { assertEquals } from "@std/assert";
|
|
|
|
const { ContextManager } = Deno.telemetry;
|
|
|
|
const cm = new ContextManager();
|
|
|
|
const a = cm.active();
|
|
const b = a.setValue("b", 1);
|
|
const c = b.setValue("c", 2);
|
|
|
|
const subB = c.deleteValue("b");
|
|
const subC = subB.deleteValue("c");
|
|
|
|
assertEquals(a.getValue("b"), undefined);
|
|
assertEquals(b.getValue("b"), 1);
|
|
assertEquals(c.getValue("b"), 1);
|
|
|
|
assertEquals(a.getValue("c"), undefined);
|
|
assertEquals(b.getValue("c"), undefined);
|
|
assertEquals(c.getValue("c"), 2);
|
|
|
|
assertEquals(subB.getValue("b"), undefined);
|
|
assertEquals(subB.getValue("c"), 2);
|
|
|
|
assertEquals(subC.getValue("b"), undefined);
|
|
assertEquals(subC.getValue("c"), undefined);
|