Best JavaScript code snippet using appium-base-driver
finder-specs.js
Source:finder-specs.js
...65 beforeEach(function () {66 compareStub = sinon.stub(compareModule, 'compareImages').returns({rect, score});67 d = new PluginDriver();68 f = new ImageElementFinder(d);69 basicStub(d, f);70 });71 afterEach(function () {72 compareStub.restore();73 });74 it('should find an image element happypath', async function () {75 const imgElProto = await f.findByImage(template, {multiple: false});76 basicImgElVerify(imgElProto, f);77 });78 it('should find image elements happypath', async function () {79 compareStub.restore();80 compareStub = sinon.stub(compareModule, 'compareImages').returns([{rect, score}]);81 const els = await f.findByImage(template, {multiple: true});82 els.should.have.length(1);83 basicImgElVerify(els[0], f);...
index.js
Source:index.js
1/*2 * Copyright (C) 2021 Huawei Device Co., Ltd.3 * Licensed under the Apache License, Version 2.0 (the "License");4 * you may not use this file except in compliance with the License.5 * You may obtain a copy of the License at6 *7 * http://www.apache.org/licenses/LICENSE-2.08 *9 * Unless required by applicable law or agreed to in writing, software10 * distributed under the License is distributed on an "AS IS" BASIS,11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.12 * See the License for the specific language governing permissions and13 * limitations under the License.14 */15import rpc from '@ohos.rpc';16const CODE_BASIC = 1;17const CODE_TRANS_BASIC = 2;18const CODE_TRANS_ARRAY = 3;19const CODE_TRANS_STRING = 4;20const CODE_GET_OBJECT = 10;21const CODE_GET_OBJECTS = 11;22const CODE_GET_OBJECTS_MIX = 12;23const CODE_GET_OBJECT_CALL = 13;24const CODE_GET_OBJECT_DESC = 14;25const CODE_GET_CALL_PID = 20;26const CODE_GET_CALL_UID = 21;27const CODE_CHECK_LOCAL_CALL = 22;28let gBasicStub;29let gExtendStub;30let gBasicStubDesc = "Basic_Stub_Desc";31let gExtendStubDesc = "Extend_Stub_Desc";32const TAG = "[IpcRpcService]";33function logInfo(logContent) {34 console.info(TAG + logContent);35}36class BasicStub extends rpc.RemoteObject {37 constructor(des) {38 if (typeof des === 'string') {39 super(des, des.length);40 }41 return null;42 }43 onRemoteRequest(code, data, reply, option) {44 logInfo("start call code is:" + code)45 if (code === CODE_BASIC) {46 logInfo("entry basic(add)");47 let add1 = data.readInt();48 let add2 = data.readInt();49 let addResult = add1 + add2;50 logInfo("read data int1:" + add1 + ",int2:" + add2 + ",add rst:" + addResult);51 let isOk = reply.writeInt(addResult);52 logInfo("writeInt ret:" + isOk);53 return true;54 } else if(code === CODE_TRANS_BASIC) {55 logInfo("entry trans basic data type");56 this.transBasic(data, reply);57 return true;58 } else if (code === CODE_GET_OBJECT) {59 logInfo("entry get remote object(basic)")60 let strArray = data.readStringArray();61 logInfo("read string array:" + strArray);62 let isOk = reply.writeRemoteObject(gBasicStub);63 if (isOk) {64 logInfo("writeRemoteObject success");65 } else {66 logInfo("writeRemoteObject fail");67 }68 return true;69 } else if (code === CODE_GET_OBJECTS) {70 logInfo("entry get three remote object(basic)");71 let strArray = data.readStringArray();72 logInfo("read string array:" + strArray);73 let isOk = reply.writeRemoteObject(gBasicStub);74 if (isOk) {75 logInfo("writeRemoteObject1 success");76 } else {77 logInfo("writeRemoteObject1 fail");78 }79 isOk = reply.writeRemoteObject(gBasicStub);80 if (isOk) {81 logInfo("writeRemoteObject2 success");82 } else {83 logInfo("writeRemoteObject2 fail");84 }85 isOk = reply.writeRemoteObject(gBasicStub);86 if (isOk) {87 logInfo("writeRemoteObject3 success");88 } else {89 logInfo("writeRemoteObject3 fail");90 }91 return true;92 } else if (code === CODE_GET_OBJECTS_MIX) {93 logInfo("entry get two remote object(extend and basic)");94 let isOk = reply.writeRemoteObject(gExtendStub);95 if (isOk) {96 logInfo("writeRemoteObject[extend] success");97 } else {98 logInfo("writeRemoteObject[extend] fail");99 }100 isOk = reply.writeRemoteObject(gBasicStub);101 if (isOk) {102 logInfo("writeRemoteObject[basic] success");103 } else {104 logInfo("writeRemoteObject[basic] fail");105 }106 return true;107 } else if (code === CODE_GET_OBJECT_CALL) {108 logInfo("entry get remote object(extend) to call");109 let isOk = reply.writeRemoteObject(gExtendStub);110 if (isOk) {111 logInfo("writeRemoteObject[extend] success");112 } else {113 logInfo("writeRemoteObject[extend] fail");114 }115 return true;116 } else if (code === CODE_GET_OBJECT_DESC) {117 logInfo("entry get object desc(basic and extend)");118 let basicDesc = gBasicStub.getInterfaceDescriptor();119 let extendDesc = gExtendStub.getInterfaceDescriptor();120 let isOk = reply.writeString(basicDesc);121 if (isOk) {122 logInfo("writeString[basic] success");123 } else {124 logInfo("writeString[basic] fail");125 }126 isOk = reply.writeString(extendDesc);127 if (isOk) {128 logInfo("writeString[extend] success");129 } else {130 logInfo("writeString[extend] fail");131 }132 return true;133 } else if (code === CODE_GET_CALL_UID) {134 logInfo("entry get call uid");135 let callUid = rpc.IPCSkeleton.getCallingUid();136 logInfo("get call uid:" + callUid);137 let isOk = reply.writeInt(callUid);138 if (isOk) {139 logInfo("writeInt[call uid] success");140 } else {141 logInfo("writeInt[call uid] fail");142 }143 return true;144 } else if (code === CODE_GET_CALL_PID) {145 logInfo("entry get call pid");146 let callPid = rpc.IPCSkeleton.getCallingPid();147 logInfo("get call pid:" + callPid);148 let isOk = reply.writeInt(callPid);149 if (isOk) {150 logInfo("writeInt[call pid] success");151 } else {152 logInfo("writeInt[call pid] fail");153 }154 return true;155 } else if (code === CODE_CHECK_LOCAL_CALL) {156 logInfo("entry check local call");157 let isLocal = rpc.IPCSkeleton.isLocalCalling();158 logInfo("call isLocalCalling" + isLocal);159 let isOk = reply.writeBoolean(isLocal);160 if (isOk) {161 logInfo("writeBoolean[isLocal] success");162 } else {163 logInfo("writeBoolean[isLocal] fail");164 }165 return true;166 } else {167 logInfo("not support this code");168 return false;169 }170 logInfo("end call code is:" + code)171 }172 transBasic(data, reply) {173 logInfo("transBasic begin");174 let rByte = data.readByte();175 let rChar = data.readChar();176 let rShort = data.readShort();177 let rInt = data.readInt();178 let rLong = data.readLong();179 let rBoolean = data.readBoolean();180 let rFloat = data.readFloat();181 let rDouble = data.readDouble();182 logInfo(rByte);183 logInfo(rChar);184 logInfo(rShort);185 logInfo(rInt);186 logInfo(rLong);187 logInfo(rBoolean);188 logInfo(rFloat);189 logInfo(rDouble);190 reply.writeDouble(rDouble);191 reply.writeFloat(rFloat);192 reply.writeBoolean(rBoolean);193 reply.writeLong(rLong);194 reply.writeInt(rInt);195 reply.writeShort(rShort);196 reply.writeChar(rChar);197 reply.writeByte(rByte);198 logInfo("transBasic end");199 }200}201class ExtendStub extends rpc.RemoteObject {202 constructor(des) {203 if (typeof des === 'string') {204 super(des, des.length);205 }206 return null;207 }208 onRemoteRequest(code, data, reply, option) {209 logInfo("start call code is:" + code)210 if (code === CODE_BASIC) {211 let sub1 = data.readInt();212 let sub2 = data.readFloat();213 let subResult = sub1 - sub2;214 logInfo("read data int1:" + sub1 + ",int2:" + sub2 + ",sub rst:" + subResult);215 let isOk = reply.writeFloat(subResult);216 logInfo("writeInt ret:" + isOk);217 return true;218 } else {219 logInfo("not support this code");220 return false;221 }222 }223}224export default {225 data: {226 title: ""227 },228 onStart(want) {229 logInfo("onStart start");230 gBasicStub = new BasicStub(gBasicStubDesc);231 gExtendStub = new ExtendStub(gExtendStubDesc);232 logInfo("onStart end")233 },234 onStop() {235 logInfo('onStop');236 },237 onConnect(want) {238 logInfo('onConnect');239 return gBasicStub;240 },241 onReconnect(want) {242 logInfo('onReconnect');243 },244 onDisconnect() {245 logInfo('onDisConnect');246 },247 onCommand(want, restart, startId) {248 logInfo('onCommand');249 },...
basic.test.js
Source:basic.test.js
1import { createLocalVue, mount } from '@vue/test-utils'2import VueNestable from '../src/index'3import BasicStub from './stubs/Basic.vue'4const localVue = createLocalVue()5localVue.use(VueNestable)6describe('vue-nestable', () => {7 const wrapper = mount(BasicStub, { localVue })8 it('renders the correct markup', () => {9 expect(wrapper.contains(BasicStub)).toBe(true)10 expect(wrapper.find('.nestable').exists()).toBe(true)11 expect(wrapper.find('.nestable-item-content').exists()).toBe(true)12 expect(wrapper.find('ol.nestable-list.nestable-group').exists()).toBe(true)13 expect(wrapper.find('li.nestable-item').exists()).toBe(true)14 expect(wrapper.find('li.nestable-item .nestable-item-content').exists()).toBe(true)15 expect(wrapper.find('li.nestable-item').find('div').exists()).toBe(true)16 })17 it('renderes all the items', () => {18 expect(wrapper.findAll('li.nestable-item div div').length).toBe(4)19 expect(wrapper.html()).toContain('Andy')20 expect(wrapper.html()).toContain('Harry')21 expect(wrapper.html()).toContain('David')22 expect(wrapper.html()).toContain('Lisa')23 })24 it('respects the order of the items', () => {25 const items = wrapper.findAll('li.nestable-item div div')26 expect(items.at(0).text()).toContain('Andy')27 expect(items.at(1).text()).toContain('Harry')28 expect(items.at(2).text()).toContain('David')29 expect(items.at(3).text()).toContain('Lisa')30 })31 it('ensures the item 2 is nested under item 1', () => {32 const parent = wrapper.findAll('li.nestable-item').at(1)33 const children = parent.find('ol.nestable-list')34 expect(parent.find('.nestable-item-content div').text()).toContain('Harry')35 expect(children.exists()).toBe(true)36 expect(children.find('.nestable-item-content div').text()).toContain('David')37 })38 it('adds a custom class to the nestable-item if defined', () => {39 const items = wrapper.findAll('li.nestable-item')40 expect(items.at(0).classes()).toEqual(['nestable-item', 'nestable-item-0', 'purple-text'])41 expect(items.at(1).classes()).toEqual(['nestable-item', 'nestable-item-1'])42 expect(items.at(3).classes()).toEqual(['nestable-item', 'nestable-item-3', 'purple-text', 'red-text'])43 })...
character.test.js
Source:character.test.js
1const { expect, test } = require('@oclif/test')2const scraper = require('@tibia-suite/scraper')3const basicStub = require('../../../test/stubs/basicCharacterResponse.json')4const basicStoud = require('../../../test/stubs/basicCharacterStdout')5const complexStub = require('../../../test/stubs/complexCharacterResponse.json')6const complexStoud = require('../../../test/stubs/complexCharacterStdout')7const minifiedStoud = require('../../../test/stubs/minifiedCharacterStdout')8describe('@tibia-suite/cli character', () => {9 test10 .stdout()11 .command([12 'character'13 ])14 .exit(2)15 .it('throws error when name is not provided')16 test17 .stub(scraper, 'getCharacter', () => basicStub)18 .stdout()19 .command([20 'character',21 '--name',22 'Basic'23 ])24 .it('show character with basic information', ctx => {25 expect(ctx.stdout).to.equal(basicStoud)26 })27 test28 .stub(scraper, 'getCharacter', () => complexStub)29 .stdout()30 .command([31 'character',32 '--name',33 'Complex'34 ])35 .it('show character with complex information', ctx => {36 expect(ctx.stdout).to.equal(complexStoud)37 })38 test39 .stub(scraper, 'getCharacter', () => complexStub)40 .stdout()41 .command([42 'character',43 '--name',44 'Complex',45 '--minified'46 ])47 .it('show character with minified information', ctx => {48 expect(ctx.stdout).to.equal(minifiedStoud)49 })...
guilds.test.js
Source:guilds.test.js
1const { expect, test } = require('@oclif/test')2const scraper = require('@tibia-suite/scraper')3const basicStub = require('../../../test/stubs/guildsResponse.json')4const basicStdout = require('../../../test/stubs/guildsStdout')5const filteredStdout = require('../../../test/stubs/guildsFilteredStdout')6const insensitiveStdout = require('../../../test/stubs/guildsInsensitiveStdout')7describe('@tibia-suite/cli guilds', () => {8 test9 .stdout()10 .command([11 'guilds',12 '--server'13 ])14 .exit(2)15 .it('throws error when server is not provided')16 test17 .stub(scraper, 'getGuilds', () => basicStub)18 .stdout()19 .command([20 'guilds',21 '--server',22 'Basic'23 ])24 .it('show list of guilds for server', ctx => {25 expect(ctx.stdout).to.equal(basicStdout)26 })27 test28 .stub(scraper, 'getGuilds', () => basicStub)29 .stdout()30 .command([31 'guilds',32 '--server',33 'Basic',34 '--filter',35 'Al'36 ])37 .it('show filtered list of guilds for server', ctx => {38 expect(ctx.stdout).to.equal(filteredStdout)39 })40 test41 .stub(scraper, 'getGuilds', () => basicStub)42 .stdout()43 .command([44 'guilds',45 '--server',46 'Basic',47 '--filter',48 'Al',49 '--insensitive'50 ])51 .it('show insensitive filtered list of guilds for server', ctx => {52 expect(ctx.stdout).to.equal(insensitiveStdout)53 })...
import.test.js
Source:import.test.js
1import { createLocalVue, mount } from '@vue/test-utils'2import VueNestableInstall, { VueNestable, VueNestableHandle } from '../src/main'3import BasicStub from './stubs/Basic.vue'4describe('import', () => {5 it('ensures vue-nestable can be imported globally', () => {6 const localVue = createLocalVue()7 localVue.use(VueNestableInstall)8 const wrapper = mount(BasicStub, { localVue })9 expect(wrapper.contains(BasicStub)).toBe(true)10 expect(wrapper.find('.nestable').exists()).toBe(true)11 expect(wrapper.find('.nestable-item-content').exists()).toBe(true)12 })13 it('ensures the components can be imported on-demand', () => {14 expect(!!VueNestable).toBe(true)15 expect(!!VueNestableHandle).toBe(true)16 })...
slots.test.js
Source:slots.test.js
1import { createLocalVue, mount } from '@vue/test-utils'2import VueNestable from '../src/index'3import BasicStub from './stubs/Basic.vue'4const localVue = createLocalVue()5localVue.use(VueNestable)6describe('slots', () => {7 const wrapper = mount(BasicStub, { localVue })8 it('ensures the item and index is passed in a scoped slot', () => {9 const items = wrapper.findAll('li.nestable-item div div')10 expect(items.at(0).text()).toBe('0 - Andy')11 expect(items.at(1).text()).toBe('1 - Harry')12 expect(items.at(2).text()).toBe('0 - David')13 expect(items.at(3).text()).toBe('2 - Lisa')14 })...
Using AI Code Generation
1import { AppiumDriver, createDriver, nsCapabilities } from "nativescript-dev-appium";2import { assert } from "chai";3describe("sample scenario", () => {4let driver: AppiumDriver;5before(async () => {6driver = await createDriver();7});8after(async () => {9await driver.quit();10});11it("should pass", async () => {12await driver.basicStub();13});14});
Using AI Code Generation
1const BaseDriver = require('appium-base-driver');2const driver = new BaseDriver();3driver.basicStub();4const AndroidDriver = require('appium-android-driver');5const driver = new AndroidDriver();6driver.basicStub();7const IOSDriver = require('appium-ios-driver');8const driver = new IOSDriver();9driver.basicStub();10const WindowsDriver = require('appium-windows-driver');11const driver = new WindowsDriver();12driver.basicStub();13const MacDriver = require('appium-mac-driver');14const driver = new MacDriver();15driver.basicStub();16const YouiEngineDriver = require('appium-youiengine-driver');17const driver = new YouiEngineDriver();18driver.basicStub();19const EspressoDriver = require('appium-espresso-driver');20const driver = new EspressoDriver();21driver.basicStub();22const XCUITestDriver = require('appium-xcuitest-driver');23const driver = new XCUITestDriver();24driver.basicStub();25const UIAutomator2Driver = require('appium-uiautomator2-driver');26const driver = new UIAutomator2Driver();27driver.basicStub();28const WebdriverAgentDriver = require('appium-webdriveragent-driver');29const driver = new WebdriverAgentDriver();30driver.basicStub();31const WindowsAppDriver = require('appium-windows-app-driver');32const driver = new WindowsAppDriver();33driver.basicStub();34const FakeDriver = require('appium-fake-driver');35const driver = new FakeDriver();36driver.basicStub();37const FakeDriver = require('appium-fake-driver');38const driver = new FakeDriver();39driver.basicStub();
Using AI Code Generation
1const BaseDriver = require('appium-base-driver');2const basicStub = BaseDriver.prototype.basicStub;3const BaseDriver = require('appium-base-driver');4const basicStub = BaseDriver.prototype.basicStub;5const BaseDriver = require('appium-base-driver');6const basicStub = BaseDriver.prototype.basicStub;7const BaseDriver = require('appium-base-driver');8const basicStub = BaseDriver.prototype.basicStub;9const BaseDriver = require('appium-base-driver');10const basicStub = BaseDriver.prototype.basicStub;11const BaseDriver = require('appium-base-driver');12const basicStub = BaseDriver.prototype.basicStub;13const BaseDriver = require('appium-base-driver');14const basicStub = BaseDriver.prototype.basicStub;15const BaseDriver = require('appium-base-driver');16const basicStub = BaseDriver.prototype.basicStub;17const BaseDriver = require('appium-base-driver');18const basicStub = BaseDriver.prototype.basicStub;19const BaseDriver = require('appium-base-driver');20const basicStub = BaseDriver.prototype.basicStub;21const BaseDriver = require('appium-base-driver');22const basicStub = BaseDriver.prototype.basicStub;23const BaseDriver = require('appium-base-driver');24const basicStub = BaseDriver.prototype.basicStub;25const BaseDriver = require('appium-base-driver');26const basicStub = BaseDriver.prototype.basicStub;27const BaseDriver = require('appium-base-driver');28const basicStub = BaseDriver.prototype.basicStub;29const BaseDriver = require('appium-base-driver');30const basicStub = BaseDriver.prototype.basicStub;
Using AI Code Generation
1var AppiumBaseDriver = require('appium-base-driver');2var stubDriver = new AppiumBaseDriver();3stubDriver.basicStub();4var AppiumBaseDriver = require('appium-base-driver');5var stubDriver = new AppiumBaseDriver();6stubDriver.basicStub();7I am trying to use the Appium Base Driver as a dependency in my project. However, when I try to use the basicStub method of the Base Driver, I am getting an error. I am using the following code to use the method: var AppiumBaseDriver = require('appium-base-driver'); var stubDriver = new AppiumBaseDriver(); stubDriver.basicStub();
Using AI Code Generation
1describe('Appium Base Driver', () => {2 it('should invoke basicStub', () => {3 const driver = new AppiumDriver();4 driver.basicStub();5 });6});7class AppiumDriver {8 basicStub() {9 console.log('Basic Stub');10 }11}12{13 "dependencies": {14 },15 "devDependencies": {16 },17 "scripts": {18 },19}20class AppiumDriver {21 basicStub() {22 console.log('Basic Stub');23 }24}25class AppiumDriver {26 basicStub() {27 console.log('Basic Stub');28 }29}30class AppiumDriver {31 basicStub() {32 console.log('Basic Stub');33 }34}35class AppiumDriver {36 basicStub() {37 console.log('Basic Stub');38 }39}40class AppiumDriver {41 basicStub() {42 console.log('Basic Stub');43 }44}45class AppiumDriver {46 basicStub() {47 console.log('Basic Stub');48 }49}
Using AI Code Generation
1import { createDriver } from 'appium';2import { desiredCaps, serverConfig } from './config';3import { basicStub } from 'appium-base-driver';4const driver = createDriver(serverConfig, desiredCaps);5basicStub(driver, 'findElement');6driver.findElement('id', 'some_id').then((res) => {7 console.log(res);8});9export const desiredCaps = {10};11export const serverConfig = {12};
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!!