파일 전송 관련 내용을 담당자분에게 전달드렸지만

굳이 메일을 보낼 필요 없다는 의견이었고

이사님께서는 내용 공유를 해야 한다는 의견이셨기 때문에 그냥 내가 보내기로 했다.

 

평소에는 5글자씩 랜덤 값으로 들어오던 내용이

버전 업데이트 이후 6글자씩 들어오게 변경되어서 충돌이 났던 부분으로

해당 부분은 이미 수정처리되었다는 내용 공유와

추후 업데이트 시 변경 내역에 대해 안내달라는 내용으로 메일을 작성했다.

 

form에 다운로드 링크 생성 로직추가를 진행했는데

일단 Postman으로 발송할 틀까지는 빠르게 생성할 수 있었지만

연결 관계를 개발/운영에 동시에 추가해주고 페이지 레이아웃도 정리해줘야 했고

해당 인터페이스 추가를 위해 wrapper추가라던지 새로운 개체 생성 로직을 넣어줘야 했기 때문에 생각보다는 손이 많이 갔다.

 

중간에 팀원분이 메일 발송에 대해서 문제를 겪고 계셔서 도와드리고 싶었는데

전송 능력(deliverity?)에서 설정하는 부분이나

site에 들어간 다음 해당 프로필에서 시스템 권한으로 메일 발송 권한 부여를 추천드렸는데

그 부분을 전달드리고서도 해결되었다는 이야기가 없는 것을 보면 다른 문제였던 것 같다.

 

Form 인터페이스 Link 관련 작업을 모두 마치고 정의서를 작성해서 전달했는데

그 이후에 회원가입 시 SFDC에 저장된 계정(회사명)들을 전달해서

선택한 값의 회원 정보로 연락처를 만드는 인터페이스를 추가해야 했지만

이쪽 협력사가 또 다른 방식으로 바꾸면 일을 두번해야 하기 때문에

기존 인터페이스 테스트클래스를 먼저 작성하기로 했다.

 

첫번째 테스트클래스에서부터 문제가 발생했는데

RestResponse res = RestContext.response 형태로 일반 인터페이스를 했을 때

테스트클래스에서 response를 따로 설정해 주지 않을 경우 res 자체가 null로 설정되어 버리기 때문에

res.responseBody 같은 형태로 접근할 경우 테스트클래스의 품질과 관련없이

‘System.NullPointerException: Attempt to de-reference a null object’에러가 발생했다.

 

테스트 클래스 작성 시 response를 사용할 경우 아래와 같이 할당해주고 시작해야 한다.

RestContext.response = new RestResponse();

@isTest
private class XX_Interface_test{
    @isTest
    static void itShould(){
        RestRequest req         = new RestRequest(); 
        RestContext.response    = new RestResponse();
        req.requestUri          = '/services/apexrest/XX_Interface';
        req.requestBody = Blob.valueof(
            '{' +
            '   "FieldA": "Email",' +
            '   "FieldB": "I",' +
            '   "FieldC": "2024-01-01",' +
            '   "FieldD": "ABC",' +
            '}'
        );
        
        req.addHeader('httpMethod', 'POST');
        RestContext.request     = req; 

        Test.startTest();

        XX_Interface.doPost();
    
        Test.stopTest();
    }
}

 

다른 테스트클래스들을 작성하던 도중 시간이 늦어서 퇴근하기로 했다.

 

 

(1).백준 29163번 Счастье Мистера Бина는 짝수가 더 많을 경우에만 행복한 사람의 감정을 출력해야 하는 문제로

짝수일 경우 count를 더하고 홀수인 경우 감소시키는 방법으로 진행한 다음

최종적으로 삼항연산자를 통해 Happy, Sad 중 하나를 출력하게 했다.

const input = `3
1 2 1`.split('\n')[1].split(' ').map(Number)

let count = 0

for(let i = 0 ; i < input.length ; i++){
    if(input[i]%2){
        count--
    }
    else{
        count++
    }
}

console.log(count > 0 ? 'Happy' : 'Sad')

'회고' 카테고리의 다른 글

[개발일지] - 473  (0) 2024.10.18
[개발일지] - 472  (0) 2024.10.17
[개발일지] - 470  (5) 2024.10.15
[개발일지] - 469  (0) 2024.10.14
[개발일지] - 468(주말)  (0) 2024.10.13

+ Recent posts