Node SDK: add unit tests for the change password and delete user commands

Abierto Apto para principiantes
#4,796 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
82/100
Tipo de issue
Nueva funcionalidad
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
typescript
Área
testing

Línea de trabajo

Lee foreign/node/src/wire/user/create-user.command.test.ts y los dos serializadores del Node SDK. Añade los archivos de prueba con nombre para change-password y delete-user, y construye los buffers esperados de forma independiente. Ejecuta npm run test:unit y npm run lint desde foreign/node; el trabajo estará terminado cuando pasen los casos de bytes solicitados.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

good first issue javascript test
Description

CHANGE_PASSWORD.serialize and DELETE_USER.serialize in the Node SDK have no unit tests. client.socket.test.ts calls them through a mock server but does not check the bytes. CHANGE_PASSWORD writes the user identifier, then each password as a one byte length and the bytes, and throws when either password is under 1 or over 255 bytes (counted in bytes, not characters). DELETE_USER writes only the identifier.

Affected area / component

Node SDK

Proposed solution

Add foreign/node/src/wire/user/change-password.command.test.ts and delete-user.command.test.ts, following create-user.command.test.ts, including its UTF-8 case for the 255 byte limit.

  • Change password: the exact bytes for a numeric user id, an empty current password, an empty new password, a 255 byte password accepted, a 256 byte password refused, and a multi-byte password that is under 255 characters but over 255 bytes.
  • Delete user: the exact bytes for a numeric and a string identifier.
  • Build the expected buffers by hand, so the test does not call the code it checks.

How to test: npm run test:unit and npm run lint pass in foreign/node.

Good first issue
  • I think this could be a good first issue for a new contributor
Lenguaje dominante
Rust
Estrellas
5.2k
Forks
516
Merge medio
2 d 12 h
PR fusionados (30 d)
145

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de apache/iggy

Todos los issues de apache/iggy

Issues similares

Más issues de Rust

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.