From 0c935b66f21d3cc983dc6e212338917b95901df9 Mon Sep 17 00:00:00 2001 From: Vincent Date: Fri, 3 Apr 2020 16:12:04 +1100 Subject: [PATCH] deleting messages init --- integration_test/add_friends_test.js | 3 ++- integration_test/closed_group_test.js | 3 ++- integration_test/common.js | 9 +++++---- integration_test/integration_test.js | 2 +- integration_test/link_device_test.js | 2 +- integration_test/message_functions_test.js | 18 +++++++++++++++--- integration_test/message_sync_test.js | 3 ++- integration_test/open_group_test.js | 3 ++- .../page-objects/conversation.page.js | 6 +++++- integration_test/registration_test.js | 3 ++- yarn.lock | 11 +++-------- 11 files changed, 40 insertions(+), 23 deletions(-) diff --git a/integration_test/add_friends_test.js b/integration_test/add_friends_test.js index a86dbf1ec..6b1d73670 100644 --- a/integration_test/add_friends_test.js +++ b/integration_test/add_friends_test.js @@ -1,7 +1,8 @@ /* eslint-disable func-names */ /* eslint-disable import/no-extraneous-dependencies */ -const common = require('./common'); const { afterEach, beforeEach, describe, it } = require('mocha'); + +const common = require('./common'); const ConversationPage = require('./page-objects/conversation.page'); describe('Add friends', function() { diff --git a/integration_test/closed_group_test.js b/integration_test/closed_group_test.js index 1f49e1d14..fec80c64a 100644 --- a/integration_test/closed_group_test.js +++ b/integration_test/closed_group_test.js @@ -1,7 +1,8 @@ /* eslint-disable func-names */ /* eslint-disable import/no-extraneous-dependencies */ -const common = require('./common'); const { afterEach, beforeEach, describe, it } = require('mocha'); +const common = require('./common'); + const ConversationPage = require('./page-objects/conversation.page'); describe('Closed groups', function() { diff --git a/integration_test/common.js b/integration_test/common.js index a81f4072c..5bf1c579e 100644 --- a/integration_test/common.js +++ b/integration_test/common.js @@ -4,15 +4,16 @@ const { Application } = require('spectron'); const path = require('path'); +const url = require('url'); +const http = require('http'); +const fse = require('fs-extra'); +const { exec } = require('child_process'); const chai = require('chai'); const chaiAsPromised = require('chai-as-promised'); const RegistrationPage = require('./page-objects/registration.page'); const ConversationPage = require('./page-objects/conversation.page'); -const { exec } = require('child_process'); -const url = require('url'); -const http = require('http'); -const fse = require('fs-extra'); + chai.should(); chai.use(chaiAsPromised); diff --git a/integration_test/integration_test.js b/integration_test/integration_test.js index 0b178aea7..911ed4985 100644 --- a/integration_test/integration_test.js +++ b/integration_test/integration_test.js @@ -6,12 +6,12 @@ const { before } = require('mocha'); const common = require('./common'); + // require('./registration_test'); // require('./open_group_test'); // require('./add_friends_test'); // require('./link_device_test'); // require('./closed_group_test'); - require('./message_functions_test'); diff --git a/integration_test/link_device_test.js b/integration_test/link_device_test.js index d0fd66a36..9cc8ca74a 100644 --- a/integration_test/link_device_test.js +++ b/integration_test/link_device_test.js @@ -2,8 +2,8 @@ /* eslint-disable more/no-then */ /* eslint-disable func-names */ /* eslint-disable import/no-extraneous-dependencies */ -const common = require('./common'); const { afterEach, beforeEach, describe, it } = require('mocha'); +const common = require('./common'); describe('Link Device', function() { let app; diff --git a/integration_test/message_functions_test.js b/integration_test/message_functions_test.js index 81e7906d8..d92ad9bbc 100644 --- a/integration_test/message_functions_test.js +++ b/integration_test/message_functions_test.js @@ -53,18 +53,30 @@ describe('Message Functions', function() { }); it('can delete message', async () => { - const messageText = 'delete me'; + const messageText = 'delete_me'; common.sendMessage(app, messageText); await app.client.waitForExist( ConversationPage.existingSendMessageText(messageText), - 3000 + 5000 ); await app2.client.waitForExist( ConversationPage.existingReceivedMessageText(messageText), - 5000 + 7000 ); + + // delete message in context menu + await app.client.element(ConversationPage.messageCtxMenu(messageText)).click(); + await app.client.element(ConversationPage.deleteMessageCtxButton).click(); + // delete messaage from modal + await app.client.waitForExist( + ConversationPage.deleteMessageModalButton, + 3000 + ); + await app.client.element(ConversationPage.deleteMessageModalButton).click(); + + // verify the message is actually deleted }); diff --git a/integration_test/message_sync_test.js b/integration_test/message_sync_test.js index 3d1b340ce..44676a280 100644 --- a/integration_test/message_sync_test.js +++ b/integration_test/message_sync_test.js @@ -1,8 +1,9 @@ /* eslint-disable func-names */ /* eslint-disable import/no-extraneous-dependencies */ -const common = require('./common'); const { afterEach, beforeEach, describe, it } = require('mocha'); +const common = require('./common'); + describe('Message Syncing', function() { let app; diff --git a/integration_test/open_group_test.js b/integration_test/open_group_test.js index 486a5256b..9f3d21fd9 100644 --- a/integration_test/open_group_test.js +++ b/integration_test/open_group_test.js @@ -1,7 +1,8 @@ /* eslint-disable func-names */ /* eslint-disable import/no-extraneous-dependencies */ -const common = require('./common'); const { afterEach, beforeEach, describe, it } = require('mocha'); + +const common = require('./common'); const ConversationPage = require('./page-objects/conversation.page'); describe('Open groups', function() { diff --git a/integration_test/page-objects/conversation.page.js b/integration_test/page-objects/conversation.page.js index 51b44b4ef..c8b358634 100644 --- a/integration_test/page-objects/conversation.page.js +++ b/integration_test/page-objects/conversation.page.js @@ -11,7 +11,7 @@ module.exports = { existingSendMessageText: textMessage => `//*[contains(@class, "module-message__text--outgoing") and .//span[contains(@class, "text-selectable")][contains(string(), '${textMessage}')]]`, existingFriendRequestText: textMessage => - `//*[contains(@class, "module-message-friend-request__container")and .//span[contains(@class, "text-selectable")][contains(string(), '${textMessage}')]]`, + `//*[contains(@class, "module-message-friend-request__container") and .//span[contains(@class, "text-selectable")][contains(string(), '${textMessage}')]]`, existingReceivedMessageText: textMessage => `//*[contains(@class, "module-message__text--incoming") and .//span[contains(@class, "text-selectable")][contains(string(), '${textMessage}')]]`, @@ -31,6 +31,10 @@ module.exports = { attachmentInput: '//*[contains(@class, "choose-file")]/input[@type="file"]', attachmentButton: '//*[contains(@class, "choose-file")]/button', + messageCtxMenu: message => `//div[contains(@class, "message-wrapper") and .//span[contains(@class, "text-selectable")][contains(string(), ${message})]]//div[contains(@class, 'module-message__buttons__menu')]`, + deleteMessageCtxButton: '//*[contains(@class, "react-contextmenu--visible")]/div[contains(string(), "Delete Message")]', + deleteMessageModalButton: '//*[contains(@class, "session-modal")]//div[contains(string(), "Delete") and contains(@class, "session-button")]', + // channels globeButtonSection: '//*[contains(@class,"session-icon-button") and .//*[contains(@class, "globe")]]', diff --git a/integration_test/registration_test.js b/integration_test/registration_test.js index 3e0a57aa7..595ead8e8 100644 --- a/integration_test/registration_test.js +++ b/integration_test/registration_test.js @@ -2,8 +2,9 @@ /* eslint-disable func-names */ /* eslint-disable import/no-extraneous-dependencies */ -const common = require('./common'); const { afterEach, beforeEach, describe, it } = require('mocha'); + +const common = require('./common'); const RegistrationPage = require('./page-objects/registration.page'); const ConversationPage = require('./page-objects/conversation.page'); diff --git a/yarn.lock b/yarn.lock index 6a4f27191..7a4aa95c2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6077,11 +6077,6 @@ lodash-es@^4.2.1: resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.15.tgz#21bd96839354412f23d7a10340e5eac6ee455d78" integrity sha512-rlrc3yU3+JNOpZ9zj5pQtxnx2THmvRykwL4Xlxoa8I9lHBlVbbyPhgyPMioxVZ4NqyxaVVtaJnzsyOidQIhyyQ== -lodash-es@^4.2.1: - version "4.17.15" - resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.15.tgz#21bd96839354412f23d7a10340e5eac6ee455d78" - integrity sha512-rlrc3yU3+JNOpZ9zj5pQtxnx2THmvRykwL4Xlxoa8I9lHBlVbbyPhgyPMioxVZ4NqyxaVVtaJnzsyOidQIhyyQ== - lodash.assign@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" @@ -8763,8 +8758,8 @@ redent@^1.0.0: resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94= dependencies: - loose-envify "^1.4.0" - symbol-observable "^1.2.0" + indent-string "^2.1.0" + strip-indent "^1.0.1" reduce-css-calc@^1.2.6: version "1.3.0" @@ -11230,7 +11225,7 @@ write-file-atomic@^1.1.4: dependencies: graceful-fs "^4.1.11" imurmurhash "^0.1.4" - signal-exit "^3.0.2" + slide "^1.1.5" write-file-atomic@^3.0.0: version "3.0.3"