Home / File/ form-data-to-object.test.js — astro Source File

form-data-to-object.test.js — astro Source File

Architecture documentation for form-data-to-object.test.js, a javascript file in the astro codebase. 4 imports, 0 dependents.

Entity Profile

Dependency Diagram

graph LR
  b2ea2ae3_f0da_3518_8e25_9dffe7aa13ea["form-data-to-object.test.js"]
  e6a2dc9f_6948_1e06_e648_bf517c8e5501["../../../dist/actions/runtime/server.js"]
  b2ea2ae3_f0da_3518_8e25_9dffe7aa13ea --> e6a2dc9f_6948_1e06_e648_bf517c8e5501
  e1e2fac7_5a95_7a88_cb1e_0a3b91c4e607["strict"]
  b2ea2ae3_f0da_3518_8e25_9dffe7aa13ea --> e1e2fac7_5a95_7a88_cb1e_0a3b91c4e607
  6b0635f9_51ea_77aa_767b_7857878e98a6["node:test"]
  b2ea2ae3_f0da_3518_8e25_9dffe7aa13ea --> 6b0635f9_51ea_77aa_767b_7857878e98a6
  f8c9251e_f535_6281_2118_9e79a4155212["v4"]
  b2ea2ae3_f0da_3518_8e25_9dffe7aa13ea --> f8c9251e_f535_6281_2118_9e79a4155212
  style b2ea2ae3_f0da_3518_8e25_9dffe7aa13ea fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import * as assert from 'node:assert/strict';
import { describe, it } from 'node:test';
import * as z from 'zod/v4';
import { formDataToObject } from '../../../dist/actions/runtime/server.js';

describe('formDataToObject', () => {
	it('should handle strings', () => {
		const formData = new FormData();
		formData.set('name', 'Ben');
		formData.set('email', 'test@test.test');

		const input = z.object({
			name: z.string(),
			email: z.string(),
		});

		const res = formDataToObject(formData, input);
		assert.equal(res.name, 'Ben');
		assert.equal(res.email, 'test@test.test');
	});

	it('should handle numbers', () => {
		const formData = new FormData();
		formData.set('age', '25');

		const input = z.object({
			age: z.number(),
		});

		const res = formDataToObject(formData, input);
		assert.equal(res.age, 25);
	});

	it('should pass NaN for invalid numbers', () => {
		const formData = new FormData();
		formData.set('age', 'twenty-five');

		const input = z.object({
			age: z.number(),
		});

		const res = formDataToObject(formData, input);
		assert.ok(isNaN(res.age));
	});

	it('should handle boolean checks', () => {
		const formData = new FormData();
		formData.set('isCool', 'yes');
		formData.set('isTrue', true);
		formData.set('isFalse', false);
		formData.set('falseString', 'false');

		const input = z.object({
			isCool: z.boolean(),
			isNotCool: z.boolean(),
			isTrue: z.boolean(),
			isFalse: z.boolean(),
			falseString: z.boolean(),
		});

// ... (154 more lines)

Dependencies

  • ../../../dist/actions/runtime/server.js
  • node:test
  • strict
  • v4

Frequently Asked Questions

What does form-data-to-object.test.js do?
form-data-to-object.test.js is a source file in the astro codebase, written in javascript. It belongs to the IntegrationAdapters domain.
What does form-data-to-object.test.js depend on?
form-data-to-object.test.js imports 4 module(s): ../../../dist/actions/runtime/server.js, node:test, strict, v4.
Where is form-data-to-object.test.js in the architecture?
form-data-to-object.test.js is located at packages/astro/test/units/actions/form-data-to-object.test.js (domain: IntegrationAdapters, directory: packages/astro/test/units/actions).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free