# 가장 기본이 되는 라이브러리 추가
# transcodeSuccessfully() 메소드는 TranscodingService가 성공적으로 동작하는 상황을 테스트 하기 위해 만들었으며, 성공적으로 작업이 진행될 때 수행해야 할 작업을 주석으로 입력해 놓았다. 이 주석을 구현으로 바꿔치기 해 나가면서 TranscodingService를 점진적으로 완성해 나갈 것이다.
# 미디어 원본 파일을 로컬에 복사해주는 부분을 copyMultimediaSourceToLocal() 메서드가 처리하도록 하고, 이 메서드는 다시 mediaSourceCopier라는 객체의 copy()메서드에 위임하도록 코드를 작성
# 미디어 원본 파일을 로컬에 복사해주는 협업객체 생성
# TranscodingServiceTest의 mediaSourceCopier 필드에 객체를 할당하기 위해 Mock 객체로 대체
- 우선 TranscodingService구현을 만드는데 집중하기 위함.
# mock을 활용해 mediaSourceCopier.copy 메소드가 호출되면 mockMultimediaFile을 반환하도록하고, 최종적으로 mediaSourceCopier.copy() 메소드가 호출했는지 검증한다.
# mediaSourceCopier.copy()와 동일하게 로컬에 복사된 파일을 변환처리할 경우 transcoder 객체에게 모든 기능을 위임 처리하며, 아직은 transcodingService구현에 집중해야 되므로 Mock객체를 사용한다.
# Transcoder 협업 객체 생성
# ThumbnailExtractor 협업 객체 생성
# mediaSourceCopier, Transcoder와 동일하게 로컬에 복사된 파일로 부터 이미지를 추출하는 것은 ThumbnailExtractor 협업객체에 위임한다.
# 변환된 결과 파일과 썸네일 이미지를 목적지에 저장시킬 협업 객체 생성
# createdFileSender.send()메소드를 통해 변환된 결과 파일과 썸네일 이미지를 목적지에 저장
# 결과를 통지하기 위한 협업 객체 추가
# 결과를 통지하기 위한 협업 객체 추가
# 헉!! 검증시 mock객체를 했었어야 했는데....확실히 이해하고 소스 작성할 것
# transcode() 메소드 추출
- 추후 TranscodingService 이관을 위해
# 기존에 TranscodingServiceTest에 위치한 transcode()를 TranscodingService로 이동
- setUp()을 통해 TranscodingService 객체를 생성
# TranscodingService객체를 생성하고 transcode()를 통해 테스트틀 성공시킨다.
# package 이동
# 기존 TranscodingService에서 TranscodingServiceImpl로 변경