import { expect, test } from 'bun:test';
import { render, fireEvent } from '@testing-library/preact';
import { Pb } from '../context.ts';
import { pb } from '../preload.ts';
import SignUp from './SignUp.tsx';
test('has a link to log in', () => {
const { getAllByText, getByLabelText, getByText } = render(
);
expect(getAllByText(/log in/i)).not.toHaveLength(0);
});
test('can sign up', () => {
const username = 'foo';
const email = 'foo@example.com';
const password = '12345678';
const { getByText, getByLabelText } = render(
);
fireEvent.change(getByLabelText(/username/i), {target: {value: username}});
fireEvent.change(getByLabelText(/email/i), {target: {value: email}});
fireEvent.change(getByLabelText(/password/i), {target: {value: password}});
fireEvent.change(getByLabelText(/confirm password/i), {target: {value: password}});
fireEvent.click(getByText(/continue/i));
expect(pb.authStore.isValid()).toBeTrue();
});