Skip to content

- 42seoul cub3D 프로젝트의 맵 유효성 체크기능 tester

License

Notifications You must be signed in to change notification settings

humblEgo/cub3D_map_tester

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cub3D_map_tester

-test for the cub3D project at 42 school 42. (cursus42, june 2020)

안녕하세요~! 🖐 이 프로그램은 cub3D 프로그램이 cub3D 프로젝트맵 제약조건 요구사항을 잘 충족하는지 체크하는데 도움을 주기 위해 만들어졌습니다. 하단 설명을 참고하시어 코드작성 or 동료평가시 활용해보세요 🙂

cub3d_map_tester

🍉 개요

  • 이 프로그램은 invalid map 파일을 당신의 cub3D 프로그램에 전달합니다.
  • 오류가 있는지 확인하기 위해서는 Return 메세지를 직접 확인해주셔야 합니다.
    • 만약 예외처리가 잘 되어있다면, 당신이 의도한 방식대로 error 메세지를 출력할 거에요.
    • 만약 예외처리가 잘 되어있지 않다면, 아래 두가지 동작이 예상됩니다.
      1. segfault, sigabort 등등 예기치 않은 error 메세지가 출력되는 경우
      2. cub3D가 작동해버리는 경우
    • 만약 valgrind가 설치되어 있다면, leaks 디렉토리에 로그를 쌓을 수 있습니다. 옵션을 선택해보세요 :)
  • invalid map는 maps 디렉토리 안에 있습니다. 참고하여 예외처리 진행하시면 됩니다.

🍉 설치 및 실행

  1. Move to directory where your cub3D file exist
  2. Clone this repository
    git clone https://github.com/humblEgo/cub3D_map_tester.git
  3. Move to cub3D_map_tester directory
    cd cub3D_map_tester
  4. Execute test_map_valid_function.sh
    ./test_map_valid_function.sh

❗ 당신의 cub3D 프로그램이 libmlx.dylib을 활용한다면, libmlx.dylib가 tester가 위치한 directory에도 위치해있어야합니다. tester가 알아서 복사해줄테니 걱정마세요! :)

시작할 때 count down이 거슬릴 경우


-f 옵션을 넣어서 count down을 생략할 수 있습니다.

./test_map_valid_function.sh -f

실행시 directory tree (using minilibx_opengl)


결과적으로 test_map_valid_function.sh 의 상위 디렉토리에 cub3D 실행파일이 있으면 됩니다.

.
├── cub3D
├── _cub3D_map_tester
|   ├── test_map_valid_function.sh
|   ├── README.md
|   ├── _images
|   └── _maps
|   ├── ...
└── ...

실행시 directory tree (using minilibx_mms_20200219_beta)


`test_map_valid_function.sh`과 `libmlx.dylib`을 같은 디렉토리에 위치시킵니다. 또한 그 디렉토리의 상위 디렉토리에 cub3D 실행파일이 위치하면 됩니다.

.
├── cub3D
├── _cub3D_map_tester
|   ├── test_map_valid_function.sh
|   ├── libmlx.dylib
|   ├── README.md
|   ├── _images
|   └── _maps
|   ├── ...
└── ...

🍉 기타 테스트케이스

F 255, 255, 255로 주어지는 등 인자 사이에 공백이 있는 경우에는 제대로 작동하도록 처리해주세요!

🍉 참고사항

  1. 쉘스크립트로 테스트 자동화는 처음 시도해보는 것이라 더 학습하고 싶습니다. 쉘스크립트 개선에 관하여 PR이나 ISSUE 남겨주세요! 감사히 배우겠습니다🙏

  2. 맵 테스트케이스 추가를 원하신다면 역시 PR이나 ISSUE 남겨주시면 반영하겠습니다. 특히 과제 변경에 의한 이슈 있으면 적극 말씀 부탁드립니다🙏

  3. 서브젝트 자체도 완벽하지 않다보니 '어느 수준까지 예외처리해야하는지' 여부를 따로 판단해보시길 추천드립니다. 개인적으로는 동료평가시 디펜스가 가능한지 여부를 기준으로 결정하면 좋지않을까 싶어요 :)

  4. cub3D로 고통받고 계시다면, 아래 두 링크를 참고해주세요!

기타 문의할 사항이 있으시다면 Slack ID iwoo로 DM 날려주세요~ 혹시 이 테스터가 도움이 되셨다면 star 하나씩 눌러주시면 소소하게 기쁠 것 같습니다, 감사합니다~! :)

🍉 기여해주신 분

이 테스터를 만드는데 기여해주신 분들입니다. 기여해주셔서 감사합니다!! 👏👏

🇰🇷

🇫🇷

About

- 42seoul cub3D 프로젝트의 맵 유효성 체크기능 tester

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages