Best JavaScript code snippet using ng-mocks
clone.js
Source:clone.js
1'use strict';2var fs = require('fs');3var git = require('nodegit');4var path = require('path');5const {exec} = require('child_process');6var express = require('Express');7var router = express.Router();8//Configuration for logging9var log4js = require('log4js');10log4js.configure({11 appenders: { 'file': { type: 'file', filename: 'logs/clone-helper.log' } },12 categories: { default: { appenders: ['file'], level: 'debug' } }13});14var logger = log4js.getLogger('clone-helper');15function createRepo(repofolder, signature, targetUrl, target_token, git_type) {16 var repo, index, remote, paths = [];17 logger.info(`${repofolder} is not a git repository. Initializing a bare repo...`);18 var list = fs.readdirSync(repofolder);19 list.forEach(function(file) {20 if(file != '.git') {21 paths.push(file);22 }23 }); 24 git.Repository.init(repofolder, 0)25 .then((repoResult) => repo = repoResult)26 .then(() => repo.refreshIndex())27 .then((indexResult) => (index = indexResult))28 .then(() => index.addAll(paths))29 .then(() => index.write())30 .then(() => index.writeTree())31 .then((oid) => repo.createCommit("HEAD", signature, signature, "initial commit", oid, []))32 .then((commitId) => logger.info("New Commit: ", commitId))33 // Add a new remote34 .then(() => git.Remote.create(repo, "origin", targetUrl))35 .then(function(remoteResult) {36 remote = remoteResult;37 logger.info(`remote set to ${targetUrl}`);38 return remote.push(39 ["refs/heads/master:refs/heads/master"],40 {41 callbacks: {42 credentials:() => (git_type.toLowerCase() == 'bitbucket') ?43 git.Cred.userpassPlaintextNew("x-token-auth", target_token):44 (git_type.toLowerCase() == 'gitlab') ?45 git.Cred.userpassPlaintextNew("oauth2", target_token): git.Cred.userpassPlaintextNew(target_token, "x-oauth-basic") 46 }47 });48 })49 .catch(function(err) {50 logger.error(err);51 return;52 })53 .done(() => logger.info("Done!"))54}55function createRepoFromGit(repofolder, targetUrl, target_token, git_type) {56 var repo, remote;57 logger.info(`${repofolder} is a git repository. Staging the repo...`);58 59 git.Repository.open(repofolder)60 .then((repoResult) => repo = repoResult)61 // Add a new remote62 .then(function() {63 git.Remote.setUrl(repo, "origin", targetUrl);64 logger.info(`remote set to ${targetUrl}`);65 return git.Remote.lookup(repo, "origin")66 .then(function(remoteResult) {67 remote = remoteResult;68 return remote.push(69 ["refs/heads/master:refs/heads/master"],70 {71 callbacks: {72 credentials:() => (git_type.toLowerCase() == 'bitbucket') ?73 git.Cred.userpassPlaintextNew("x-token-auth", target_token):74 (git_type.toLowerCase() == 'gitlab') ?75 git.Cred.userpassPlaintextNew("oauth2", target_token): git.Cred.userpassPlaintextNew(target_token, "x-oauth-basic") 76 }77 });78 })79 .catch(function(err) {80 logger.err(err);81 return;82 })83 .then(function() {84 exec(`rm -rf tmp`);85 logger.info("Done!");86 })87});88}89function downloadAndUnzipFile(sourceUrl, targetUrl, target_token, git_type) {90 var repofolder, zipName;91 function unzip(zipName) {92 var cmd = `unzip ${zipName} -d ./`;93 logger.info(cmd);94 exec(cmd, (err, stdout, stderr) => {95 if (err) {96 logger.error(`exec error: ${err}`);97 exec(`rm ${zipName}`);98 return;99 }100 logger.info(`unzipped file ${zipName} to ${repofolder}`);101 process_git(repofolder, targetUrl, target_token, git_type);102 }103 );104 exec(`rm ${zipName}`);105 }106 function download(sourceUrl) {107 var cmd = `wget ${sourceUrl} && find . -iname \*.zip`;108 exec(cmd, (err, stdout, stderr) => {109 if (err) {110 logger.error(`exec error: ${err}`);111 exec(`rm -rf ${zipName} ${repofolder}`);112 return;113 }114 zipName = stdout.trim();115 repofolder = zipName.replace(/\.[^/.]+$/, "");116 logger.info(`downloaded zip file: ${zipName} to ${repofolder}`);117 // readDir('.');118 unzip(zipName);119 });120 }121 download(sourceUrl);122}123function process_git(repofolder, targetUrl, target_token, git_type) {124 var isBare = 0; // 0 if no .git presence125 var timestamp = Math.round(Date.now()/1000);126 var accountName = "IBM Cloud";127 var signature = git.Signature.create(accountName, accountName, timestamp, 60);128 isBare = fs.existsSync(`${repofolder}/.git`);129 if(!isBare) {130 createRepo(repofolder, signature, targetUrl, target_token, git_type);131 }132 else {133 createRepoFromGit(repofolder, targetUrl, target_token, git_type);134 }135 136}137function cloneRepo(sourceUrl, targetUrl, target_token, git_type) {138 var localPath = path.join(__dirname, "tmp");139 var cloneOptions = {};140 cloneOptions.fetchOpts = {141 callbacks: {142 certificateCheck:() => { return 1; },143 credentials:() => {144 return (git_type.toLowerCase() == 'bitbucket') ?145 git.Cred.userpassPlaintextNew("x-token-auth", target_token):146 (git_type.toLowerCase() == 'gitlab') ?147 git.Cred.userpassPlaintextNew("oauth2", target_token): 148 git.Cred.userpassPlaintextNew(target_token, "x-oauth-basic"); 149 }150 }151 };152 153 git.Clone(sourceUrl, localPath, cloneOptions)154 .then(() => {155 process_git(localPath, targetUrl, target_token, git_type);156 })157 .catch((err) => {158 logger.info(err);159 });160}161//PARAMETER THAT NEEDS TO PASS IN FROM BROKER:162// var body = {163// source: params.repoUrlWithAuth || params.sourceRepoUrl,164// target: targetUrl,165// target_token: git.selected.token,166// cloneType: params.cloneType,167// git_type: git.selected.type168// };169function init(params) {170 171 var source = params.source;172 var target = params.target;173 var target_token = params.target_token;174 var sourceUrl = `https://github.ibm.com/soaresss/sec-scan.git`;175 var targetUrl = `https://github.ibm.com/Yuanchen-Lu/push1.git`;176 var cloneType = params.cloneType;177 var git_type = params.git_type;178 if(cloneType == 'zip')179 downloadAndUnzipFile(sourceUrl, targetUrl, target_token, git_type);180 else 181 cloneRepo(sourceUrl, targetUrl, target_token, git_type);182}183router.post("/clone", function(req, res) {184 res.send("In the clone helper route...");185 init(req.body);186 });187 188 router.get("/status", function(req, res) {189 res.send({190 "message": "Connected to local helper",191 "status": "PASS",192 "details": "The GitHub helper app is running"193 });194 });195 ...
turn_damage_script.js
Source:turn_damage_script.js
1function get_roll_total_from_msg()2{3 let messages = game.messages._source4 let content = messages[messages.length - 1].content5 let el = document.createElement('html');6 el.innerHTML = content7 let tag_inner = el.getElementsByTagName('h4')[0].innerHTML8 let value = parseFloat(tag_inner.substring(0, tag_inner.indexOf('<span')))9 return value10}11function are_more_msgs(len_msgs_before)12{13 if (game.messages._source.length > len_msgs_before) {return 1}14 else {return 0}15}16const asyncInterval = async (msgs_before, ms, triesLeft = 5) => {17 return new Promise((resolve, reject) => {18 const interval = setInterval(async () => {19 if (are_more_msgs(msgs_before) > 0) {20 resolve(get_roll_total_from_msg());21 clearInterval(interval);22 } else if (triesLeft <= 1) {23 reject(0);24 clearInterval(interval);25 }26 triesLeft--;27 console.log(`Tries: ${triesLeft}, length: ${game.messages._source.length}`)28 }, ms);29 });30}31function deal_with_condition(save_roll_total, dc, damage_type, attacking_actor, my_item, target_token, alert_name, damage_roll)32{33console.log(`Roll: ${save_roll_total}, DC: ${dc}, damage type: ${damage_type}`)34let flav = `${attacking_actor.name} наноÑÐ¸Ñ ${damage_type} ÑÑон пÑи ÑдаÑе ${my_item.name} по ${target_token.actor.name} with \n`35let saved_msg = `${target_token.actor.name} избавлÑеÑÑÑ Ð¾Ñ <b>${alert_name}</b>!`36if (save_roll_total < dc) {37new MidiQOL.DamageOnlyWorkflow(attacking_actor._id, attacking_actor.token._id, damage_roll.total, damage_type, [target_token], damage_roll, {flavor: flav, itemCardId: my_item.itemCardId});38}39else {40 if (game.cub.hasCondition(alert_name, target_token)) {game.cub.removeCondition(alert_name, target_token)}41 let alert = TurnAlert.getAlertByName(alert_name, combat_id)42 console.log(`Alert id: ${alert.id}, combat: ${alert.combatId}, name: ${alert.name}`)43 TurnAlert.delete(alert.combatId, alert.id)44 ChatMessage.create({user: null, speaker: ChatMessage.getSpeaker({token: target_token}), 45 content:saved_msg});46}47}48let attacking_actor = args[0]49let my_item = args[1]50let target_token = Array.from(game.user.targets)[0]51let damage_type = args[2]52let dc = args[3]53let alert_name = args[4]54let combat_id = args[5]55let save_ability = args[6]56let damage_formula = args[7]57let damage_roll = new Roll(damage_formula).roll()58console.log(`Save ability: ${save_ability}`)59LMRTFYRoller.requestSavingThrows(target_token.actor, save_ability);60const len_msgs_before = game.messages._source.length61console.log(`Msgs before ${len_msgs_before}`)...
totpEdit.js
Source:totpEdit.js
1// pages/edit/edit.js2let util = require('../../utils/util')3let token = []4let token_id5Page({6 /**7 * 页é¢çåå§æ°æ®8 */9 data: {10 issuer: '',11 remark: '',12 secret:''13 },14 /**15 * çå½å¨æå½æ°--çå¬é¡µé¢å è½½16 */17 onLoad: function (options) {18 let self = this19 token_id = options.token_id20 wx.getStorage({21 key: 'dlgf-totps',22 success: function(res) {23 token = res.data24 let target_token = token[token_id]25 self.setData({26 issuer: target_token.issuer,27 remark: target_token.remark,28 secret: target_token.secret29 })30 }31 })32 },33 // ä¿®æ¹å¹¶æ交æ°æ®34 keySubmit: function (e) {35 let values = e.detail.value36 token[token_id].issuer = values.issuer37 token[token_id].remark = values.remark38 wx.setStorage({39 key: 'dlgf-totps',40 data: token,41 success: function(res) {42 wx.navigateBack({43 delta: 1,44 })45 }46 });47 }...
Using AI Code Generation
1import { MockBuilder, MockRender } from 'ng-mocks';2import { AppComponent } from './app.component';3describe('AppComponent', () => {4 beforeEach(() => MockBuilder(AppComponent));5 it('should create the app', () => {6 const fixture = MockRender(AppComponent);7 const app = fixture.point.componentInstance;8 expect(app).toBeTruthy();9 });10});11import { Component, Input } from '@angular/core';12@Component({13})14export class AppComponent {15 @Input() title = 'app';16}17import { Component, Input } from '@angular/core';18@Component({19 <p>{{title}}</p>20})21export class ChildComponent {22 @Input() title = 'child';23}24import { MockBuilder, MockRender } from 'ng-mocks';25import { ChildComponent } from './child.component';26describe('ChildComponent', () => {27 beforeEach(() => MockBuilder(ChildComponent));28 it('should create the child', () => {29 const fixture = MockRender(ChildComponent);30 const child = fixture.point.componentInstance;31 expect(child).toBeTruthy();32 });33});
Using AI Code Generation
1import { TARGET_TOKEN } from 'ng-mocks';2import { MockBuilder } from 'ng-mocks';3import { MockRender } from 'ng-mocks';4import { MockInstance } from 'ng-mocks';5import { MockReset } from 'ng-mocks';6import { MockService } from 'ng-mocks';7import { MockRender } from 'ng-mocks';8import { MockComponent } from 'ng-mocks';9import { MockDirective } from 'ng-mocks';10import { MockPipe } from 'ng-mocks';11import { MockRender } from 'ng-mocks';12import { MockPr
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!!