2011-10-10 3 views
11

인수 스왑 찾아 모두 교체 일식 사용 :나는 다음과 같이 약 100 라인이

assertEquals을 (results.get (0) .getID(), 1);

그들은 모두 assertEquals로 시작하고 두 개의 인수를 포함합니다. 나는이 모든 라인의 주장을 바꾸기 위해 모든 것을 찾고 바꾸는 방법을 찾고있다.

감사

답변

21

찾아 다음 정규 표현식을 사용

assertEquals\((.*),(.*)\); 

이 대체 값 :

assertEquals(\2,\1); 

정규 표현식은 "assertEquals 수단 (다음 문자의 제 1 그룹의 다음을 쉼표 다음에 숯의 두 번째 그룹이 뒤따라 오는); ".

대체 값은 을 의미합니다. "assertEquals (두 번째 문자 그룹이 이어지고 쉼표 뒤에 첫 번째 문자 그룹이 따라옵니다);".

+0

이것은 거의 비슷하지만 'assertEquals ("a", methodCall (a, b));'를 처리하지 않습니다. 그것은 assertEquals (methodCall (a, b), "a") 대신에 "assertEquals (b),", methodCall (a) – pards

0

나는 이클립스에서 작업을 수행하는 방법을 모른다, 그러나 당신이 일어날 경우도있을 수있는 vim 당신이 당신의 파일을로드하고 자신의 매개 변수 순서를 교환 찾을 경우

:%s/\(assertEquals(\)\(.*\),\(.*\))/\1\3,\2)/ 
0

을 할 수있는 설치 메소드 선언은 종종 하나의 클릭으로 당신을 위해 플러그인을 찾았다.

이 플러그인은 이클립스 자바 편집기이 도구 모음 단추를 추가

:

Swap backward 
Swap forward 

enter image description here

에있는 caret으로 | 입력 :

void process(int age, String |name, boolean member) {...} 

스왑 앞으로 버튼 수율 클릭 :

void process(int age, boolean member, String |name) {...} 

또는 원본 소스 수율 스왑 뒤로 버튼 클릭 :

void process(String |name, int age, boolean member) {...} 

Here is the article discussing it.

Here is the jar to drop into your eclipse plugin directory.

0

Eclipse의 내장 메소드 서명 리팩토링을 사용하여 인수를 재정렬 할 수도 있습니다.

JUnit에서 TestNG로 변환하는 경우 (예상대로), org.testng.Assert를 프로젝트에 복사하고 assertXYZ 메소드를 리팩토링하여 예상/실제 인수를 조 변경 할 수 있습니다.

끝나면 org.testng 사본을 삭제하십시오.Assert

관련 문제