froth-webdriverio-framework 1.0.87 → 1.0.89

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,11 +1,12 @@
1
1
 
2
2
  // Function to get data from the API using the Bearer token
3
+ const getLoginToken = require('./loginapi')
3
4
 
4
- async function getDbDetails(frothUrl,token,id) {
5
+ async function getDbDetails(frothUrl, token, id) {
5
6
 
6
7
  let jsondata = {};
7
8
  if (id != 0 || id != null || id != undefined) {
8
- const url = `https://${frothUrl}/api/automationsuite-retrieve/${id}/`;
9
+ const url = `https://${frothUrl}/api/dbconnection-retrieve/${id}/`;
9
10
 
10
11
  try {
11
12
  console.log("URL: " + url)
@@ -19,7 +20,7 @@ async function getDbDetails(frothUrl,token,id) {
19
20
  });
20
21
  if (response.ok) {
21
22
  jsondata = await response.json();
22
-
23
+ console.log("jsondata:" + JSON.stringify(jsondata))
23
24
  return jsondata;
24
25
 
25
26
  } else if (response.status === 401) { // Unauthorized, token expired
package/api/loginapi.js CHANGED
@@ -5,6 +5,7 @@
5
5
  async function getLoginToken(frothUrl, email, password) {
6
6
  try {
7
7
  const url = `https://${frothUrl}/api/login/`;
8
+ console.log("URL: " + url);
8
9
  const formData = new FormData();
9
10
  formData.append('email_or_username', email);
10
11
  formData.append('password', Buffer.from(password, 'base64').toString('utf-8'));
@@ -8,7 +8,7 @@ let scrollToRight = null;
8
8
  let scrollDownToView = null;
9
9
  let scrollRightToView = null;
10
10
  let verifyText = null;
11
- let connectToDB=null;
11
+ let connectToDB = null;
12
12
  if (process.env.LOCATION == 'local') {
13
13
 
14
14
  scrollToEnd = require("./scrollToEnd");
@@ -20,7 +20,7 @@ if (process.env.LOCATION == 'local') {
20
20
  scrollDownToView = require('./scrollDownToView');
21
21
  scrollRightToView = require('./scrollRightToView');
22
22
  verifyText = require('./verifyText');
23
- connectToDB=require('./connectToDB');
23
+ connectToDB = require('./connectToDB');
24
24
  } else {
25
25
  scrollToEnd = require('froth-webdriverio-framework/commonMethods/scrollToEnd');
26
26
  clickIfVisible = require('froth-webdriverio-framework/commonMethods/clickIfVisible');
@@ -31,10 +31,10 @@ if (process.env.LOCATION == 'local') {
31
31
  scrollDownToView = require('froth-webdriverio-framework/commonMethods/scrollDownToView');
32
32
  scrollRightToView = require('froth-webdriverio-framework/commonMethods/scrollRightToView');
33
33
  verifyText = require('froth-webdriverio-framework/commonMethods/verifyText');
34
- connectToDB=require('froth-webdriverio-framework/commonMethods/connectToDB');
34
+ connectToDB = require('froth-webdriverio-framework/commonMethods/connectToDB');
35
35
  }
36
36
  //export the variabels
37
- module.exports= {
37
+ module.exports = {
38
38
  scrollToEnd,
39
39
  clickIfVisible,
40
40
  verifyTextInFieldAttribute,
@@ -43,5 +43,6 @@ module.exports= {
43
43
  scrollToRight,
44
44
  scrollDownToView,
45
45
  scrollRightToView,
46
- verifyText
46
+ verifyText,
47
+ connectToDB
47
48
  };
@@ -1,11 +1,14 @@
1
1
 
2
2
  const dbinfo = require('../api/getDBdetails');
3
3
  const dbconnect = require('../db/dbconnections');
4
+ const getLoginToken = require('../api/loginapi');
5
+ // const { LocalStorage } = require('node-localstorage');
6
+ // global.BUFFER = new LocalStorage('./storage');
4
7
 
5
8
  async function connectToDB(id, querytype, query) {
6
9
  try {
7
10
  const jsondata = await dbinfo.getDbDetails(BUFFER.getItem("ORGANISATION_DOMAIN_URL"), BUFFER.getItem("LOGIN_TOKEN"), id);
8
- let connectionpool = await dbtype(jsondata.dbtype, jsondata);
11
+ let connectionpool = await dbtype(jsondata.database_type, jsondata);
9
12
  let result = await executeQuery(querytype, query, connectionpool);
10
13
  return result;
11
14
  } catch (error) {
@@ -17,8 +20,8 @@ async function dbtype(type, jsondata) {
17
20
  let connectionpool;
18
21
  try {
19
22
  switch (type) {
20
- case 'mysql':
21
- connectionpool = dbconnect.connectTomysql(jsondata.hostname, jsondata.username, jsondata.password, jsondata.dbname, jsondata.portnumber);
23
+ case 'MySQL':
24
+ connectionpool = dbconnect.connectTomysql(jsondata.host, jsondata.username, jsondata.password, jsondata.schema_name, jsondata.port_number);
22
25
  break;
23
26
 
24
27
  default:
@@ -51,4 +54,26 @@ async function executeQuery(querytype, query, connectionpool) {
51
54
  } catch (error) { console.error('Error querytype', error); }
52
55
  }
53
56
 
57
+ // async function main() {
58
+ // try {
59
+ // BUFFER.setItem("ORGANISATION_DOMAIN_URL","devapi.frothtestops.com");
60
+ // //const query = 'SELECT id,EventID,NoPlate FROM store_images limit 2';
61
+ // const token = await getLoginToken("devapi.frothtestops.com", "subhra.subudhi@roboticodigital.com", "V2VsY29tZUAxMjM=");
62
+ // if (!token) {
63
+ // throw new Error('Login failed, no token obtained');
64
+ // }
65
+ // BUFFER.setItem("LOGIN_TOKEN",token);
66
+
67
+ // const result = await connectToDB(3, 'select', 'SELECT id,EventID,NoPlate FROM store_images limit 2');
68
+ // console.log("results are :" + JSON.stringify(result, null, 2));
69
+ // const data=JSON.stringify(result, null, 2)
70
+ // console.log("data is :" + result.totalNumberOfRecords);
71
+ // console.log("data is :" + result.records[0].id);
72
+
73
+ // } catch (err) {
74
+ // console.log('Error connecting to database:', err.stack);
75
+ // }
76
+ // }
77
+
78
+ // main()
54
79
  module.exports = connectToDB;
@@ -12,7 +12,7 @@ const androidConfig = deepmerge.all([commonmobileconfig, {
12
12
  testObservability: true,
13
13
  // buildName: "ANDROID BUILD",
14
14
  // buildIdentifier: "ANDROID BUILD_" + process.env.BUILD_NUMBER,
15
- browserstackLocal: false,
15
+ browserstackLocal: process.env.BROWSERSTACK_LOCAL || false,
16
16
  opts: {
17
17
  forcelocal: false },
18
18
  app: process.env.BROWSERSTACK_APP_PATH
@@ -70,17 +70,17 @@ async function fetchDataFromDB(connectionpool, query) {
70
70
 
71
71
  // write main method to call the functions
72
72
 
73
- async function main() {
74
- try {
75
- const connection = await connectTomysql('10.0.0.6', 'root', 'password123', 'power_seraya_step', 3406);
76
- const query = 'SELECT id,EventID,NoPlate FROM store_images limit 2';
77
- await fetchDataFromDB(connection, query);
78
- } catch (err) {
79
- console.log('Error connecting to database:', err.stack);
80
- }
81
- }
73
+ // async function main() {
74
+ // try {
75
+ // const connection = await connectTomysql('10.0.0.6', 'root', 'password123', 'power_seraya_step', 3406);
76
+ // const query = 'SELECT id,EventID,NoPlate FROM store_images limit 2';
77
+ // await fetchDataFromDB(connection, query);
78
+ // } catch (err) {
79
+ // console.log('Error connecting to database:', err.stack);
80
+ // }
81
+ // }
82
82
 
83
- main()
83
+ // main()
84
84
  module.exports = {
85
85
  connectTomysql,
86
86
  fetchDataFromDB
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "froth-webdriverio-framework",
3
- "version": "1.0.87",
3
+ "version": "1.0.89",
4
4
  "readme": "WebdriverIO Integration",
5
5
  "description": "WebdriverIO and BrowserStack App Automate",
6
6
  "license": "MIT",
@@ -0,0 +1 @@
1
+ eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoiYWNjZXNzIiwiZXhwIjoxNzIwNTEyNDMxLCJpYXQiOjE3MjA1MDg4MzEsImp0aSI6ImQ5MTk3NGEzODc3OTQ5MzZiMzk3NGVkNTRhNzhhNDBkIiwidXNlcl9pZCI6OTl9.abE3jatzPNFvxj492YuzDUKwZjZRFOs3cWhxySJBN_k
@@ -0,0 +1 @@
1
+ devapi.frothtestops.com