설명
색인, 값 및 인덱스의 기능을 확인하기 위한 몇 가지 매우 기본적인 테스트 useHeader와 함께 값 옵션을 사용합니다. 기고자 Jan-Erik Justkowiak, 2018년 3월 옵션 인덱스
소형 모델 유형 :무료 슬롯
카테고리 : 무료 슬롯 테스트 라이브러리
메인 파일 : csv2gdx6.gms
$title CSVRead - 값 및 인덱스 옵션 테스트(CSV2GDX6,SEQ=751)
$onText
인덱스, 값 및 인덱스의 기능을 확인하는 몇 가지 매우 기본적인 테스트입니다.
useHeader와 함께 값 옵션을 사용합니다.
기고자 Jan-Erik Justkowiak, 2018년 3월
$offText
* 옵션 인덱스
$onEcho > data1.무료 슬롯
에
비
ㄷ
$offEcho
$onEcho > testInd1.gms
$로그
$log 1. 단일 인덱스 열 하나만 읽기
$call gamstool csvread data1.무료 슬롯 id=d 인덱스=1 gdxout=data1.gdx 추적=0
$ifE errorLevel<>0 $abort 오류: CSVRead가 성공했어야 합니다!
$로그
Dim1 / a, b, c / 설정;
별칭(d,dim1);
$gdxOut 임시.gdx
$unLoad 희미한1d
$gdx아웃
$offEcho
$call gams testInd1.gms lo=%GAMS.lo%
$ifE errorLevel<>0 $abort testInd1에 문제가 발생했습니다!
$call gdxdiff data1.gdx temp.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort testInd1 실행 후 데이터가 올바르지 않습니다!
*------------------------------------------------------------------
$onEcho > testInd2.gms
$로그
$log 2. useHeader=Y를 사용하여 단일 인덱스 열 하나만 읽기
$call gamstool csvread data1.무료 슬롯 id=d index=1 useHeader=Y gdxout=data1.gdx 추적=0
$ifE errorLevel<>0 $abort 오류: CSVRead가 성공했어야 합니다!
$log
Dim1 / b, c / 설정;
별칭(d,dim1);
$gdxOut 임시.gdx
$unLoad 희미한1d
$gdx아웃
$offEcho
$call gams testInd2.gms lo=%GAMS.lo%
$ifE errorLevel<>0 $abort testInd2에 문제가 발생했습니다!
$call gdxdiff data1.gdx temp.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort testInd2 실행 후 데이터가 올바르지 않습니다!
*------------------------------------------------------------------
$onEcho > data2.무료 슬롯
a,b,1,e,3,h
b,c,2,f,4,i
c,d,3,g,5,j
$offEcho
$onEcho > testInd3.gms
$log
$log 3. lastCol을 사용하여 여러 특정 인덱스 열 읽기
$call gamstool csvread data2.무료 슬롯 id=d 인덱스=1,2,3,lastCol gdxout=data2.gdx 추적=0
$ifE errorLevel<>0 $abort 오류: CSVRead가 성공했어야 합니다!
$log
희미한1 / a, b, c /, 희미한2 / b, c, d /, 희미한3 / 1, 2, 3 /, 희미한4 / h, i, j / 설정;
d / a.b.1.h, b.c.2.i, c.d.3.j / 설정;
$gdxOut 임시.gdx
$unLoaddim1dim2dim3dim4d
$gdx아웃
$offEcho
$call gams testInd3.gms lo=%GAMS.lo%
$ifE errorLevel<>0 $abort testInd3에 문제가 발생했습니다!
$call gdxdiff data2.gdx temp.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort testInd3 실행 후 데이터가 올바르지 않습니다!
*------------------------------------------------------------------
$onEcho > testInd4.gms
$로그
$log 4. useHeader=Y를 사용하여 여러 특정 인덱스 열 읽기
$call gamstool csvread data2.무료 슬롯 id=d 인덱스=1,2,3,lastCol useHeader=Y 추적=0 gdxout=data2.gdx
$ifE errorLevel<>0 $abort 오류: CSVRead가 성공했어야 합니다!
$log
희미한1 / b, c /, 희미한2 / c, d /, 희미한3 / 2, 3 /, 희미한4 / i, j / 설정;
d / b.c.2.i, c.d.3.j / 설정;
$gdxOut 임시.gdx
$unLoaddim1dim2dim3dim4d
$gdx아웃
$offEcho
$call gams testInd4.gms lo=%GAMS.lo%
$ifE errorLevel<>0 $abort testInd4에 문제가 발생했습니다!
$call gdxdiff data2.gdx temp.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort testInd4 실행 후 데이터가 올바르지 않습니다!
*------------------------------------------------------------------
* 옵션값
$onEcho > data3.무료 슬롯
a,b,c,d
1,2,3,4
$offEcho
$onEcho > testVal5.gms
$log
$log 5. 인덱스 없이 useHeader=Y를 사용하여 값 옵션 테스트
$call gamstool csvread data3.무료 슬롯 id=d useHeader=Y 값=3 추적=0 gdxout=data3.gdx
$ifE errorLevel<>0 $abort 오류: CSVRead가 성공했어야 합니다!
$log
매개변수 d / 3 /;
$gdxOut 임시.gdx
$언로드 d
$gdx아웃
$offEcho
$call gams testVal5.gms lo=%GAMS.lo%
$ifE errorLevel<>0 $abort testVal5에 문제가 발생했습니다!
$call gdxdiff data3.gdx temp.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort testVal5 실행 후 데이터가 올바르지 않습니다!
*------------------------------------------------------------------
$onEcho > data4.무료 슬롯
1,2,3,4
$offEcho
$onEcho > testVal6.gms
$log
$log 6. 인덱스 없이 useHeader=N을 사용하여 값 옵션 테스트
$call gamstool csvread data4.무료 슬롯 id=d useHeader=N 값=3 gdxout=data4.gdx 추적=0
$ifE errorLevel<>0 $abort 오류: CSVRead가 성공했어야 합니다!
$로그
매개변수 d / 3 /;
$gdxOut 임시.gdx
$언로드 d
$gdx아웃
$offEcho
$call 게임 testVal6.gms lo=%GAMS.lo%
$ifE errorLevel<>0 $abort testVal6에 문제가 발생했습니다!
$call gdxdiff data4.gdx temp.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort testVal6 실행 후 데이터가 올바르지 않습니다!
*------------------------------------------------------------------
$onEcho > testVal7.gms
$log
$log 7. lastCol을 사용하여 값 옵션 테스트
$call gamstool csvread data4.무료 슬롯 id=d useHeader=N 값=lastCol gdxout=data4.gdx 추적=0
$ifE errorLevel<>0 $abort 오류: CSVRead가 성공했어야 합니다!
$log
매개변수 d / 4 /;
$gdxOut 임시.gdx
$언로드 d
$gdx아웃
$offEcho
$call gams testVal7.gms lo=%GAMS.lo%
$ifE errorLevel<>0 $abort testVal7에 문제가 발생했습니다!
$call gdxdiff data4.gdx temp.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort testVal7 실행 후 데이터가 올바르지 않습니다!
*------------------------------------------------------------------
$onEcho > testVal8.gms
$로그
$log 8. useHeader=N 및 index를 사용하여 값 옵션 테스트
$call gamstool csvread data2.무료 슬롯 id=d useHeader=N 인덱스=1,2 값=5 gdxout=data2.gdx 추적=0
$ifE errorLevel<>0 $abort 오류: CSVRead가 성공했어야 합니다!
$로그
희미한1 / a, b, c /, 희미한2 / b, c, d /를 설정하십시오.
매개변수 d / a.b 3, b.c 4, c.d 5 /;
$gdxOut 임시.gdx
$unLoaddim1dim2d
$gdx아웃
$offEcho
$call 게임 testVal8.gms lo=%GAMS.lo%
$ifE errorLevel<>0 $abort testVal8에 문제가 발생했습니다!
$call gdxdiff data2.gdx temp.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort testVal8 실행 후 데이터가 올바르지 않습니다!
*------------------------------------------------------------------
$onEcho > testVal9.gms
$log
$log 9. useHeader=Y 및 index를 사용하여 값 옵션 테스트
$call gamstool csvread data2.무료 슬롯 id=d useHeader=Y 인덱스=1,2 값=5 추적=0 gdxout=data2.gdx
$ifE errorLevel<>0 $abort 오류: CSVRead가 성공했어야 합니다!
$로그
희미한1 / b, c /, 희미한2 / c, d /를 설정하십시오.
매개변수 d / b.c 4, c.d 5 /;
$gdxOut 임시.gdx
$unLoaddim1dim2d
$gdx아웃
$offEcho
$call gams testVal9.gms lo=%GAMS.lo%
$ifE errorLevel<>0 $abort testVal9에 문제가 발생했습니다!
$call gdxdiff data2.gdx temp.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort testVal9 실행 후 데이터가 올바르지 않습니다!
*------------------------------------------------------------------
* 옵션 값
$onEcho > testVal10.gms
$log
$log 10. 인덱스 없이 useHeader=Y를 사용하여 값 옵션 테스트
$call gamstool csvread data3.무료 슬롯 id=d useHeader=Y 값=2..4 추적=0 gdxout=data3.gdx
$ifE errorLevel<>0 $abort 오류: CSVRead가 성공했어야 합니다!
$로그
Dim1 / b, c, d / 설정;
매개변수 d / b 2, c 3, d 4 /;
$gdxOut 임시.gdx
$unLoad 희미한1d
$gdx아웃
$offEcho
$call gams testVal10.gms lo=%GAMS.lo%
$ifE errorLevel<>0 $abort testVal10에 문제가 발생했습니다!
$call gdxdiff temp.gdx data3.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort testVal10 실행 후 데이터가 올바르지 않습니다!
*------------------------------------------------------------------
$onEcho > testVal11.gms
$로그
$log 11. lastCol과 함께 값 옵션 테스트
$call gamstool csvread data3.무료 슬롯 id=d useHeader=Y 값=2..lastCol 추적=0 gdxout=data3.gdx
$ifE errorLevel<>0 $abort 오류: CSVRead가 성공했어야 합니다!
$log
Dim1 / b, c, d / 설정;
매개변수 d / b 2, c 3, d 4 /;
$gdxOut 임시.gdx
$unLoad 희미한1d
$gdx아웃
$offEcho
$call gams testVal11.gms lo=%GAMS.lo%
$ifE errorLevel<>0 $abort testVal11에 문제가 발생했습니다!
$call gdxdiff temp.gdx data3.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort testVal11 실행 후 데이터가 올바르지 않습니다!
*------------------------------------------------------------------
$onEcho > testVal12.gms
$로그
$log 12. useHeader=N 및 index를 사용하여 값 옵션 테스트
$call gamstool csvread data2.무료 슬롯 id=d useHeader=N 인덱스=1,2,lastCol 값=3 gdxout=data2.gdx 추적=0
$ifE errorLevel<>0 $abort 오류: CSVRead가 성공했어야 합니다!
$log
희미한1 / a, b, c /, 희미한2 / b, c, d /, 희미한3 / h, i, j / 설정;
매개변수 d / a.b.h 1, b.c.i 2, c.d.j 3 /;
$gdxOut 임시.gdx
$unLoaddim1dim2dim3d
$gdx아웃
$offEcho
$call 게임 testVal12.gms lo=%GAMS.lo%
$ifE errorLevel<>0 $abort testVal12에 문제가 발생했습니다!
$call gdxdiff temp.gdx data2.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort testVal12 실행 후 데이터가 올바르지 않습니다!
*------------------------------------------------------------------
$onEcho > data5.무료 슬롯
I,II,III,IV,V,VI
a,b,1,e,3,h
b,c,2,f,4,i
c,d,3,g,5,j
$offEcho
$onEcho > testVal13.gms
$log
$log 13. useHeader=Y 및 index를 사용하여 값 옵션 테스트
$call gamstool csvread data5.무료 슬롯 id=d useHeader=Y 인덱스=1,2,lastCol 값=3,5 gdxout=data5.gdx 추적=0
$ifE errorLevel<>0 $abort 오류: CSVRead가 성공했어야 합니다!
$log
희미한1 / a, b, c /, 희미한2 / b, c, d /, 희미한3 / h, i, j /, 희미한4 / III, V / 설정;
매개 변수 d / a.b.h.III 1, a.b.h.V 3, b.c.i.III 2, b.c.i.V 4, c.d.j.III 3, c.d.j.V 5 /;
$gdxOut 임시.gdx
$unLoaddim1dim2dim3dim4d
$gdx아웃
$offEcho
$call gams testVal13.gms lo=%GAMS.lo%
$ifE errorLevel<>0 $abort testVal13에 문제가 발생했습니다!
$call gdxdiff temp.gdx data5.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort testVal13 실행 후 데이터가 올바르지 않습니다!
*------------------------------------------------------------------
* 성공해야 합니다!
$onEcho > testVal14.gms
$log
$log 14. 인덱스 및 값 열이 겹치는 동작 테스트
$call gamstool csvread data5.무료 슬롯 id=d useHeader=Y 인덱스=2,3,5 값=3,5 추적=0 gdxout=data5.gdx
$ifE errorLevel<>0 $abort 오류: CSVRead가 성공했어야 합니다!
$log
희미한1 / b, c, d /, 희미한2 / 1, 2, 3 /, 희미한3 / 3, 4, 5 /, 희미한4 / III, V / 설정;
매개변수 d/b.1.3.III 1, b.1.3.V 3, c.2.4.III 2, c.2.4.V 4, d.3.5.III 3, d.3.5.V 5 /;
$gdxOut 임시.gdx
$unLoaddim1dim2dim3dim4d
$gdx아웃
$offEcho
$call 게임 testVal14.gms lo=%GAMS.lo%
$ifE errorLevel<>0 $abort testVal14에 문제가 발생했습니다!
$call gdxdiff temp.gdx data5.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort testVal14 실행 후 데이터가 올바르지 않습니다!
*------------------------------------------------------------------
* 실패해야 해!
$log
$log 15. 인덱스 옵션에서 중복 열 테스트
$call gamstool csvread data5.무료 슬롯 id=d useHeader=Y 인덱스=1,2,2 추적=0 gdxout=data5.gdx > %system.NullFile% 2>&1
$ifE errorLevel=0 $abort 오류: CSVRead가 실패했어야 합니다!
$log 예상 오류: 매개변수 인덱스 오류: 열 번호가 중복되었습니다!
$로그
*------------------------------------------------------------------
* 실패해야 해!
$로그
$log 16. 값 옵션에서 중복 열 테스트
$call gamstool csvread data5.무료 슬롯 id=d useHeader=Y 인덱스=1 값=3,3 추적=0 gdxout=data5.gdx > %system.NullFile% 2>&1
$ifE errorLevel=0 $abort 오류: CSVRead가 실패했어야 합니다!
$log 예상 오류: 값에 중복된 열이 사용되었습니다!
$로그
*------------------------------------------------------------------