Best JavaScript code snippet using testing-library-react-hooks
join.js
Source:join.js
1// 주ìapi2function sample6_execDaumPostcode() {3 new daum.Postcode({4 oncomplete: function(data) {5 // íì
ìì ê²ìê²°ê³¼ í목ì í´ë¦íìë ì¤íí ì½ë를 ìì±íë ë¶ë¶.6 // ê° ì£¼ìì ë
¸ì¶ ê·ì¹ì ë°ë¼ 주ì를 ì¡°í©íë¤.7 // ë´ë ¤ì¤ë ë³ìê° ê°ì´ ìë ê²½ì°ì 공백('')ê°ì ê°ì§ë¯ë¡, ì´ë¥¼ ì°¸ê³ íì¬ ë¶ê¸° íë¤.8 var addr = ''; // 주ì ë³ì9 var extraAddr = ''; // ì°¸ê³ í목 ë³ì10 //ì¬ì©ìê° ì íí 주ì íì
ì ë°ë¼ í´ë¹ 주ì ê°ì ê°ì ¸ì¨ë¤.11 if (data.userSelectedType === 'R') { // ì¬ì©ìê° ëë¡ëª
주ì를 ì ííì ê²½ì°12 addr = data.roadAddress;13 } else { // ì¬ì©ìê° ì§ë² 주ì를 ì ííì ê²½ì°(J)14 addr = data.jibunAddress;15 }16 // ì¬ì©ìê° ì íí 주ìê° ëë¡ëª
íì
ì¼ë ì°¸ê³ í목ì ì¡°í©íë¤.17 if(data.userSelectedType === 'R'){18 // ë²ì ëëª
ì´ ìì ê²½ì° ì¶ê°íë¤. (ë²ì 리ë ì ì¸)19 // ë²ì ëì ê²½ì° ë§ì§ë§ 문ìê° "ë/ë¡/ê°"ë¡ ëëë¤.20 if(data.bname !== '' && /[ë|ë¡|ê°]$/g.test(data.bname)){21 extraAddr += data.bname;22 }23 // 건물ëª
ì´ ìê³ , ê³µë주íì¼ ê²½ì° ì¶ê°íë¤.24 if(data.buildingName !== '' && data.apartment === 'Y'){25 extraAddr += (extraAddr !== '' ? ', ' + data.buildingName : data.buildingName);26 }27 // íìí ì°¸ê³ íëª©ì´ ìì ê²½ì°, ê´í¸ê¹ì§ ì¶ê°í ìµì¢
문ìì´ì ë§ë ë¤.28 if(extraAddr !== ''){29 extraAddr = ' (' + extraAddr + ')';30 }31 // ì¡°í©ë ì°¸ê³ í목ì í´ë¹ íëì ë£ëë¤.32 document.getElementById("sample6_extraAddress").value = extraAddr;33 } else {34 document.getElementById("sample6_extraAddress").value = '';35 }36 // ì°í¸ë²í¸ì 주ì ì 보를 í´ë¹ íëì ë£ëë¤.37 document.getElementById('sample6_postcode').value = data.zonecode;38 document.getElementById("sample6_address").value = addr;39 // 커ì를 ìì¸ì£¼ì íëë¡ ì´ëíë¤.40 document.getElementById("sample6_detailAddress").focus();41 }42 }).open();43}44// 주ì ì²´í¬45function address() {46 $("#memberAddress").attr("value",$("#sample6_postcode").val() + "_" + $("#sample6_address").val() + " " + $("#sample6_detailAddress").val() + " " +$("#sample6_extraAddress").val());47 const address = $("#sample6_address").val();48 const detailAddress = $("#sample6_detailAddress").val();49 const checkResult=document.getElementById("addressOut");50 if(address.length==0 || detailAddress.length==0 ){51 checkResult.style.color = 'red';52 checkResult.innerText='íìì
ë ¥ í목ì
ëë¤. 주ìì ìì¸ì£¼ì를 기ì
í´ì£¼ì¸ì';53 }54 else {55 checkResult.style.color = 'green';56 checkResult.innerText='GOOD';57 }58}59// ì¸ì¦ë©ì¼ì²´í¬60function mailCheck() {61 const mail = $("#memberCheckmail").val();62 if (mail.length==0){63 alert("ì¸ì¦ë²í¸ë¥¼ ë°ì ì´ë©ì¼ì ì
ë ¥íì¸ì")64 }65 else {66 const checkResult=document.getElementById("mailCheckStatus");67 $.ajax({68 type: 'post',69 url: "sendMail",70 data: {"mail": mail},71 success: function (result) {72 checkResult.style.color = 'green';73 checkResult.innerText='ì¸ì¦ì½ë ë°ì¡ ë©ì¼ì íì¸í´ì£¼ì¸ì';74 },75 error: function () {76 checkResult.style.color = 'red';77 checkResult.innerText='ì¸ì¦ì½ë ë°ì¡ ì¤í¨ ì´ë©ì¼ì íì¸í´ì£¼ì¸ì';78 }79 });80 }81}82// ì¸ì¦ì½ë ì²´í¬83function codeCheck(){84 const code = $("#code").val();85 const checkResult=document.getElementById("codeCheckStatus");86 if (code.length==0){87 checkResult.style.color = 'red';88 checkResult.innerText='ì¸ì¦ì½ë를 ì
ë ¥íì¸ì';89 }90 else {91 $.ajax({92 type: 'post',93 url: "codeCheck",94 data: {"code": code},95 success: function (result) {96 if (result == "ok") {97 checkResult.style.color = 'green';98 $("#memberCheckmail").attr("readonly",true);99 checkResult.innerText = 'GOOD';100 } else {101 checkResult.style.color = 'red';102 checkResult.innerText = 'ì¸ì¦ì½ë ë¶ì¼ì¹';103 }104 },105 error: function () {106 console.log("ì½ëíì¸ ì¤ë¥ë°ì")107 }108 });109 }110}111// ë©ì¼ì²´í¬112function mailDuplicateCheck(){113 const mail=$("#memberEmail").val();114 const checkResult=document.getElementById("mailDuplicate");115 const exp = /^(?=.*[a-z])(?=.*\d)[a-z\d-_]{5,20}$/;116 $.ajax({117 type:'post',118 url:"mailDuplicate",119 data:{"mail" : mail},120 success : function (result){121 if(result=="ok"){122 if(mail.length==0){123 checkResult.innerText="íì ì
ë ¥ê°ì
ëë¤.";124 checkResult.style.color="red";125 }126 else if(mail.match(exp)){127 checkResult.innerText="GOOD";128 checkResult.style.color="green"129 }130 else{131 checkResult.innerText="ì í¨íì§ìì íìì
ëë¤. 5~20 ì¬ì´ì ì문 ì문ìì ì«ì를 ì¬ì©íì¬ ì
ë ¥íì¸ì";132 checkResult.style.color="red"133 }134 }135 else{136 checkResult.style.color = 'red';137 checkResult.innerText='ì´ë¯¸ ì¬ì©ì¤ì¸ ìì´ëì
ëë¤.';138 }139 },140 error : function (){141 }142 });143}144// ëë¤ì ì²´í¬145function nicknameDuplicateCheck(){146 const exp = /^(?=.*[a-zA-Z\d_])[a-zA-Z\d_]{2,18}$/;147 const nickname=$("#memberNickname").val();148 const checkResult=document.getElementById("nicknameDuplicate");149 $.ajax({150 type:'post',151 url:"nicknameDuplicate",152 data:{"nickname" : nickname},153 success : function (result){154 if(result=="ok"){155 if(nickname.length==0){156 checkResult.innerText="íì ì
ë ¥ê°ì
ëë¤.";157 checkResult.style.color="red";158 }159 else if(nickname.match(exp)){160 checkResult.innerText="GOOD";161 checkResult.style.color="green"162 }163 else{164 checkResult.innerText="ì í¨íì§ ìì íìì
ëë¤. ì문 ë ì문ì, ì«ì, í¹ì문ì('_')ì¤ìì ì
ë ¥íì¸ì";165 checkResult.style.color="red"166 }167 }168 else{169 checkResult.style.color = 'red';170 checkResult.innerText='ì´ë¯¸ ì¬ì©ì¤ì¸ ëë¤ìì
ëë¤.';171 }172 },173 error : function (){174 console.log("ëë¤ìì²´í¬ ì¤ë¥")175 }176 });177}178// ë¹ë°ë²í¸ ì²´í¬179function pw1check(){180 const pw1ch=document.getElementById("memberPw").value;181 const checkResult=document.getElementById("pw1out");182 const exp = /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,16}$/;183 if(pw1ch.length==0){184 checkResult.innerText="íì ì
ë ¥ê°ì
ëë¤.";185 checkResult.style.color="red";186 }187 else if (pw1ch.match(exp)){188 checkResult.innerText="GOOD";189 checkResult.style.color="green"190 }191 else{192 checkResult.innerText="8~16ì ì문 ë ì문ì, ì«ì를 ì¬ì©íì¬ ì
ë ¥íì¸ì";193 checkResult.style.color="red";194 }195}196// ë¹ë°ë²í¸ íì¸ ì²´í¬197function pw2check(){198 const pw1ch=document.getElementById("memberPw").value;199 const pw2ch=document.getElementById("memberPwCheck").value;200 const checkResult=document.getElementById("pw2out");201 if (pw2ch.length==0){202 checkResult.innerText="íì ì
ë ¥ê°ì
ëë¤.";203 checkResult.style.color="red";204 }205 else {206 if (pw1ch == pw2ch) {207 checkResult.innerText = "GOOD";208 checkResult.style.color = "green";209 } else {210 checkResult.innerText = "ë¹ë°ë²í¸ê° ì¼ì¹íì§ììµëë¤.";211 checkResult.style.color = "red";212 }213 }214}215// í¸ëí° ë²í¸ ì²´í¬216function pnCheck(){217 $("#memberPhone").attr("value",$("#frontPhone option:selected").val() + "" + $("#backPhone").val());218 const exp = /^(?=.*\d)[\d]{11}$/;219 const phone = document.getElementById('memberPhone').value;220 const checkResult = document.getElementById('pnOut');221 if(phone.match(exp)){222 checkResult.innerText ="GOOD"223 checkResult.style.color="green";224 }225 else if(phone.length==0){226 checkResult.innerText="íì ì
ë ¥ê°ì
ëë¤.";227 checkResult.style.color="red";228 }229 else{230 checkResult.innerText="ì í¨íì§ ìì íìì
ëë¤. 11ì리ì ì«ì를 ì
ë ¥íì¸ì."231 checkResult.style.color="red"232 }233}234function joinSubmit() {235 codeCheck();236 mailDuplicateCheck();237 nicknameDuplicateCheck();238 pw1check();239 pw2check()240 pnCheck();241 address();242 const mail = document.getElementById("mailDuplicate").innerText243 const code = document.getElementById("codeCheckStatus").innerText244 const pw1 = document.getElementById("pw1out").innerText245 const pw2 = document.getElementById("pw2out").innerText246 const name = document.getElementById("nicknameDuplicate").innerText247 const addresst = document.getElementById("addressOut").innerText248 const phone = document.getElementById("pnOut").innerText249 if (mail == "GOOD" && pw1 == "GOOD" && pw2 == "GOOD" && code == "GOOD" && name == 'GOOD' && addresst == 'GOOD' && phone == "GOOD")250 joinForm.submit();251 else {252 }253}254 function updateMember(){255 nicknameDuplicateCheck();256 pnCheck();257 address();258 const name=document.getElementById("nicknameDuplicate").innerText259 const addresst=document.getElementById("addressOut").innerText260 const phone=document.getElementById("pnOut").innerText261 if (name == 'GOOD' && addresst == 'GOOD' && phone == "GOOD")262 updateForm.submit();263 else {264 }265 }266 function addInfo(){267 nicknameDuplicateCheck();268 pnCheck();269 address();270 const name=document.getElementById("nicknameDuplicate").innerText271 const addresst=document.getElementById("addressOut").innerText272 const phone=document.getElementById("pnOut").innerText273 if(name=='GOOD' && addresst=='GOOD' && phone=="GOOD")274 joinForm.submit();275 else {276 }...
QueryRoad.js
Source:QueryRoad.js
1/**2 * QueryRoad3 **/4function QueryRoad(){5 base(this,LSprite,[]);6 var self = this;7};8QueryRoad.prototype.queryCheck = function(){9 var self = this;10 var checkResult = false; 11 var x1 = _clickArr[0].pointx;12 var y1 = _clickArr[0].pointy;13 var x2 = _clickArr[1].pointx;14 var y2 = _clickArr[1].pointy;15 //éæ¥è¿è¡æ£æ¥,å¦æ两个å¾çå¯ä»¥ç¸è¿,åå°ç»çº¿éè¦ç»è¿çæç¹åå
¥_lineArræ°ç»ï¼åå¤ç»çº¿16 17 //横åæ£æ¥18 checkResult = self.checkRow(x1,y1,x2,y2);19 if(checkResult){20 _lineArr.push(_clickArr[0]);21 _lineArr.push(_clickArr[1]);22 return;23 }24 //纵åæ£æ¥25 checkResult = self.checkCol(x1,y1,x2,y2);26 if(checkResult){27 _lineArr.push(_clickArr[0]);28 _lineArr.push(_clickArr[1]);29 return;30 }31 //ä¸æ¬¡æ线æ£æ¥32 checkResult = self.checkOnce(x1,y1,x2,y2);33 if(checkResult){34 _lineArr.unshift(_clickArr[0]);35 _lineArr.push(_clickArr[1]);36 return;37 }38 //äºæ¬¡æ线æ£æ¥æ¨ªåæ£æµ 39 checkResult = self.checkTwiceRow(x1,y1,x2,y2); 40 if(checkResult){41 _lineArr.unshift(_clickArr[0]);42 _lineArr.push(_clickArr[1]);43 return;44 }45 //äºæ¬¡æ线æ£æ¥çºµåæ£æµ 46 checkResult = self.checkTwiceCol(x1,y1,x2,y2);47 if(checkResult){48 _lineArr.unshift(_clickArr[0]);49 _lineArr.push(_clickArr[1]);50 return;51 }52};53 /**54 * äºæ¬¡æ线æ£æ¥æ¨ªåæ£æµ55 *å¤æåç§æ
åµ,56 *1表示ç¹å»å¾ç,0表示æ£ç´¢è·¯å¾,3表示å
¶ä»å¾ç57 *ä¸58 *000059 *033060 *133161 *äº62 *133163 *033064 *000065 *ä¸66 *133367 *033368 *000069 *333070 *333171 *å72 *333173 *333074 *000075 *033376 *133377 */78QueryRoad.prototype.checkTwiceRow = function (x1,y1,x2,y2){ 79 if(x1 == x2)return false;80 var self = this; 81 var checkResult = false;82 for(var i = 0;i<_mapC + 2;i++){83 if(x1<=x2){84 if(self.checkRow(x1-1,i,x2 + 1,i)){85 if(self.checkCol(x1,y1,x1,i)&&self.checkCol(x2,y2,x2,i)){86 checkResult = true;87 _lineArr.push(_boxArr[i][x1]);88 _lineArr.push(_boxArr[i][x2]);89 break;90 }91 }92 }else{93 if(self.checkRow(x2-1,i,x1 + 1,i)){94 if(self.checkCol(x1,y1,x1,i)&&self.checkCol(x2,y2,x2,i)){95 checkResult = true;96 _lineArr.push(_boxArr[i][x1]);97 _lineArr.push(_boxArr[i][x2]);98 break;99 }100 }101 }102 }103 return checkResult;104};105 /**106 * äºæ¬¡æ线æ£æ¥çºµåæ£æµ107 *å¤æåç§æ
åµ,108 *1表示ç¹å»å¾ç,0表示æ£ç´¢è·¯å¾,3表示å
¶ä»å¾ç109 *ä¸110 *1000111 *3330112 *1000113 *äº114 *0001115 *0333116 *0001117 *ä¸118 *10033119 *33033120 *33033121 *33033122 *33001123 *å124 *33001125 *33033126 *33033127 *33033128 *10033129 */130QueryRoad.prototype.checkTwiceCol = function(x1,y1,x2,y2){ if(y1 == y2)return false; 131 var self = this; var checkResult = false;132 for(var i = 0;i<_mapC + 2;i++){ 133 if(y1<y2){ 134 if(self.checkCol(i,y1-1,i,y2 + 1)){ 135 if(self.checkRow(x1,y1,i,y1)&&self.checkRow(x2,y2,i,y2)){136 checkResult = true;137 _lineArr.push(_boxArr[y1][i]);138 _lineArr.push(_boxArr[y2][i]);139 break;140 }141 }142 }else{143 if(self.checkCol(i,y2-1,i,y1 + 1)){144 if(self.checkRow(x1,y1,i,y1)&&self.checkRow(x2,y2,i,y2)){145 checkResult = true;146 _lineArr.push(_boxArr[y1][i]);147 _lineArr.push(_boxArr[y2][i]);148 break;149 }150 }151 }152 }153 return checkResult;154};155 /**156 * ä¸æ¬¡æ线æ£æ¥157 *å¤æåç§æ
åµ,158 *1表示ç¹å»å¾ç,0表示æ£ç´¢è·¯å¾,3表示å
¶ä»å¾ç159 *ä¸160 *1000161 *3330162 *3331163 *äº164 *0001165 *0333166 *1333167 *ä¸168 *1333169 *0333170 *0001171 *å172 *3331173 *3330174 *1000175 */176QueryRoad.prototype.checkOnce = function(x1,y1,x2,y2){177 var self=this;178 var checkResult = false;179 if(x1<x2){180 checkResult = self.checkRow(x1,y1,x2+1,y1)&&self.checkCol(x2,y1,x2,y2);181 if(checkResult){182 _lineArr.push(_boxArr[y1][x2]);183 }else{184 checkResult = self.checkRow(x1 - 1,y2,x2,y2)&&self.checkCol(x1,y1,x1,y2);185 if(checkResult){186 _lineArr.push(_boxArr[y2][x1]);187 }188 }189 }else{190 checkResult = self.checkRow(x1,y2,x1,y1)&&self.checkCol(x1 + 1,y2,x2,y2);191 if(checkResult){192 _lineArr.push(_boxArr[y2][x1]);193 }else{194 checkResult = self.checkRow(x2 - 1,y1,x1,y1)&&self.checkCol(x2,y2,x2,y1);195 if(checkResult){196 _lineArr.push(_boxArr[y1][x2]);197 }198 }199 }200 return checkResult;201};202 203/**204 * 横åæ£æ¥205 *è¿ä¸ªç®åï¼åªéè¦å¤æ两个å¾çä¸é´æ¯å¦æå
¶ä»å¾çå³å¯206*/ 207QueryRoad.prototype.checkRow = function (x1,y1,x2,y2){ 208 var checkResult = false;209 if(y1 >= _boxArr.length)return checkResult;210 var i ;211 if(y1 != y2){212 return false;213 }else if(Math.abs(x1 - x2) == 1){214 return true;215 }216 for(i = Math.min(x1,x2) +1;i<Math.max(x1,x2);i++){217 if(i >= _boxArr[0].length)continue;218 if(_boxArr[y1][i]._index==0){219 checkResult = true;220 } else{221 checkResult = false;222 break;223 }224 }225 return checkResult;226};227 228 /**229 * 纵åæ£æ¥230 *è¿ä¸ªç®åï¼åªéè¦å¤æ两个å¾çä¸é´æ¯å¦æå
¶ä»å¾çå³å¯231 */232QueryRoad.prototype.checkCol = function (x1,y1,x2,y2){ 233 var checkResult = false;234 if(x1 >= _boxArr[0].length)return checkResult;235 var i; 236 if(x1 != x2){237 return false;238 }else if(Math.abs(y1 - y2) == 1){239 return true;240 }241 for(i = Math.min(y1,y2) +1;i<Math.max(y1,y2);i++){242 if(i >= _boxArr.length)continue;243 if(_boxArr[i][x1]._index==0){244 checkResult = true;245 } else{246 checkResult = false;247 break;248 }249 }250 return checkResult;...
hterm_parser_tests.js
Source:hterm_parser_tests.js
...34 assert.isFalse(rv.ctrl);35 assert.isFalse(rv.alt);36 assert.isFalse(rv.meta);37 };38 checkResult('X', 88);39 checkResult('x', 88);40 checkResult('ENTER', 13);41 checkResult('Ent', 13);42 checkResult('esc', 27);43 negKeySeq('FOO', /Unknown key: FOO/);44});45it('modifiers', () => {46 const p = new hterm.Parser();47 const checkResult = function(input, shift, ctrl, alt, meta) {48 p.reset(input);49 const rv = p.parseKeySequence();50 assert.equal(rv.keyCode, 88);51 assert.equal(rv.shift, shift);52 assert.equal(rv.ctrl, ctrl);53 assert.equal(rv.alt, alt);54 assert.equal(rv.meta, meta);55 };56 checkResult('Shift+X', true, false, false, false);57 checkResult('Ctrl+X', false, true, false, false);58 checkResult('Control+X', false, true, false, false);59 checkResult('Alt+X', false, false, true, false);60 checkResult('Meta+X', false, false, false, true);61 checkResult('SHIFT-X', true, false, false, false);62 checkResult('CTRL-X', false, true, false, false);63 checkResult('CONTROL-X', false, true, false, false);64 checkResult('ALT-X', false, false, true, false);65 checkResult('META-X', false, false, false, true);66 checkResult('Shift-Ctrl-X', true, true, false, false);67 checkResult('ShIfT-cTrL-x', true, true, false, false);68 checkResult('Shift-Alt-X', true, false, true, false);69 checkResult('Shift-Meta-X', true, false, false, true);70 checkResult('Shift-Ctrl-Alt-Meta-X', true, true, true, true);71 checkResult('Shift+Ctrl+X', true, true, false, false);72 checkResult('ShIfT+cTrL+x', true, true, false, false);73 checkResult('Shift+Alt+X', true, false, true, false);74 checkResult('Shift+Meta+X', true, false, false, true);75 checkResult('Shift+Ctrl+Alt+Meta+X', true, true, true, true);76 checkResult('Shift-*-X', true, '*', '*', '*');77 checkResult('Shift-Ctrl-*-X', true, true, '*', '*');78 checkResult('Shift-Ctrl-Alt-*-X', true, true, true, '*');79 checkResult('Shift-Ctrl-Alt-Meta-*-X', true, true, true, true);80 negKeySeq('shft-X', /Unknown key: shft$/);81 negKeySeq('SHFT-X', /Unknown key: SHFT$/);82 negKeySeq('Foo-X', /Unknown key: Foo$/);83 negKeySeq('Ctrl-Foo-X', /Unknown key: Foo$/);84 negKeySeq('Ctrl-Ctrl-X', /Duplicate modifier: Ctrl$/);85 negKeySeq('Control-Ctrl-X', /Duplicate modifier: Ctrl$/);86 negKeySeq('Ctrl', /Missing target key$/);87 negKeySeq('Ctrl-Alt"', /Missing target key$/);88 negKeySeq('Ctrl-', /Missing target key$/);89 negKeySeq('Ctrl-X-Alt', /Extra definition after target key$/);90 negKeySeq('toString-X', /Unknown key: toString$/);91});92it('keycodes', () => {93 const p = new hterm.Parser();94 const checkResult = function(input, target, shift, ctrl, alt, meta) {95 p.reset(input);96 const rv = p.parseKeySequence();97 assert.equal(rv.keyCode, target);98 assert.equal(rv.shift, shift);99 assert.equal(rv.ctrl, ctrl);100 assert.equal(rv.alt, alt);101 assert.equal(rv.meta, meta);102 };103 checkResult('88', 88, false, false, false, false);104 checkResult('Shift-88', 88, true, false, false, false);105 checkResult('Shift-Ctrl-Alt-Meta-88', 88, true, true, true, true);106 checkResult('0', 0, false, false, false, false);107 checkResult('Shift-0', 0, true, false, false, false);108 checkResult('Shift-Ctrl-Alt-Meta-0', 0, true, true, true, true);109 checkResult('0x123456789abcdef', 0x123456789abcdef,110 false, false, false, false);111 checkResult('0xf', 15, false, false, false, false);112 checkResult('Ctrl-0xf', 15, false, true, false, false);113 checkResult('Ctrl-0x0f', 15, false, true, false, false);114 checkResult('Ctrl-Alt-0xf', 15, false, true, true, false);115 checkResult('0xff', 255, false, false, false, false);116 checkResult('Ctrl-0xff', 255, false, true, false, false);117 checkResult('Ctrl-Alt-0xff', 255, false, true, true, false);118});119it('actions', () => {120 const p = new hterm.Parser();121 const checkResult = function(input, output) {122 p.reset(input);123 const rv = p.parseKeyAction();124 assert.strictEqual(rv, output);125 };126 checkResult('CANCEL', hterm.Keyboard.KeyActions.CANCEL);127 checkResult('PASS', hterm.Keyboard.KeyActions.PASS);128 checkResult('DEFAULT', hterm.Keyboard.KeyActions.DEFAULT);129 checkResult('"123"', '123');130});...
tool.js
Source:tool.js
1/**2 * 该å½æ°åªæ£æ¥åºæ¬çhttp status,ç¶åå¾å°åºæ¬çç¶æä¿¡æ¯3 * å 为对æ¯ç§æä½çå¤çæ¹å¼ä¸åæ以ä¸å¨è¿éåå¤çæ¹æ¡4 * å¦ææåç¡®å®å¨è¿éåçè¯å说å§5 * ç°å¨åªæ¯ä¿è¯æ°æ®è½å¤è·åå°6 */7import { Notify } from "vant"8function checkHttpStatus(res) {9 const checkResult = {10 next: false,11 type: 'warning',12 message: 'æªå¼å§æ£æ¥status'13 }14 const status = res.status15 switch (true) {16 case status == 200:17 checkResult.next = true18 checkResult.type = 'success'19 checkResult.message = 'æ£ç¡®çhttpç¶æç '20 break21 case status == 400:22 checkResult.next = false23 checkResult.type = 'danger'24 checkResult.message = 'é误ç请æ±'25 break26 // éè¦è¿ä¸æ¥ç¥é请æ±å¤±è´¥çåå 27 case status == 401:28 checkResult.next = true29 checkResult.type = 'warning'30 checkResult.message = '401'31 break32 case status == 403:33 checkResult.next = false34 checkResult.type = 'warning'35 checkResult.message = '没ææé'36 break37 case status == 404:38 checkResult.next = false39 checkResult.type = 'fail'40 checkResult.message = '404'41 break42 case status >= 400 && status < 500:43 checkResult.next = true44 checkResult.type = 'fail'45 checkResult.message = '请æ±é误'46 break47 case status >= 500 && status <= 505:48 checkResult.next = false49 checkResult.type = 'error'50 checkResult.message = 'æå¡å¨é误'51 break52 default:53 checkResult.next = false54 checkResult.type = 'fail'55 checkResult.message = 'å
¶ä»é®é¢'56 }57 if (!checkResult.next) {58 Notify(checkResult)59 }60 return checkResult61}62function checkApiCode(code) {63 code64}65export {66 checkHttpStatus,67 checkApiCode...
Using AI Code Generation
1import { checkResult } from '@testing-library/react-hooks'2import { checkResult } from '@testing-library/react-hooks'3I have two test files (test1.js and test2.js) and both are importing the checkResult method of testing-library-react-hooks. Now, I run the tests using jest and they both pass. But, I want to run the tests in parallel. I have used the jest --runInBand option to run the tests in parallel. But, when I run the tests using this option, the tests fail with the error message:4const List = ({ items, onClick }) => {5 return (6 {items.map((item) => (7 <li key={item.id}>8 {item.name}9 <button onClick={() => onClick(item.id)}>Click me</button>10 ))}11 );12};13describe('List', () => {14 it('should call onClick prop when button is clicked', () => {15 const onClick = jest.fn();16 const { getByText } = render(
Using AI Code Generation
1import { renderHook } from '@testing-library/react-hooks'2import { useFetch } from './useFetch'3describe('useFetch', () => {4 it('should fetch data', async () => {5 const { result, waitForNextUpdate } = renderHook(() =>6 await waitForNextUpdate()7 expect(result.current.data.length).toBe(100)8 })9})10import { useState, useEffect } from 'react'11export const useFetch = (url) => {12 const [data, setData] = useState(null)13 const [loading, setLoading] = useState(true)14 useEffect(() => {15 ;(async () => {16 const response = await fetch(url)17 const data = await response.json()18 setData(data)19 setLoading(false)20 })()21 }, [url])22 return { data, loading }23}24import { renderHook } from '@testing-library/react-hooks'25import { useFetch } from './useFetch'26import { useFetch as useFetchMock } from './useFetchMock'27jest.mock('./useFetch', () => ({28}))29describe('useFetch', () => {30 it('should fetch data', async () => {31 const { result, waitForNextUpdate } = renderHook(() =>32 await waitForNextUpdate()33 expect(result.current.data.length).toBe(100)34 })35})36export const useFetchMock = () => {37 return {38 data: [{ id: 1, title:
Using AI Code Generation
1import { checkResult } from 'testing-library-react-hooks'2import { useMyHook } from './myHook'3describe('useMyHook', () => {4 it('should do something', () => {5 const { result } = renderHook(() => useMyHook())6 checkResult(result, (value) => {7 })8 })9})10import { useState } from 'react'11export const useMyHook = () => {12 const [value, setValue] = useState('value')13}
Using AI Code Generation
1import { checkResult } from "@testing-library/react-hooks";2import { useMyCustomHook } from "./my-custom-hook";3describe("my custom hook", () => {4 it("should return correct result", () => {5 const { result } = renderHook(() => useMyCustomHook());6 checkResult(result, {7 });8 });9});10import { useState } from "react";11export const useMyCustomHook = () => {12 const [data, setData] = useState("data");13 const [error, setError] = useState(null);14 const [isLoading, setIsLoading] = useState(false);15 return {16 };17};18import { checkResult } from "@testing-library/react-hooks";19import { useMyCustomHook } from "./my-custom-hook";20describe("my custom hook", () => {21 it("should return correct result", () => {22 const { result } = renderHook(() => useMyCustomHook());23 checkResult(result, {24 });25 });26});27import { useState } from "react";28export const useMyCustomHook = () => {29 const [data, setData] = useState("data");30 const [error, setError] = useState(null);31 const [isLoading, setIsLoading] = useState(false);32 return {33 };34};35import { checkResult } from "@testing-library/react-hooks";36import { useMyCustomHook } from "./my-custom-hook";37describe("my custom hook", () => {38 it("should return correct result", () => {39 const { result } = renderHook(() => useMyCustomHook());40 checkResult(result, {41 });42 });43});44import { useState } from "react";
Using AI Code Generation
1import { renderHook } from '@testing-library/react-hooks'2import { useFetch } from './useFetch'3test('test useFetch', async () => {4 const { result, waitForNextUpdate } = renderHook(() =>5 expect(result.current.loading).toBe(true)6 expect(result.current.error).toBe(null)7 expect(result.current.data).toBe(null)8 await waitForNextUpdate()9 expect(result.current.loading).toBe(false)10 expect(result.current.error).toBe(null)11 expect(result.current.data.title).toBe('delectus aut autem')12})13import { renderHook } from '@testing-library/react-hooks'14import { useFetch } from './useFetch'15test('test useFetch', async () => {16 const { result, waitForNextUpdate } = renderHook(() =>17 expect(result.current.loading).toBe(true)18 expect(result.current.error).toBe(null)19 expect(result.current.data).toBe(null)20 await waitForNextUpdate()21 expect(result.current.loading).toBe(false)22 expect(result.current.error).toBe(null)23 expect(result.current.data.title).toBe('delectus aut autem')24})25import { renderHook } from '@testing-library/react-hooks'26import { useFetch } from './useFetch'27test('test useFetch', async () => {28 const { result, waitForNextUpdate } = renderHook(() =>29 expect(result.current.loading).toBe(true)30 expect(result.current.error).toBe(null)31 expect(result.current.data).toBe(null)32 await waitForNextUpdate()33 expect(result.current.loading).toBe(false)34 expect(result.current.error).toBe(null)35 expect(result.current.data.title).toBe('delectus aut autem')36})37import { renderHook } from '@testing-library/react-hooks'38import { useFetch } from './
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!