Skip to content

Eden Test

Using Eden, we can create an integration test with end-to-end type safety and auto-completion.

Using Eden Treaty to create tests by irvilerodrigues on Twitter

Setup

We can use Bun test to create tests.

Create test/index.test.ts in the root of project directory with the following:

typescript
// test/index.test.ts
import { describe, expect, it } from 'bun:test'

import { edenTreaty } from '@elysiajs/eden'

const app = new Elysia()
    .get('/', () => 'hi')
    .listen(3000)

const api = edenTreaty<typeof app>('http://localhost:3000')

describe('Elysia', () => {
    it('return a response', async () => {
        const { data } = await api.get()

        expect(data).toBe('hi')
    })
})

Then we can perform tests by running bun test

bash
bun test

This allows us to perform integration tests programmatically instead of manual fetch while supporting type checking automatically.

Contributors

The avatar of contributor named as Jake Hedman Jake Hedman
The avatar of contributor named as saltyaom saltyaom

Changelog