Added the files.

This commit is contained in:
Batuhan Berk Başoğlu 2021-03-30 21:50:36 -04:00
commit 38ccdcbfe5
124 changed files with 32079 additions and 0 deletions

View file

@ -0,0 +1,11 @@
#!/bin/bash
set -ev
#run only on master
if [[ $TRAVIS_PULL_REQUEST == "false" ]] && [[ $TRAVIS_BRANCH == "master" ]]; then
npm install -g firebase-tools
npm install -g selenium-webdriver
npm install codecov.io coveralls
cd functions
npm install
cd ..
fi

View file

@ -0,0 +1,88 @@
// To run this script use this command
// node bs.js yourBSUserName yourBSKey
var webdriver = require('selenium-webdriver')
var test = require('./bs_test.js')
// Input capabilities
var iPhone = {
browserName: 'iPhone',
device: 'iPhone 7',
realMobile: 'true',
os_version: '10.3',
'browserstack.user': process.argv[2],
'browserstack.key': process.argv[3],
}
var android = {
browserName: 'android',
device: 'Samsung Galaxy S8',
realMobile: 'true',
os_version: '7.0',
'browserstack.user': process.argv[2],
'browserstack.key': process.argv[3],
}
var desktopFF = {
browserName: 'Firefox',
browser_version: '59.0',
os: 'Windows',
os_version: '10',
resolution: '1024x768',
'browserstack.user': process.argv[2],
'browserstack.key': process.argv[3],
}
var desktopEdge = {
browserName: 'Edge',
browser_version: '16.0',
os: 'Windows',
os_version: '10',
resolution: '1024x768',
'browserstack.user': process.argv[2],
'browserstack.key': process.argv[3],
}
var desktopIE = {
browserName: 'Chrome',
browser_version: '69.0',
os: 'Windows',
os_version: '10',
resolution: '1024x768',
'browserstack.user': process.argv[2],
'browserstack.key': process.argv[3],
}
/*
var iPhoneDriver = new webdriver.Builder()
.usingServer('http://hub-cloud.browserstack.com/wd/hub')
.withCapabilities(iPhone)
.build()
var androidDriver = new webdriver.Builder()
.usingServer('http://hub-cloud.browserstack.com/wd/hub')
.withCapabilities(android)
.build()
*/
var desktopFFDriver = new webdriver.Builder()
.usingServer('http://hub-cloud.browserstack.com/wd/hub')
.withCapabilities(desktopFF)
.build()
var desktopEdgeDriver = new webdriver.Builder()
.usingServer('http://hub-cloud.browserstack.com/wd/hub')
.withCapabilities(desktopEdge)
.build()
var desktopIEDriver = new webdriver.Builder()
.usingServer('http://hub-cloud.browserstack.com/wd/hub')
.withCapabilities(desktopIE)
.build()
//test.runTest(iPhoneDriver)
//test.runTest(androidDriver)
test.runTest(desktopFFDriver)
test.runTest(desktopEdgeDriver)
test.runTest(desktopIEDriver)

View file

@ -0,0 +1,62 @@
var webdriver = require('selenium-webdriver')
const sleep = ms => {
return new Promise(resolve => setTimeout(resolve, ms))
}
module.exports.runTest = async driver => {
try {
await driver.get('https://www.react-most-wanted.com')
await sleep(2000)
var signInButton = driver.wait(webdriver.until.elementLocated(webdriver.By.name('signin')))
await signInButton.click()
await sleep(2000)
var passwordButton = driver.wait(
webdriver.until.elementLocated(
webdriver.By.className(
'firebaseui-idp-button mdl-button mdl-js-button mdl-button--raised firebaseui-idp-password firebaseui-id-idp-button'
)
)
)
await passwordButton.click()
await sleep(2000)
var emailInput = driver.wait(webdriver.until.elementLocated(webdriver.By.name('email')))
await emailInput.sendKeys('test@test.com')
await sleep(2000)
var nextButton = driver.wait(
webdriver.until.elementLocated(
webdriver.By.className(
'firebaseui-id-submit firebaseui-button mdl-button mdl-js-button mdl-button--raised mdl-button--colored'
)
)
)
await nextButton.click()
await sleep(2000)
var passwordInput = driver.wait(webdriver.until.elementLocated(webdriver.By.name('password')))
await passwordInput.sendKeys('123456')
await sleep(2000)
await passwordInput.sendKeys(webdriver.Key.ENTER)
await sleep(2000)
driver.quit()
} catch (e) {
console.log('Test Failed')
console.error(e)
process.exitCode = 1
process.abort()
driver.quit()
}
}

View file

@ -0,0 +1,7 @@
#!/bin/bash
set -ev
#run only on master
if [[ $TRAVIS_PULL_REQUEST == "false" ]] && [[ $TRAVIS_BRANCH == "master" ]]; then
npm run build
fi

View file

@ -0,0 +1,8 @@
#!/bin/bash
set -ev
#run only on master
if [[ $TRAVIS_PULL_REQUEST == "false" ]] && [[ $TRAVIS_BRANCH == "master" ]]; then
firebase use prod --token $FIREBASE_TOKEN
firebase deploy --non-interactive --token $FIREBASE_TOKEN
node ./continuous_deployment/bs.js $BSNAME $BSKEY
fi