Best JavaScript code snippet using argos
createBuildDiffs.js
Source:createBuildDiffs.js
1import { transaction } from "@argos-ci/database";2import { ScreenshotDiff, Build } from "@argos-ci/database/models";3import { baseCompare } from "./baseCompare";4async function getOrCreateBaseScreenshotBucket(build, { trx } = {}) {5 // It can already be present, for instance by the sample build feature.6 if (build.baseScreenshotBucket) {7 return build.baseScreenshotBucket;8 }9 const baseScreenshotBucket = await baseCompare({10 baseCommit: build.repository.referenceBranch,11 compareCommit: build.compareScreenshotBucket.commit,12 build,13 trx,14 });15 if (baseScreenshotBucket) {16 await Build.query(trx)17 .findById(build.id)18 .patch({ baseScreenshotBucketId: baseScreenshotBucket.id });19 return baseScreenshotBucket.$query(trx).withGraphFetched("screenshots");20 }21 return null;22}23function getJobStatus({ compareWithBaseline, baseScreenshot, sameFileId }) {24 if (compareWithBaseline) return "complete";25 if (!baseScreenshot) return "complete";26 if (sameFileId) return "complete";27 return "pending";28}29export async function createBuildDiffs(build) {30 return transaction(async (trx) => {31 const richBuild = await build32 .$query(trx)33 .withGraphFetched(34 "[repository, baseScreenshotBucket.screenshots, compareScreenshotBucket.screenshots]"35 );36 const baseScreenshotBucket = await getOrCreateBaseScreenshotBucket(37 richBuild,38 { trx }39 );40 const compareWithBaseline = Boolean(41 baseScreenshotBucket &&42 baseScreenshotBucket.commit === richBuild.compareScreenshotBucket.commit43 );44 const sameBucket = Boolean(45 baseScreenshotBucket &&46 baseScreenshotBucket.id === richBuild.compareScreenshotBucket.id47 );48 const inserts = richBuild.compareScreenshotBucket.screenshots.map(49 (compareScreenshot) => {50 const baseScreenshot =51 !sameBucket && baseScreenshotBucket52 ? baseScreenshotBucket.screenshots.find(53 ({ name }) => name === compareScreenshot.name54 )55 : null;56 const sameFileId = Boolean(57 baseScreenshot &&58 baseScreenshot.fileId &&59 compareScreenshot.fileId &&60 baseScreenshot.fileId === compareScreenshot.fileId61 );62 return {63 buildId: richBuild.id,64 baseScreenshotId: baseScreenshot ? baseScreenshot.id : null,65 compareScreenshotId: compareScreenshot.id,66 jobStatus: getJobStatus({67 compareWithBaseline,68 baseScreenshot,69 sameFileId,70 }),71 score: sameFileId ? 0 : null,72 validationStatus: ScreenshotDiff.VALIDATION_STATUSES.unknown,73 };74 },75 []76 );77 return ScreenshotDiff.query(trx).insert(inserts);78 });...
baselinesCommon.js
Source:baselinesCommon.js
1/**2 * Copyright by Intland Software3 *4 * All rights reserved.5 *6 * This software is the confidential and proprietary information7 * of Intland Software. ("Confidential Information"). You8 * shall not disclose such Confidential Information and shall use9 * it only in accordance with the terms of the license agreement10 * you entered into with Intland.11 */12/**13 * Common functions for baselines.14 * This file is included in every page, so keep it as short and simple as possible.15 */16codebeamer.Baselines = codebeamer["Baselines"] || (function($) {17 var changeDefaultBaseline = function(projectId, baselineParamName) {18 var url = contextPath + "/branching/trackerBaselinesAndBranches.spr?project_id=" + (projectId || "");19 if (baselineParamName) {20 url += "&baseline_param_name=" + baselineParamName;21 }22 showPopupInline(url, {23 geometry: "large"24 });25 };26 var selectBaseline = function(projectId, side) {27 showPopupInline(contextPath + "/proj/ajax/baselines.spr?proj_id=" + (projectId || "") + "&selection_side=" + side, {28 geometry: "half_half"29 });30 };31 var createNewBaseline = function(projectId) {32 window.location.href = contextPath + "/proj/baselines.spr?proj_id=" + projectId + "&create_new_baseline=true";33 };34 var compareWithBaseline = function(projectId, baselineId) {35 window.location.href = contextPath + "/proj/baselines.spr?proj_id=" + projectId + "&compare_with=" + baselineId;36 };37 var switchToHead = function(baselineParamName) {38 var url = UrlUtils.addOrReplaceParameter(parent.window.location.href, baselineParamName.split(","), "");39 if (baselineParamName == "branchId") {40 url = UrlUtils.addOrReplaceParameter(url, "skipBranchSwitchWarning", "true");41 }42 window.location.href = url;43 };44 var compareBaselinesButtonHandler = function(parentEl, compareURL, compareParamName, avoidCache) {45 compareParamName = compareParamName || "baseline";46 var $selectedCheckboxes = $(parentEl).find("input:checked");47 if ($selectedCheckboxes.length != 2) {48 alert(i18n.message("project.baselines.compare.select.two"));49 return false;50 }51 var requestURL = compareURL +52 "&" + compareParamName + "1=" + ($selectedCheckboxes.get(1).value || "0") +53 "&" + compareParamName + "2=" + ($selectedCheckboxes.get(0).value || "0");54 if (avoidCache) {55 var timestamp = new Date();56 requestURL += "&avoidCache=" + timestamp.getTime();57 }58 launch_url(requestURL, "large");59 return false;60 };61 return {62 changeDefaultBaseline: changeDefaultBaseline,63 createNewBaseline: createNewBaseline,64 compareWithBaseline: compareWithBaseline,65 switchToHead: switchToHead,66 selectBaseline: selectBaseline,67 compareBaselinesButtonHandler: compareBaselinesButtonHandler68 };...
Using AI Code Generation
1define('Mobile/SalesLogix/Views/OpportunityContact/List', [2], function(3) {4 return declare('Mobile.SalesLogix.Views.OpportunityContact.List', [List], {5 itemTemplate: new Simplate([6 '<h3>{%: $.ContactName %}</h3>',7 '<h4>{%: $.ContactTitle %}</h4>',8 '<h4>{%: $.AccountName %}</h4>',9 '<h4>{%: $.Role %}</h4>',10 '{% if ($.WebAddress) { %}',11 '{% } %}'12 calledText: 'Called ${0}',13 calledMobileNumberText: 'Called Mobile Number ${0}',14 calledWorkNumberText: 'Called Work Number ${0}',
Using AI Code Generation
1define('Mobile/SalesLogix/Views/Account/Edit', [2], function(3) {4 return declare('Mobile.SalesLogix.Views.Account.Edit', [Edit], {5 importSourceText: 'import source',6 init: function() {7 this.inherited(arguments);8 this.connect(this.fields.AccountManager, 'onChange', this.onAccountManagerChange);9 this.connect(this.fields.AccountSubType, 'onChange', this.onAccountSubTypeChange);10 this.connect(this.fields.AccountType, 'onChange', this.onAccountTypeChange);11 this.connect(this.fields.Status, 'onChange', this.onStatusChange);12 },13 applyContext: function(templateEntry) {14 this.inherited(arguments);15 if (this.options && this.options.fromContext) {
Using AI Code Generation
1define('Mobile/SalesLogix/Views/Opportunity/Edit', [2], function(3) {4 return declare('Mobile.SalesLogix.Views.Opportunity.Edit', [Edit], {5 potentialBaseText: 'potential (base)',6 potentialMyText: 'potential (my)',7 potentialOpportunityText: 'potential (opportunity)',
Using AI Code Generation
1define('Mobile/SalesLogix/Views/History/Edit', [2], function(3) {4 return declare('Mobile.SalesLogix.Views.History.Edit', [Edit, _RightDrawerEditMixin], {5 priorityTitleText: 'History - ${0}',6 leaderTitleText: 'Leader - ${0}',7 categoryTitleText: 'Category - ${0}',8 scheduledTitleText: 'Scheduled - ${0}',9 alarmTitleText: 'Alarm - ${0}',10 durationTitleText: 'Duration - ${0}',11 leaderFormatText: '${0} (${1})',12 categoryTitleFormatText: '${0} - ${1}',13 scheduledFormatText: '${0} ${1}',14 alarmFormatText: '${0} ${1}',15 durationFormatText: '${0}:${1}',16 calledText: 'Called ${0}',17 calledText: 'Called ${0}',18 emailedText: 'Emailed ${0}',
Using AI Code Generation
1define([2], function(3) {4 describe('argos-test', function() {5 it('should be an object', function() {6 expect(argosTest).toEqual(jasmine.any(Object));7 });8 it('should have a compareWithBaseline method', function() {9 expect(argosTest.compareWithBaseline).toEqual(jasmine.any(Function));10 });11 });12});13define([14], function(15) {16 describe('argos-test', function() {17 it('should be an object', function() {18 expect(argosTest).toEqual(jasmine.any(Object));19 });20 it('should have a compareWithBaseline method', function() {21 expect(argosTest.compareWithBaseline).toEqual(jasmine.any(Function));22 });23 it('should compare the given string with a baseline string', function() {24 var baseline = 'this is a baseline string';25 var test = 'this is a test string';26 var result = argosTest.compareWithBaseline(test, baseline);27 expect(result).toEqual(jasmine.any(Object));28 expect(result).toEqual({29 });30 });31 });32});
Using AI Code Generation
1define('Sage/Platform/Mobile/Tests/Utility', [2], function(3) {4 return declare('Sage.Platform.Mobile.Tests.Utility', null, {5 compareWithBaseline: function compareWithBaseline(actual, baseline) {6 var deferred = new Deferred();7 when(this._compare(actual, baseline), function(result) {8 if (result)9 {10 deferred.resolve();11 }12 {13 deferred.reject(new Error('actual and baseline are not equal'));14 }15 });16 return deferred.promise;17 },18 _compare: function _compare(actual, baseline) {19 var deferred = new Deferred();20 var self = this;21 when(this._getKeys(actual), function(actualKeys) {22 when(self._getKeys(baseline), function(baselineKeys) {23 var result = true;24 if (actualKeys.length !== baselineKeys.length)25 {26 result = false;27 }28 {29 array.forEach(actualKeys, function(key) {30 if (result)31 {32 if (array.indexOf(baselineKeys, key) === -1)33 {34 result = false;35 }36 else if (lang.isObject(actual[key]) && lang.isObject(baseline[key]))37 {38 when(self._compare(actual[key], baseline[key]), function(compResult) {39 if (!comp
Using AI Code Generation
1define([2], function(3) {4 return describe('Test', function() {5 it('should match baseline', function() {6 var page = new argosTest.Page();7 page.navigateTo('#test');8 compareWithBaseline(page);9 });10 });11});12## compareWithBaseline(page, options)13define([14], function(15) {16 return describe('Test', function() {17 it('should match baseline', function() {18 var page = new argosTest.Page();19 page.navigateTo('#test');20 compareWithBaseline(page, {21 });22 });23 });24});
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!!