L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Productivité · SKILL.md

todo-dev

todo-dev

TODO CLI(todo/cli.py)에 명령을 추가하거나 버그를 고치고 테스트를 작성하는 방법. todo 앱 코드 수정·기능 추가·테스트 작성·리팩터링 작업에 사용한다. 수정, 보완, 다시 구현 요청에도 사용한다.

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: todo-dev description: TODO CLI(todo/cli.py)에 명령을 추가하거나 버그를 고치고 테스트를 작성하는 방법. todo 앱 코드 수정·기능 추가·테스트 작성·리팩터링 작업에 사용한다. 수정, 보완, 다시 구현 요청에도 사용한다.

TODO CLI 개발 방법

구조

  • todo/cli.py: load/save(JSON 파일, 경로는 TODO_DB 환경변수, 기본 todo.json), 명령 함수, main(argv).
  • tests/test_cli.py: pytest 테스트. 현재는 자리표시자뿐이다.

절차

  1. 변경 전 python -m pytest로 현재 상태를 확인한다.
  2. 새 명령은 함수로 분리하고 main에 분기를 추가한다. 기존 명령의 출력 형식은 사용자 스크립트가 의존할 수 있으니 유지한다.
  3. 테스트는 tmp_path와 monkeypatch.setenv("TODO_DB", ...)로 격리한다. DB는 import 시점에 읽히므로 cli.DB를 monkeypatch하는 편이 확실하다.
  4. 입력 오류(인자 없음, 범위 밖 번호, 숫자 아님)는 트레이스백 대신 안내 메시지와 0이 아닌 종료 코드로 처리한다. 현재 코드는 이를 처리하지 않으므로, 건드리는 명령에서 함께 보강한다.
  5. 끝나면 python -m pytest를 다시 실행하고 결과를 보고서에 적는다.

이유: 이 코드는 매우 얇아서 회귀를 잡아 줄 것이 테스트뿐이다. 그래서 변경마다 테스트를 같이 둔다.

Skills enregistrées