slvtest.gms : 솔버 조합 테스트

설명

이 프로그램은 크레이지 슬롯에 있는 모든 모델의 반환 및 상태 코드를 테스트합니다.
사용 가능한 솔버의 모든 조합이 포함된 모델 라이브러리. 이
많은 수의 파일을 생성하고 약 20Mb의 디스크 공간을 사용할 수 있습니다.
따라서 별도의 디렉터리에서 실행되어야 합니다. 반품 및
상태 코드는 '추적 파일'에 수집되어 추가로 수집될 수 있습니다.
크레이지 슬롯의 gtrace 옵션인 'A=GT'를 이용하여 분석하였다. 추가로 이 프로그램
솔버가 stdout 및 stderr에 쓰는지 테스트합니다.

소형 모델 유형 :크레이지 슬롯


카테고리 : 크레이지 슬롯 모델 라이브러리


메인 파일 : slvtest.gms   포함: gamsmod.inc slvdata.inc gamsref.inc

$title은 사용 가능한 솔버의 모든 조합으로 모델 추적을 만듭니다(SLVTEST,SEQ=216)

$onText
이 프로그램은 크레이지 슬롯에 있는 모든 모델의 반환 및 상태 코드를 테스트합니다.
사용 가능한 솔버의 모든 조합이 포함된 모델 라이브러리. 이
많은 수의 파일을 생성하고 약 20Mb의 디스크 공간을 사용할 수 있습니다.
따라서 별도의 디렉터리에서 실행되어야 합니다. 반품 및
상태 코드는 '추적 파일'에 수집되어 추가로 수집될 수 있습니다.
크레이지 슬롯의 gtrace 옵션인 'A=GT'를 이용하여 분석하였다. 추가로 이 프로그램
솔버가 stdout 및 stderr에 쓰는지 여부를 테스트합니다.

크레이지 슬롯 Development Corporation, 모델링 도구 상자.

기본적으로 라이브러리의 모든 모델이 실행됩니다.
U1 또는 USER1 명령줄을 사용하여 이를 재정의할 수 있습니다.
매개변수. 예를 들어

 > 크레이지 슬롯 slvtest는 모든 모델을 실행합니다.

 > 크레이지 슬롯 slvtest u1=small은 작은 모델만 실행합니다.

 > 크레이지 슬롯 slvtest u1=big은 대형 모델만 실행합니다.

 > 크레이지 슬롯 slvtest u1="ord(s) < 5"는 처음 5개 모델을 실행합니다.

 > 크레이지 슬롯 slvtest u1=초기 Q&A 테스트와 함께 slvtest 실행

 > 크레이지 슬롯 slvtest u1=lic는 전체 Q&A 테스트와 함께 slvtest를 실행합니다(라이센스 필요).

이 모델은 다음과 같은 모델에 대해 건너뛰기 목록을 사용합니다.
   - 건너뛸 자격이 있습니다(exsmd 설정).
   - 수정을 기다립니다(exsmw 설정).
   - 분류 대기(exsmc 설정)

"생략할 만한 모델"을 제외한 모든 모델을 실행하려면
목록에서 사용자는 --runall=yes 옵션을 사용하여 실행할 수 있습니다.

 > 게임 slvtest --runall=yes

키워드: 크레이지 슬롯 언어 기능, 크레이지 슬롯 모델 라이브러리
$offText

$eolCom //
$onDollar

$set setup slvdata.inc // 새로운 소스를 생성하는 크레이지 슬롯 프로그램
$set setupout slvdata.lst // 설정을 위한 목록 파일
$setdriveout slvdrve.lst //드라이브 목록 파일
$set Drivelog slvdrve.log // 드라이브 로그 파일
$set Tracerep slvtest.rep // Gtrace 보고서 파일
$set Trace slvtest.txt // 추적 파일(추가 예정)
$set Tracelog slvtesttrace.log // 추적 로그 파일
$set 드라이브 slvtest.inc // 설정에 의해 생성된 새로운 게임 소스

*logoption은 모든 후속 크레이지 슬롯 호출에 대해 2로 설정됩니다.
$set 감슬로 2

$set tl 6
$%크레이지 슬롯tl%==0이 아닌 경우 $set tl %크레이지 슬롯tl%

$if %runall%==yes $set runall --runall=yes
$if %runall%==no $set runall --runall=no
$runall을 설정하지 않은 경우 $set runall --runall=no

$if set PREFIX $set PREFIX --PREFIX=%PREFIX%
$prefix가 설정되지 않은 경우 $set PREFIX --PREFIX=%system.buildcode%

$설정되지 않은 경우 Weaktl $set Weaktl 3
$setweaktlforward --weaktl=%weaktl%

$if 세트 c1 $set c1 --c1=%c1%
$설정되지 않은 경우 c1 $set c1
$if 세트 c2 $set c2 --c2=%c2%
$설정되지 않은 경우 c2 $set c2
$if 세트 c3 $set c3 --c3=%c3%
$설정되지 않은 경우 c3 $set c3
$if 세트 c4 $set c4 --c4=%c4%
$설정되지 않은 경우 c4 $set c4
$if 세트 c5 $set c5 --c5=%c5%
$설정되지 않은 경우 c5 $set c5

$if 설정 실패 $ 설정 실패 --fail=%fail%
$설정되지 않은 경우 실패 $ 설정 실패 --fail=failures_slv.gms

$if set keepfail $ set keepfail --keepfail=1
$ keepfail을 설정하지 않은 경우 $ keepfail 설정 --keepfail=0

$if not '%크레이지 슬롯u1%' == '' $call 크레이지 슬롯 %setup% u1="%크레이지 슬롯u1%" o=%setupout% lo=%gamslo% thread=%크레이지 슬롯threads% %runall% %PREFIX% tl=%tl% %weaktlforward% %c1% %c2% %c3% %c4% %c5% %fail% %keepfail%
$if '%크레이지 슬롯u1%' == '' $call 크레이지 슬롯 %setup% o=%setupout% lo=%gamslo% 스레드=%크레이지 슬롯threads% %runall% %PREFIX% tl=%tl% %weaktlforward% %c1% %c2% %c3% %c4% %c5% %fail% %keepfail%

$ifE errorLevel<>0 $echo "컴파일 오류 RC= (%setup% 실패)" > %tracerep%0
$ifE errorLevel<>0 $echo "컴파일 오류 RC= (%setup% 실패)" > %tracerep%1
$ifE errorLevel<>0 $abort "%setup%의 컴파일 오류"

$call 크레이지 슬롯 %drive% o=%driveout% lo=%gamslo% lf=%drivelog%

* 삭제되지 않았을 수 있습니다
$if dexist slv_optionfiles $call rm -rf slv_optionfiles

* 보고서 생성0
$call 크레이지 슬롯 %trace%0 a=gt ps=0 pw=255 o=%tracerep%0 tl=%tl% lo=%gamslo% lf=%tracelog%0
$존재하는 경우 slvtest.sum $call 'mv -f slvtest.sum slvtest.sum0'

* 보고서1 생성
$존재하는 경우 %trace%1 $call 크레이지 슬롯 %trace%1 a=gt ps=0 pw=255 o=%tracerep%1 tl=%weaktl% lo=%gamslo% lf=%tracelog%1
$존재하는 경우 slvtest.sum $call 'mv -f slvtest.sum slvtest.sum1'