모듈:인용/CS1/테스트 사례/앵커

Module
cs1에는 좋은 구현이 없기 때문에 직접 전화하지 않습니다. 모듈로서, 아래 줄에 주석을 달아야 합니다. local myModule = require('모듈:인용/CS1') - 테스트할 모듈 현지의 스크리쿤을 유닛으로 이동 = 요구하다('모듈:스크리쿤을 유닛으로') 현지의 스위트룸 = 스크리쿤을 유닛으로 이동:신규()  키와 값을 하나의 테이블로 병합 현지의 기능. 합병하다(t1, t2)  현지의 t3 = {}  위해서 k, v  쌍들(t1) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다   t3[k] = v  끝.  위해서 k, v  쌍들(t2) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다   t3[k] = v  끝.  돌아가다 t3 끝.  확장된 CS1/2 템플릿에서 citeref를 찾습니다.test_parameters를 사용합니다. 테이블 및 특정 템플릿의 인수를 호출합니다.test_parameters 테이블은 다음과 같습니다. 다음 필드: * base_args, 테스트 사례에 공통되는 템플릿 인수를 나타내는 표. * 패턴, 확장된 템플릿에서 찾을 문자열 * 프레임, 일반적으로 mw.getCurrentFrame()에서 생성됩니다. * template, 테스트할 템플릿의 이름인 문자열입니다. targs는 특정 어설션에 고유한 템플릿 인수의 테이블입니다. 현지의 기능. 시테레프(test_매개 변수, 타르)    현지의 병합_인수 = 합병하다(test_매개 변수.기초_인수, 타르)  현지의 팽창 = test_매개 변수.:확장템플릿{   제목 = test_매개 변수.템플릿, 논병아리 = 병합_인수  }    현지의 _, _, citeref_value = mw.ustring.찾아내다(팽창, test_매개 변수.양식)  한다면 것은 아니다. citeref_value 그리고나서   citeref_value = ''  끝.  돌아가다 citeref_value 끝.  저자 마스크가 CITEREF를 손상시키지 않도록 하기 위한 테스트. 기능. 스위트룸:testAuthorMask()  현지의 환경 = {    = mw.현재 프레임 가져오기(),   양식 = 'id=\"(CITEREF%S-)\"',   템플릿 = '새 책/새 책',   기초_인수 = { 제목 = 'T', 작가. = '_A1_', 연도 = '2020' }  }  자신:평등을 주장합니다.( 'CITEREF_A1_2020', 시테레프(환경, {챕터 = 'CH'}))  자신:평등을 주장합니다.( 'CITEREF_A1_2020', 시테레프(환경, {['저작자 마스크'] = 'A1'}))  자신:평등을 주장합니다.( 'CITEREF_A1_2020', 시테레프(환경, {['작성자-마스크1'] = '2'})) 끝.  다양한 기여자, 작성자 및 편집자 수에서 발생하는 작업 테스트 기능. 스위트룸:테스트 개수()  현지의 환경 = {    = mw.현재 프레임 가져오기(),   양식 = 'id=\"(CITEREF%S-)\"',   템플릿 = '새 책/새 책',   기초_인수 = { 제목 = 'T', 연도 = '2020' }  }  자신:평등을 주장합니다.( '', 시테레프(환경, {챕터 = 'CH'}))  자신:평등을 주장합니다.( 'CITEREF_A1_2020', 시테레프(환경, {작가. = '_A1_'}))  자신:평등을 주장합니다.( '', 시테레프(환경, {기부자 = 'C1'}))  자신:평등을 주장합니다.( '', 시테레프(환경, {기부자 = 'C1', 기부금 = 'CON'}))  자신:평등을 주장합니다.( 'CITEREF_E1_2020', 시테레프(환경, {편집자 = '_E1_'}))  자신:평등을 주장합니다.( 'CITEREF_A1_2020', 시테레프(환경, {작가. = '_A1_', 기부자 = '_C1_'}))  자신:평등을 주장합니다.( 'CITEREF_C1_2020', 시테레프(환경, {작가. = '_A1_', 기부자 = '_C1_', 기부금 = 'CON'}))  자신:평등을 주장합니다.( 'CITEREF_A1_2020', 시테레프(환경, {작가. = '_A1_', 편집자 = '_E1_'}))  자신:평등을 주장합니다.( 'CITEREF_E1_2020', 시테레프(환경, {편집자 = '_E1_', 기부자 = '_C1_'}))  자신:평등을 주장합니다.( 'CITEREF_E1_2020', 시테레프(환경, {편집자 = '_E1_', 기부자 = '_C1_', 기부금 = 'CON'}))  자신:평등을 주장합니다.( 'CITEREF_A1_2020', 시테레프(환경, {작가. = '_A1_', 기부자 = '_C1_', 편집자 = '_E1_'}))  자신:평등을 주장합니다.( 'CITEREF_C1_2020', 시테레프(환경, {작가. = '_A1_', 기부자 = '_C1_', 편집자 = '_E1_', 기부금 = 'CON'}))  자신:평등을 주장합니다.( 'CITEREF_A1_A2_A3_A4_2020', 시테레프(환경, {작가. = '_A1_', 저자2 = 'A2_', 저자3 = 'A3_', 저자4 = 'A4_'}))  자신:평등을 주장합니다.( 'CITEREF_A1_A2_A3_A4_2020', 시테레프(환경, {작가. = '_A1_', 저자2 = 'A2_', 저자3 = 'A3_', 저자4 = 'A4_', 저자5 = 'A5_'}))  자신:평등을 주장합니다.( 'CITEREF_C1_C2_C3_2020', 시테레프(환경, {작가. = '_A1_', 기부자 = '_C1_', 기여자2 = 'C2_', 기여자3 = 'C3_', 기부금 = 'CON'}))  자신:평등을 주장합니다.( 'CITEREF_E1_E2_2020', 시테레프(환경, {편집자 = '_E1_', 에디터2 = 'E2_'})) 끝.  앵커 연도를 포함한 날짜 확인 코드를 테스트합니다. 기능. 스위트룸:테스트 날짜()  현지의 환경 = {    = mw.현재 프레임 가져오기(),   양식 = 'id=\"(CITEREF%S-)\"',   템플릿 = '새 책/새 책',   기초_인수 = { 제목 = 'T', 작가. = '_A1_' }  }  자신:평등을 주장합니다.( 'CITEREF_A1_2020', 시테레프(환경, {연도='2020'}))  자신:평등을 주장합니다.( 'CITEREF_A1_c\._2020', 시테레프(환경, {날짜.='c. 2020년경}))  자신:평등을 주장합니다.( 'CITEREF_A1_2020', 시테레프(환경, {날짜.='2020년 1월 1일'}))  자신:평등을 주장합니다.( 'CITEREF_A1_2020a', 시테레프(환경, {날짜.='2020년 1월 1일 a'}))  자신:평등을 주장합니다.( 'CITEREF_A1_2020', 시테레프(환경, {날짜.='2020년 1월 1일', 연도='2020'}))  자신:평등을 주장합니다.( 'CITEREF_A1_2020a', 시테레프(환경, {날짜.='2020년 1월 1일', 연도='2020a'}))  자신:평등을 주장합니다.( 'CITEREF_A1_2020', 시테레프(환경, {날짜.='2020-01-01', 연도='2020'}))  자신:평등을 주장합니다.( 'CITEREF_A1_2020a', 시테레프(환경, {날짜.='2020-01-01', 연도='2020a'})) 끝.  기능. 스위트룸:테스트 날짜유지관리()  현지의  = mw.현재 프레임 가져오기()  현지의 기초_인수 = {제목 = 'T', 작가. = '_A1_', 연도 = '2020'}  현지의 템플릿 = '새 책/새 책'  현지의 유지의 = 'CS1 유지보수: 날짜 및 연도'    자신:assertStringContains(유지의, :확장템플릿{   제목 = 템플릿, 논병아리 = 합병하다(기초_인수, { 날짜. = '2020년 1월 1일'})  })  자신:assertStringContains(유지의, :확장템플릿{   제목 = 템플릿, 논병아리 = 합병하다(기초_인수, { 날짜. = '2020-01-01'})  }) 끝.  실패해야 함: 앵커에서 예상치 못한 추가 종료 및 아래에 후행 작성자 대시 추가 TODO: 바뀌어야 할까요?저는 야생에서 해결책을 본 적이 있습니다. 기능. 스위트룸:테스트 날짜ExtraNd()  현지의 환경 = {    = mw.현재 프레임 가져오기(),   양식 = 'id=\"(CITEREF%S-)\"',   템플릿 = '새 책/새 책',   기초_인수 = { 제목 = 'T', 작가. = '_A1_' }  }    자신:평등을 주장합니다.( 'CITEREF_A1_', 시테레프(환경, {날짜.='nd'})) 끝.  실패해야 함: 앵커에서 예상치 못한 추가 n.d. TODO: 바뀌어야 할까요?저는 야생에서 해결책을 본 적이 있습니다. 기능. 스위트룸:테스트 날짜ExtraNd Punct()  현지의 환경 = {    = mw.현재 프레임 가져오기(),   양식 = 'id=\"(CITEREF%S-)\"',   템플릿 = '새 책/새 책',   기초_인수 = { 제목 = 'T', 작가. = '_A1_' }  }  자신:평등을 주장합니다.( 'CITEREF_A1_', 시테레프(환경, {날짜.='n.d.'})) 끝.  표시 이름 설정이 CITEREF를 손상시키지 않는지 확인하기 위한 테스트 기능. 스위트룸:테스트표시 이름()  현지의 환경 = {    = mw.현재 프레임 가져오기(),   양식 = 'id=\"(CITEREF%S-)\"',   템플릿 = '새 책/새 책',   기초_인수 = { 제목 = 'T', 작가. = '_A1_', 저자2 = 'A2_', 날짜. = '2020' }  }  자신:평등을 주장합니다.( 'CITEREF_A1_A2_2020', 시테레프(환경, {챕터 = 'CH'}))  자신:평등을 주장합니다.( 'CITEREF_A1_A2_2020', 시테레프(환경, {['디스플레이 선택'] = '0'}))  자신:평등을 주장합니다.( 'CITEREF_A1_A2_2020', 시테레프(환경, {['디스플레이 선택'] = '1'}))  자신:평등을 주장합니다.( 'CITEREF_A1_A2_2020', 시테레프(환경, {['디스플레이 선택'] = '등'})) 끝.  특정 기준 값에 대해 수행되는 작업을 테스트합니다. 기능. 스위트룸:testRef()  현지의 환경 = {    = mw.현재 프레임 가져오기(),   양식 = '(id=\"CITEREF %S-\")',   템플릿 = '새 책/새 책',   기초_인수 = { 제목 = 'T', 작가. = '_A1_', 연도 = '2020' }  }  동등한 값에 대한 TODO 검정 인용문  자신:평등을 주장합니다.( 'id=\"CITEREF_A1_2020\"', 시테레프(환경, {챕터 = 'CH'}))  자신:평등을 주장합니다.( '', 시테레프(환경, {심판을 보다 = '''비공식'''}))  자신:평등을 주장합니다.( 'id=\"CITEREF_A1_2020\"', 시테레프(환경, {심판을 보다 = 'CITEREF_A1_2020'}))  끝.  약간 다른 설정입니다. 입력 ID가 출력 ID인지 테스트하려고 합니다. 기능. 스위트룸:testRefREF()  현지의 환경 = {    = mw.현재 프레임 가져오기(),   양식 = '(id=\"REF\")',   템플릿 = '새 책/새 책',   기초_인수 = { 제목 = 'T', 작가. = '_A1_', 연도 = '2020' }  }  자신:평등을 주장합니다.( 'id=\"REF\"', 시테레프(환경, {심판을 보다 = 'REF'})) 끝.  ref에서 예상되는 유지관리 메시지의 존재에 대한 테스트 기능. 스위트룸:testRefMaint()  현지의  = mw.현재 프레임 가져오기()  현지의 기초_인수 = {제목 = 'T', 작가. = '_A1_', 날짜. = '2020'}    자신:assertStringContains('CS1 유지 관리: ref가 기본값을 복제합니다.', :확장템플릿{   제목 = '새 책/새 책', 논병아리 = 합병하다(기초_인수, { 심판을 보다 = 'CITEREF_A1_2020'})  })  자신:assertStringContains('잘못된 <코드 클래스=\"cs1% 코드\">&#124;ref=ref</code>', :확장템플릿{   제목 = '새 책/새 책', 논병아리 = 합병하다(기초_인수, { 심판을 보다 = '''비공식'''})  }) 끝.  실패해야 함: 앵커에 뒤에 밑줄이 없음; 그것이 바람직한 것인지 확실하지 않음 또는 그것이 바뀔 수 있다면. TODO: 누군가에게 물어보세요. 기능. 스위트룸:test Trailing작성자 대시()  현지의 환경 = {    = mw.현재 프레임 가져오기(),   양식 = 'id=\"(CITEREF%S-)\"',   템플릿 = '새 책/새 책',   기초_인수 = { 제목 = 'T', 작가. = '_A1_' }  }  자신:평등을 주장합니다.( 'CITEREF_A1_', 시테레프(환경, {챕터='CH'})) 끝.  돌아가다 스위트룸