diff --git a/package.json b/package.json index 0cb382d..f97507c 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "clean": "rimraf package-lock.json && rimraf node_modules && npm install", "build": "rimraf build && tsc", "watch": "tsc --watch", - "prettier": "prettier 'src/**/*.ts' --write --single-quote", + "prettier": "prettier 'src/**/*.ts' 'test/**/*.*' --write --single-quote", "prettier-check": "prettier 'src/**/*.ts' 'test/**/*.*' --check", "appium-home": "rm -rf /tmp/some-temp-dir && export APPIUM_HOME=/tmp/some-temp-dir", "test": "NODE_OPTIONS='--loader ts-node/esm' mocha --require ts-node/register test/**/*.ts", diff --git a/src/commands/element.ts b/src/commands/element.ts index 6af6510..8b14cbd 100644 --- a/src/commands/element.ts +++ b/src/commands/element.ts @@ -83,7 +83,8 @@ export async function setValue( ) { const driver = ELEMENT_CACHE.get(elementId); return await driver.command(`/element/${elementId}/value`, 'POST', { - text, + text: text && _.isArray(text) ? text.join('') : text, // text should always be a string + value: text && _.isString(text) ? [...text] : text, // value should always be a array of char }); } diff --git a/test/specs/test.e2e.js b/test/specs/test.e2e.js index c302062..027ddc2 100644 --- a/test/specs/test.e2e.js +++ b/test/specs/test.e2e.js @@ -5,7 +5,9 @@ async function performLogin(userName = 'admin', password = '1234') { const att = await browser.flutterByValueKey$('username_text_field'); console.log(await att.getAttribute('all')); await browser.flutterByValueKey$('username_text_field').clearValue(); - await browser.flutterByValueKey$('username_text_field').addValue(userName); + await $( + '//android.view.View[@content-desc="username_text_field"]/android.widget.EditText', + ).addValue(userName); await browser.flutterByValueKey$('password_text_field').clearValue(); await browser.flutterByValueKey$('password').addValue(password); diff --git a/test/unit/element.specs.ts b/test/unit/element.specs.ts index 497b082..6b90c42 100644 --- a/test/unit/element.specs.ts +++ b/test/unit/element.specs.ts @@ -222,7 +222,7 @@ describe('Element Interaction Functions', () => { mockDriver.command.calledWith( `/element/${elementId}/value`, 'POST', - { text }, + { text, value: [...text] }, ), ).to.be.true; });