Tests, UX improvements.
This commit is contained in:
parent
4e6f5d36b8
commit
0ae18f495e
63 changed files with 1384 additions and 2330 deletions
|
|
@ -3,7 +3,7 @@ import { readFileSync } from 'node:fs'
|
|||
import { resolve } from 'node:path'
|
||||
|
||||
vi.mock('../../../server/models/member.js', () => ({
|
||||
default: { findByIdAndUpdate: vi.fn() }
|
||||
default: { findById: vi.fn(), findByIdAndUpdate: vi.fn() }
|
||||
}))
|
||||
|
||||
vi.mock('../../../server/utils/mongoose.js', () => ({
|
||||
|
|
@ -104,7 +104,7 @@ describe('admin role PATCH endpoint', () => {
|
|||
|
||||
describe('member not found', () => {
|
||||
it('returns 404 when member does not exist', async () => {
|
||||
Member.findByIdAndUpdate.mockResolvedValue(null)
|
||||
Member.findById.mockResolvedValue(null)
|
||||
|
||||
const event = createMockEvent({
|
||||
method: 'PATCH',
|
||||
|
|
@ -122,7 +122,9 @@ describe('admin role PATCH endpoint', () => {
|
|||
describe('successful role changes', () => {
|
||||
it('promotes a member to admin', async () => {
|
||||
validateBody.mockResolvedValue({ role: 'admin' })
|
||||
const existingMember = { _id: 'target-member-id', role: 'member', name: 'Test User' }
|
||||
const updatedMember = { _id: 'target-member-id', role: 'admin', name: 'Test User' }
|
||||
Member.findById.mockResolvedValue(existingMember)
|
||||
Member.findByIdAndUpdate.mockResolvedValue(updatedMember)
|
||||
|
||||
const event = createMockEvent({
|
||||
|
|
@ -143,7 +145,9 @@ describe('admin role PATCH endpoint', () => {
|
|||
|
||||
it('demotes a member to regular role', async () => {
|
||||
validateBody.mockResolvedValue({ role: 'member' })
|
||||
const existingMember = { _id: 'target-member-id', role: 'admin', name: 'Test User' }
|
||||
const updatedMember = { _id: 'target-member-id', role: 'member', name: 'Test User' }
|
||||
Member.findById.mockResolvedValue(existingMember)
|
||||
Member.findByIdAndUpdate.mockResolvedValue(updatedMember)
|
||||
|
||||
const event = createMockEvent({
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue