Skip to main content
Module

std/json/_test_common.ts

The Deno Standard Library
Latest
File
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.import { assertEquals, assertRejects } from "../assert/mod.ts";import type { ConcatenatedJsonParseStream } from "./concatenated_json_parse_stream.ts";import type { JsonParseStream } from "./json_parse_stream.ts";import type { ParseStreamOptions } from "./common.ts";
export async function assertValidParse( transform: typeof ConcatenatedJsonParseStream | typeof JsonParseStream, chunks: string[], expect: unknown[], options?: ParseStreamOptions,) { const r = ReadableStream.from(chunks) .pipeThrough(new transform(options)); const res = await Array.fromAsync(r); assertEquals(res, expect);}
export async function assertInvalidParse( transform: typeof ConcatenatedJsonParseStream | typeof JsonParseStream, chunks: string[], options: ParseStreamOptions, // deno-lint-ignore no-explicit-any ErrorClass: new (...args: any[]) => Error, msgIncludes: string | undefined,) { const r = ReadableStream.from(chunks) .pipeThrough(new transform(options)); await assertRejects( async () => await Array.fromAsync(r), ErrorClass, msgIncludes, );}