This is an automated email from the ASF dual-hosted git repository.
zrhoffman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficcontrol.git
The following commit(s) were added to refs/heads/master by this push:
new 5784d8e Replace uses of 'require' with 'import' (#5687)
5784d8e is described below
commit 5784d8ed8d7076de69811141c34e682f044f9680
Author: ocket8888 <[email protected]>
AuthorDate: Fri Apr 2 12:30:55 2021 -0600
Replace uses of 'require' with 'import' (#5687)
* remove uses of 'require' from API.ts
* remove uses of 'require' from page objects
* remove uses of 'require' from spec files
* Add typings for fs-extra
* Remove uses of 'require' from config
* Fix incorrect default imports
* Make config a private variable of API class again
* Fix randomization imports
---
traffic_portal/test/integration/CommonUtils/API.ts | 63 +++++++++++-----------
.../test/integration/PageObjects/ASNs.po.ts | 7 +--
.../test/integration/PageObjects/CDNPage.po.ts | 8 +--
.../test/integration/PageObjects/CacheGroup.po.ts | 8 +--
.../integration/PageObjects/CoordinatesPage.po.ts | 11 ++--
.../test/integration/PageObjects/Divisions.po.ts | 8 +--
.../test/integration/PageObjects/LoginPage.po.ts | 18 ++++---
.../test/integration/PageObjects/OriginsPage.po.ts | 9 ++--
.../integration/PageObjects/ParametersPage.po.ts | 11 ++--
.../PageObjects/PhysLocationsPage.po.ts | 9 ++--
.../integration/PageObjects/ProfilesPage.po.ts | 9 ++--
.../test/integration/PageObjects/RegionsPage.po.ts | 9 ++--
.../PageObjects/ServerCapabilitiesPage.po.ts | 8 +--
.../test/integration/PageObjects/ServersPage.po.ts | 14 +++--
.../PageObjects/ServiceCategories.po.ts | 8 +--
.../test/integration/PageObjects/Statuses.po.ts | 8 +--
.../test/integration/PageObjects/TenantsPage.po.ts | 8 +--
.../PageObjects/TopNavigationPage.po.ts | 9 ++--
.../test/integration/PageObjects/Types.po.ts | 10 ++--
.../test/integration/PageObjects/UsersPage.po.ts | 8 +--
traffic_portal/test/integration/config.ts | 24 ++++-----
traffic_portal/test/integration/package-lock.json | 19 +++++++
traffic_portal/test/integration/package.json | 1 +
traffic_portal/test/integration/pnpm-lock.yaml | 12 +++++
traffic_portal/test/integration/specs/ASNs.spec.ts | 15 +++---
traffic_portal/test/integration/specs/CDNs.spec.ts | 12 ++---
.../test/integration/specs/CacheGroup.spec.ts | 19 +++----
.../test/integration/specs/Coordinates.spec.ts | 17 +++---
.../test/integration/specs/Divisions.spec.ts | 15 +++---
.../test/integration/specs/Login.spec.ts | 2 +-
.../test/integration/specs/Origins.spec.ts | 17 +++---
.../test/integration/specs/Parameters.spec.ts | 17 +++---
.../test/integration/specs/PhysLocations.spec.ts | 19 ++++---
.../test/integration/specs/Profiles.spec.ts | 16 +++---
.../test/integration/specs/Regions.spec.ts | 15 +++---
.../integration/specs/ServerCapabilities.spec.ts | 13 ++---
.../specs/ServerServerCapabilities.spec.ts | 13 ++---
.../test/integration/specs/Servers.spec.ts | 15 +++---
.../integration/specs/ServiceCategories.spec.ts | 15 +++---
.../test/integration/specs/Statuses.spec.ts | 15 +++---
.../test/integration/specs/Types.spec.ts | 15 +++---
traffic_portal/test/integration/tsconfig.json | 1 +
42 files changed, 320 insertions(+), 230 deletions(-)
diff --git a/traffic_portal/test/integration/CommonUtils/API.ts
b/traffic_portal/test/integration/CommonUtils/API.ts
index e241045..ab4b572 100644
--- a/traffic_portal/test/integration/CommonUtils/API.ts
+++ b/traffic_portal/test/integration/CommonUtils/API.ts
@@ -18,34 +18,33 @@
*/
// API Utility
+import { Agent } from "https";
+
import axios from 'axios';
-import { config } from '../config';
+import randomIpv6 from "random-ipv6";
-const https = require('https');
+import { config, randomize } from '../config';
export class API {
- private config = require('../config');
- private randomIpv6 = require('random-ipv6');
- private randomize = this.config.randomize;
- private twoNumberRandomize = this.config.twoNumberRandomize;
- private cookie: string;
+ private cookie = "";
+ private readonly config = config;
constructor() {
axios.defaults.headers.common['Accept'] = 'application/json'
axios.defaults.headers.common['Authorization'] = 'No-Auth'
axios.defaults.headers.common['Content-Type'] = 'application/json'
- axios.defaults.httpsAgent = new https.Agent({ rejectUnauthorized:
false })
+ axios.defaults.httpsAgent = new Agent({ rejectUnauthorized: false })
}
Login = async function () {
try {
const response = await axios({
method: 'post',
- url: config.params.apiUrl + '/user/login',
+ url: this.config.params.apiUrl + '/user/login',
data: {
- u: config.params.login.username,
- p: config.params.login.password
+ u: this.config.params.login.username,
+ p: this.config.params.login.password
}
});
this.cookie = await response.headers["set-cookie"][0];
@@ -71,7 +70,7 @@ export class API {
case "post":
response = await axios({
method: method,
- url: config.params.apiUrl + route,
+ url: this.config.params.apiUrl + route,
headers: { Cookie: this.cookie},
data: data
});
@@ -79,23 +78,23 @@ export class API {
case "get":
response = await axios({
method: method,
- url: config.params.apiUrl + route,
+ url: this.config.params.apiUrl + route,
headers: { Cookie: this.cookie},
});
break;
case "delete":
if ((data.route).includes('?name')){
- data.route = data.route + this.randomize
+ data.route = data.route + randomize
}
if ((data.route).includes('?id')){
data.route = data.route + data.id;
}
if((data.route).includes('/service_categories/')){
- data.route = data.route + this.randomize
+ data.route = data.route + randomize
}
response = await axios({
method: method,
- url: config.params.apiUrl + data.route,
+ url: this.config.params.apiUrl + data.route,
headers: { Cookie: this.cookie},
});
break;
@@ -114,11 +113,11 @@ export class API {
GetId = async function (data) {
for(var i = 0; i < data.getRequest.length; i++) {
- var query = '?' + data.getRequest[i].queryKey + '=' +
data.getRequest[i].queryValue + this.randomize;
+ var query = '?' + data.getRequest[i].queryKey + '=' +
data.getRequest[i].queryValue + randomize;
try {
const response = await axios({
method: 'get',
- url: config.params.apiUrl + data.getRequest[i].route +
query,
+ url: this.config.params.apiUrl + data.getRequest[i].route
+ query,
headers: { Cookie: this.cookie},
});
@@ -142,48 +141,48 @@ export class API {
Randomize = function(data) {
if(data.hasOwnProperty('email')) {
- data['email'] = data.fullName + this.randomize + data.email;
+ data['email'] = data.fullName + randomize + data.email;
}
if(data.hasOwnProperty('fullName')) {
- data['fullName'] = data.fullName + this.randomize;
+ data['fullName'] = data.fullName + randomize;
}
if(data.hasOwnProperty('hostName')) {
- data['hostName'] = data.hostName + this.randomize;
+ data['hostName'] = data.hostName + randomize;
}
if(data.hasOwnProperty('ipAddress')) {
data['ipAddress'] = (Math.floor(Math.random() * 255) +
1)+"."+(Math.floor(Math.random() * 255))+"."+(Math.floor(Math.random() *
255))+"."+(Math.floor(Math.random() * 255));
}
if(data.hasOwnProperty('name')) {
- data['name'] = data.name + this.randomize;
+ data['name'] = data.name + randomize;
}
if(data.hasOwnProperty('requiredCapability')) {
- data['requiredCapability'] = data.requiredCapability +
this.randomize;
+ data['requiredCapability'] = data.requiredCapability + randomize;
}
if(data.hasOwnProperty('serverCapability')) {
- data['serverCapability'] = data.serverCapability + this.randomize;
+ data['serverCapability'] = data.serverCapability + randomize;
}
if(data.hasOwnProperty('username')) {
- data['username'] = data.username + this.randomize;
+ data['username'] = data.username + randomize;
}
if(data.hasOwnProperty('xmlId')) {
- data['xmlId'] = data.xmlId + this.randomize;
+ data['xmlId'] = data.xmlId + randomize;
}
if(data.hasOwnProperty('shortName')) {
- data['shortName'] = data.shortName + this.randomize;
+ data['shortName'] = data.shortName + randomize;
}
if(data.hasOwnProperty('divisionName')) {
- data['divisionName'] = data.divisionName + this.randomize;
+ data['divisionName'] = data.divisionName + randomize;
}
if(data.hasOwnProperty('domainName')) {
- data['domainName'] = data.domainName + this.randomize;
+ data['domainName'] = data.domainName + randomize;
}
if(data.hasOwnProperty('nodes')){
for(var i in data['nodes']){
- data['nodes'][i].cachegroup = data['nodes'][i].cachegroup +
this.randomize;
+ data['nodes'][i].cachegroup = data['nodes'][i].cachegroup +
randomize;
}
}
if(data.hasOwnProperty('interfaces')){
- let ipv6 = this.randomIpv6();
+ let ipv6 = randomIpv6();
for(var i in data['interfaces']){
for(var j in data['interfaces'][i].ipAddresses){
data['interfaces'][i].ipAddresses[j].address =
ipv6.toString();
@@ -207,7 +206,7 @@ export class API {
}
return null
} else if (response.status == undefined) {
- throw new Error(`Error requesting ${config.params.apiUrl}:
${response}`);
+ throw new Error(`Error requesting
${this.config.params.apiUrl}: ${response}`);
} else {
throw new Error('Login failed:\nResponse Status: ' +
response.statusText + '\nResponse Data: ' + response.data)
}
diff --git a/traffic_portal/test/integration/PageObjects/ASNs.po.ts
b/traffic_portal/test/integration/PageObjects/ASNs.po.ts
index a6c1764..560ecc5 100644
--- a/traffic_portal/test/integration/PageObjects/ASNs.po.ts
+++ b/traffic_portal/test/integration/PageObjects/ASNs.po.ts
@@ -17,6 +17,8 @@
* under the License.
*/
import { browser, by, element } from 'protractor'
+
+import { config, twoNumberRandomize } from '../config';
import { BasePage } from './BasePage.po';
import { SideNavigationPage } from './SideNavigationPage.po';
@@ -27,9 +29,8 @@ export class ASNsPage extends BasePage {
private txtCacheGroup = element(by.name("cachegroup"))
private btnDelete = element(by.xpath("//button[text()='Delete']"));
private txtConfirmName = element(by.name('confirmWithNameInput'));
- private config = require('../config');
- private randomize = this.config.randomize;
- private twoNumberRandomize = this.config.twoNumberRandomize;
+ private config = config;
+ private twoNumberRandomize = twoNumberRandomize;
async OpenASNsPage() {
let snp = new SideNavigationPage();
diff --git a/traffic_portal/test/integration/PageObjects/CDNPage.po.ts
b/traffic_portal/test/integration/PageObjects/CDNPage.po.ts
index 1c418f4..1944113 100644
--- a/traffic_portal/test/integration/PageObjects/CDNPage.po.ts
+++ b/traffic_portal/test/integration/PageObjects/CDNPage.po.ts
@@ -16,7 +16,9 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { browser, by, element, ExpectedConditions, protractor } from
'protractor';
+import { browser, by, element } from 'protractor';
+
+import { config, randomize } from "../config";
import { BasePage } from './BasePage.po';
import { SideNavigationPage } from './SideNavigationPage.po';
@@ -33,8 +35,8 @@ export class CDNPage extends BasePage {
private btnDiffSnapshot = element(by.xpath("//button[@title='Diff CDN
Snapshot']"));
private btnYes = element((by.xpath("//button[text()='Yes']")));
private btnQueueUpdates = element((by.xpath("//button[contains(text(),'Queue
Updates')]")));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private readonly config = config;
+ private randomize = randomize;
async OpenCDNsPage() {
let snp = new SideNavigationPage();
await snp.NavigateToCDNPage();
diff --git a/traffic_portal/test/integration/PageObjects/CacheGroup.po.ts
b/traffic_portal/test/integration/PageObjects/CacheGroup.po.ts
index 6f33d06..f85c318 100644
--- a/traffic_portal/test/integration/PageObjects/CacheGroup.po.ts
+++ b/traffic_portal/test/integration/PageObjects/CacheGroup.po.ts
@@ -16,7 +16,9 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { browser, by, element } from 'protractor'
+import { browser, by, element } from 'protractor';
+
+import { config, randomize } from "../config";
import { BasePage } from './BasePage.po';
import { SideNavigationPage } from '../PageObjects/SideNavigationPage.po';
@@ -36,8 +38,8 @@ export class CacheGroupPage extends BasePage {
private txtNoMatchingError = element(by.xpath("//td[text()='No data
available in table']"));
private txtConfirmCacheGroupName =
element(by.name("confirmWithNameInput"));
private btnDelete = element(by.buttonText('Delete'));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private config = config;
+ private randomize = randomize;
async OpenTopologyMenu() {
let snp = new SideNavigationPage();
diff --git a/traffic_portal/test/integration/PageObjects/CoordinatesPage.po.ts
b/traffic_portal/test/integration/PageObjects/CoordinatesPage.po.ts
index ac70b72..becb8f6 100644
--- a/traffic_portal/test/integration/PageObjects/CoordinatesPage.po.ts
+++ b/traffic_portal/test/integration/PageObjects/CoordinatesPage.po.ts
@@ -16,9 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { by, element, browser } from 'protractor'
+import { by, element, browser } from 'protractor';
+
+import { config, randomize } from "../config";
import { BasePage } from './BasePage.po';
import { SideNavigationPage } from './SideNavigationPage.po';
+
export class CoordinatesPage extends BasePage {
private btnCreateNewCoordinates =
element(by.xpath("//button[@title='Create Coordinate']"));
@@ -29,8 +32,8 @@ export class CoordinatesPage extends BasePage {
private btnDelete = element(by.buttonText('Delete'));
private btnYes = element(by.buttonText('Yes'));
private txtConfirmName = element(by.name('confirmWithNameInput'));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private readonly config = config;
+ private randomize = randomize;
async OpenCoordinatesPage() {
let snp = new SideNavigationPage();
@@ -115,4 +118,4 @@ export class CoordinatesPage extends BasePage {
return result;
}
-}
\ No newline at end of file
+}
diff --git a/traffic_portal/test/integration/PageObjects/Divisions.po.ts
b/traffic_portal/test/integration/PageObjects/Divisions.po.ts
index 7dbe574..34fe322 100644
--- a/traffic_portal/test/integration/PageObjects/Divisions.po.ts
+++ b/traffic_portal/test/integration/PageObjects/Divisions.po.ts
@@ -16,7 +16,9 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { browser, by, element } from 'protractor'
+import { browser, by, element } from 'protractor';
+
+import { config, randomize } from '../config';
import { BasePage } from './BasePage.po';
import { SideNavigationPage } from './SideNavigationPage.po';
@@ -27,8 +29,8 @@ export class DivisionsPage extends BasePage {
private txtName = element(by.id('name'));
private btnDelete = element(by.xpath("//button[text()='Delete']"));
private txtConfirmName = element(by.name('confirmWithNameInput'));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private readonly config = config;
+ private randomize = randomize;
async OpenDivisionsPage(){
let snp = new SideNavigationPage();
diff --git a/traffic_portal/test/integration/PageObjects/LoginPage.po.ts
b/traffic_portal/test/integration/PageObjects/LoginPage.po.ts
index b3c4201..1db93e0 100644
--- a/traffic_portal/test/integration/PageObjects/LoginPage.po.ts
+++ b/traffic_portal/test/integration/PageObjects/LoginPage.po.ts
@@ -16,7 +16,9 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { browser, by, element} from 'protractor'
+import { browser, by, element} from 'protractor';
+
+import { config, randomize } from "../config";
import { BasePage } from './BasePage.po'
interface LoginData {
@@ -31,10 +33,10 @@ export class LoginPage extends BasePage{
private btnLogin = element(by.name("loginSubmit"))
private lnkResetPassword= element (by.xpath("//button[text()='Reset
Password']"))
private lblUserName = element(by.xpath("//span[@id='headerUsername']"))
- private config = require('../config');
- private randomize = this.config.randomize;
-
-
+ private readonly config = config;
+ private randomize = randomize;
+
+
async Login(login:LoginData){
let result = false;
const basePage = new BasePage();
@@ -42,12 +44,12 @@ export class LoginPage extends BasePage{
await this.txtUserName.sendKeys(login.username)
await this.txtPassword.sendKeys(login.password)
await browser.actions().mouseMove(this.btnLogin).perform();
- await browser.actions().click(this.btnLogin).perform();
+ await browser.actions().click(this.btnLogin).perform();
}else{
await this.txtUserName.sendKeys(login.username+this.randomize)
await this.txtPassword.sendKeys(login.password)
await browser.actions().mouseMove(this.btnLogin).perform();
- await browser.actions().click(this.btnLogin).perform();
+ await browser.actions().click(this.btnLogin).perform();
}
if(await browser.getCurrentUrl() === browser.params.baseUrl +
"#!/login"){
result = await basePage.GetOutputMessage().then(value => value ===
login.validationMessage);
@@ -63,7 +65,7 @@ export class LoginPage extends BasePage{
if(await this.lblUserName.getText() === 'admin' || await
this.lblUserName.getText() === login.username+this.randomize){
return true;
}else{
- return false;
+ return false;
}
}
};
diff --git a/traffic_portal/test/integration/PageObjects/OriginsPage.po.ts
b/traffic_portal/test/integration/PageObjects/OriginsPage.po.ts
index 32aa0ed..572a8ff 100644
--- a/traffic_portal/test/integration/PageObjects/OriginsPage.po.ts
+++ b/traffic_portal/test/integration/PageObjects/OriginsPage.po.ts
@@ -16,9 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { browser, by, element } from 'protractor'
+import { browser, by, element } from 'protractor';
+
+import { config, randomize } from "../config";
import { BasePage } from './BasePage.po';
import { SideNavigationPage } from './SideNavigationPage.po';
+
export class OriginsPage extends BasePage {
private btnCreateNewOrigins = element(by.xpath("//button[@title='Create
Origin']"));
private txtSearch =
element(by.id('originsTable_filter')).element(by.css('label input'));
@@ -29,8 +32,8 @@ export class OriginsPage extends BasePage {
private txtDeliveryService = element(by.name("deliveryServiceId"));
private btnDelete = element(by.xpath("//button[text()='Delete']"));
private txtConfirmName = element(by.name('confirmWithNameInput'));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private readonly config = config;
+ private randomize = randomize;
async OpenOriginsPage() {
let snp = new SideNavigationPage();
await snp.NavigateToOriginsPage();
diff --git a/traffic_portal/test/integration/PageObjects/ParametersPage.po.ts
b/traffic_portal/test/integration/PageObjects/ParametersPage.po.ts
index 8a2c5ba..b4c388d 100644
--- a/traffic_portal/test/integration/PageObjects/ParametersPage.po.ts
+++ b/traffic_portal/test/integration/PageObjects/ParametersPage.po.ts
@@ -16,9 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { by, element } from 'protractor'
+import { by, element } from 'protractor';
+
+import { config, randomize } from "../config";
import { BasePage } from './BasePage.po';
import { SideNavigationPage } from './SideNavigationPage.po';
+
export class ParametersPage extends BasePage {
private btnCreateNewParameter = element(by.xpath("//button[@title='Create
Parameter']"));
@@ -32,8 +35,8 @@ export class ParametersPage extends BasePage {
private btnDelete = element(by.buttonText('Delete'));
private btnYes = element(by.buttonText('Yes'));
private txtConfirmName = element(by.name('confirmWithNameInput'));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private readonly config = config;
+ private randomize = randomize;
async OpenParametersPage() {
let snp = new SideNavigationPage();
@@ -112,4 +115,4 @@ export class ParametersPage extends BasePage {
})
return result;
}
-}
\ No newline at end of file
+}
diff --git
a/traffic_portal/test/integration/PageObjects/PhysLocationsPage.po.ts
b/traffic_portal/test/integration/PageObjects/PhysLocationsPage.po.ts
index 880aa5c..ab7547c 100644
--- a/traffic_portal/test/integration/PageObjects/PhysLocationsPage.po.ts
+++ b/traffic_portal/test/integration/PageObjects/PhysLocationsPage.po.ts
@@ -16,9 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { by, element } from 'protractor'
+import { by, element } from 'protractor';
+
+import { config, randomize } from '../config';
import { BasePage } from './BasePage.po';
import { SideNavigationPage } from './SideNavigationPage.po';
+
export class PhysLocationsPage extends BasePage {
private btnCreateNewPhysLocation =
element(by.name('createPhysLocationButton'));
@@ -37,8 +40,8 @@ export class PhysLocationsPage extends BasePage {
private mnuPhysLocationsTable = element(by.id('physLocationsTable'));
private btnDelete = element(by.buttonText('Delete'));
private txtConfirmName = element(by.name('confirmWithNameInput'));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private readonly config = config;
+ private randomize = randomize;
async OpenPhysLocationPage() {
let snp = new SideNavigationPage();
diff --git a/traffic_portal/test/integration/PageObjects/ProfilesPage.po.ts
b/traffic_portal/test/integration/PageObjects/ProfilesPage.po.ts
index 30e6280..f2ca730 100644
--- a/traffic_portal/test/integration/PageObjects/ProfilesPage.po.ts
+++ b/traffic_portal/test/integration/PageObjects/ProfilesPage.po.ts
@@ -16,9 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { browser, by, element } from 'protractor'
+import { browser, by, element } from 'protractor';
+
+import { config, randomize } from '../config';
import { BasePage } from './BasePage.po';
import { SideNavigationPage } from './SideNavigationPage.po';
+
export class ProfilesPage extends BasePage {
private btnCreateNewProfile = element(by.name('createProfileButton'));
@@ -37,8 +40,8 @@ export class ProfilesPage extends BasePage {
private txtCompareDropdown2 = element(by.name('compareDropdown2'));
private btnCompareSubmit = element(by.name('compareSubmit'));
private mnuCompareTable =
element(by.id('profilesParamsCompareTable_wrapper'));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private readonly config = config;
+ private randomize = randomize;
async OpenProfilesPage() {
let snp = new SideNavigationPage();
await snp.NavigateToProfilesPage();
diff --git a/traffic_portal/test/integration/PageObjects/RegionsPage.po.ts
b/traffic_portal/test/integration/PageObjects/RegionsPage.po.ts
index 7f7454f..124d013 100644
--- a/traffic_portal/test/integration/PageObjects/RegionsPage.po.ts
+++ b/traffic_portal/test/integration/PageObjects/RegionsPage.po.ts
@@ -16,9 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { browser, by, element } from 'protractor'
+import { browser, by, element } from 'protractor';
+
+import { config, randomize } from '../config';
import { BasePage } from './BasePage.po';
import { SideNavigationPage } from './SideNavigationPage.po';
+
export class RegionsPage extends BasePage {
private btnCreateNewRegions = element(by.name('createRegionButton'));
private txtSearch =
element(by.id('regionsTable_filter')).element(by.css('label input'));
@@ -26,8 +29,8 @@ export class RegionsPage extends BasePage {
private txtDivision = element(by.name('division'));
private btnDelete = element(by.xpath("//button[text()='Delete']"));
private txtConfirmName = element(by.name('confirmWithNameInput'));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private readonly config = config;
+ private randomize = randomize;
async OpenRegionsPage(){
let snp = new SideNavigationPage();
await snp.NavigateToRegionsPage();
diff --git
a/traffic_portal/test/integration/PageObjects/ServerCapabilitiesPage.po.ts
b/traffic_portal/test/integration/PageObjects/ServerCapabilitiesPage.po.ts
index c32d3c4..4e4fa4f 100644
--- a/traffic_portal/test/integration/PageObjects/ServerCapabilitiesPage.po.ts
+++ b/traffic_portal/test/integration/PageObjects/ServerCapabilitiesPage.po.ts
@@ -16,9 +16,11 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { ExpectedConditions, browser, by, element } from 'protractor'
+import { ExpectedConditions, browser, by, element } from 'protractor';
+
import { BasePage } from './BasePage.po';
import {SideNavigationPage} from '../PageObjects/SideNavigationPage.po';
+import { config, randomize } from '../config';
export class ServerCapabilitiesPage extends BasePage{
@@ -37,8 +39,8 @@ export class ServerCapabilitiesPage extends BasePage{
private btnAddCapabilities = element(by.name('addCapabilityBtn'));
private selectCapabilities = element(by.name('selectFormDropdown'));
private lnkToggleLeftNavigationView = element(by.id('menu_toggle'));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private readonly config = config;
+ private randomize = randomize;
async OpenServerCapabilityPage(){
diff --git a/traffic_portal/test/integration/PageObjects/ServersPage.po.ts
b/traffic_portal/test/integration/PageObjects/ServersPage.po.ts
index a066797..8a20702 100644
--- a/traffic_portal/test/integration/PageObjects/ServersPage.po.ts
+++ b/traffic_portal/test/integration/PageObjects/ServersPage.po.ts
@@ -16,9 +16,13 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { browser, by, element, ExpectedConditions } from 'protractor'
+import { browser, by, element, ExpectedConditions } from 'protractor';
+
+import randomIpv6 from "random-ipv6";
+
import { BasePage } from './BasePage.po';
import {SideNavigationPage} from '../PageObjects/SideNavigationPage.po';
+import { config, randomize } from '../config';
export class ServersPage extends BasePage {
@@ -102,9 +106,9 @@ export class ServersPage extends BasePage {
private btnMoreCreateServer = element(by.name("moreBtn"))
private btnCreateServer = element(by.name("createServerMenuItem"))
private txtQuickSearch = element(by.id("quickSearch"));
- private config = require('../config');
- private randomize = this.config.randomize;
- private randomIpv6 = require('random-ipv6');
+ private readonly config = config;
+ private randomize = randomize;
+
async OpenServerPage(){
let snp = new SideNavigationPage();
await snp.NavigateToServersPage();
@@ -130,7 +134,7 @@ export class ServersPage extends BasePage {
let basePage = new BasePage();
let networkIp = Math.round(Math.random() * 100).toString()+ "." +
Math.round(Math.random() * 100).toString() + "." + Math.round(Math.random() *
100).toString() +
"." + Math.round(Math.random() * 100).toString();
- let ipv6 = this.randomIpv6();
+ let ipv6 = randomIpv6();
await this.btnMoreCreateServer.click();
await this.btnCreateServer.click();
await this.txtStatus.sendKeys(server.Status);
diff --git
a/traffic_portal/test/integration/PageObjects/ServiceCategories.po.ts
b/traffic_portal/test/integration/PageObjects/ServiceCategories.po.ts
index 4d28f14..003331b 100644
--- a/traffic_portal/test/integration/PageObjects/ServiceCategories.po.ts
+++ b/traffic_portal/test/integration/PageObjects/ServiceCategories.po.ts
@@ -16,7 +16,9 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { browser, by, element } from 'protractor'
+import { browser, by, element } from 'protractor';
+
+import { config, randomize } from '../config';
import { BasePage } from './BasePage.po';
import { SideNavigationPage } from './SideNavigationPage.po';
@@ -29,8 +31,8 @@ export class ServiceCategoriesPage extends BasePage {
private btnDelete = element(by.buttonText('Delete'));
private txtConfirmName = element(by.name('confirmWithNameInput'));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private config = config;
+ private randomize = randomize;
async OpenServicesMenu() {
let snp = new SideNavigationPage();
diff --git a/traffic_portal/test/integration/PageObjects/Statuses.po.ts
b/traffic_portal/test/integration/PageObjects/Statuses.po.ts
index b094749..937968a 100644
--- a/traffic_portal/test/integration/PageObjects/Statuses.po.ts
+++ b/traffic_portal/test/integration/PageObjects/Statuses.po.ts
@@ -16,7 +16,9 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { browser, by, element } from 'protractor'
+import { browser, by, element } from 'protractor';
+
+import { config, randomize } from '../config';
import { BasePage } from './BasePage.po';
import { SideNavigationPage } from './SideNavigationPage.po';
@@ -27,8 +29,8 @@ export class StatusesPage extends BasePage {
private txtSearch =
element(by.id('statusesTable_filter')).element(by.css('label input'));
private btnDelete = element(by.buttonText('Delete'));
private txtConfirmName = element(by.name('confirmWithNameInput'));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private config = config;
+ private randomize = randomize;
async OpenStatusesPage() {
let snp = new SideNavigationPage();
diff --git a/traffic_portal/test/integration/PageObjects/TenantsPage.po.ts
b/traffic_portal/test/integration/PageObjects/TenantsPage.po.ts
index 129cd45..8823ecc 100644
--- a/traffic_portal/test/integration/PageObjects/TenantsPage.po.ts
+++ b/traffic_portal/test/integration/PageObjects/TenantsPage.po.ts
@@ -16,7 +16,9 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { by, element } from 'protractor'
+import { by, element } from 'protractor';
+
+import { config, randomize } from '../config';
import { BasePage } from './BasePage.po';
import {SideNavigationPage} from './SideNavigationPage.po';
export class TenantsPage extends BasePage {
@@ -29,8 +31,8 @@ export class TenantsPage extends BasePage {
private mnuTenantTable = element(by.id('tenantsTable'));
private btnDelete = element(by.buttonText('Delete'));
private txtConfirmTenantName = element(by.name('confirmWithNameInput'));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private readonly config = config;
+ private randomize = randomize;
async OpenTenantPage(){
let snp = new SideNavigationPage();
diff --git
a/traffic_portal/test/integration/PageObjects/TopNavigationPage.po.ts
b/traffic_portal/test/integration/PageObjects/TopNavigationPage.po.ts
index bb05437..ad41310 100644
--- a/traffic_portal/test/integration/PageObjects/TopNavigationPage.po.ts
+++ b/traffic_portal/test/integration/PageObjects/TopNavigationPage.po.ts
@@ -16,6 +16,8 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { existsSync, readdirSync, unlink } from "fs";
+
import { browser, by, element, ExpectedConditions } from 'protractor';
import { BasePage } from './BasePage.po';
@@ -76,22 +78,21 @@ export class TopNavigationPage extends BasePage{
let filename= "";
let result = false;
let readme = 'Readme.md';
- const fs = require('fs');
const folder = 'Downloads';
await this.btnDBDump.click();
await browser.wait(async function(){
- await fs.readdirSync(folder).forEach(file => {
+ await readdirSync(folder).forEach(file => {
if (file != readme){
filename = file;
}
});
}, 30*1000, 'File has not downloaded within 30
seconds').catch(function(){
- if(fs.existsSync(`Downloads/${filename}`))
+ if(existsSync(`Downloads/${filename}`))
{
//if file exist result will be true
result = true;
//delete the file
- fs.unlink(`Downloads/${filename}`, (err) => {
+ unlink(`Downloads/${filename}`, (err) => {
if (err) throw err;
});
}
diff --git a/traffic_portal/test/integration/PageObjects/Types.po.ts
b/traffic_portal/test/integration/PageObjects/Types.po.ts
index 8656e67..03c0c67 100644
--- a/traffic_portal/test/integration/PageObjects/Types.po.ts
+++ b/traffic_portal/test/integration/PageObjects/Types.po.ts
@@ -16,9 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { browser, by, element } from 'protractor'
+import { browser, by, element } from 'protractor';
+
+import { config, randomize } from '../config';
import { BasePage } from './BasePage.po';
import { SideNavigationPage } from './SideNavigationPage.po';
+
export class TypesPage extends BasePage {
private btnCreateNewType = element(by.xpath("//button[@title='Create
Type']//i[1]"));
private txtName = element(by.id('name'));
@@ -26,8 +29,9 @@ export class TypesPage extends BasePage {
private txtSearch =
element(by.id('typesTable_filter')).element(by.css('label input'));
private btnDelete = element(by.buttonText('Delete'));
private txtConfirmName = element(by.name('confirmWithNameInput'));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private readonly config = config;
+ private randomize = randomize;
+
async OpenTypesPage() {
let snp = new SideNavigationPage();
await snp.NavigateToTypesPage();
diff --git a/traffic_portal/test/integration/PageObjects/UsersPage.po.ts
b/traffic_portal/test/integration/PageObjects/UsersPage.po.ts
index 311d866..125afb4 100644
--- a/traffic_portal/test/integration/PageObjects/UsersPage.po.ts
+++ b/traffic_portal/test/integration/PageObjects/UsersPage.po.ts
@@ -16,9 +16,11 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { by, element } from 'protractor'
+import { by, element } from 'protractor';
+
import { BasePage } from './BasePage.po';
import {SideNavigationPage} from '../PageObjects/SideNavigationPage.po';
+import { config, randomize } from '../config';
export class UsersPage extends BasePage {
@@ -31,8 +33,8 @@ export class UsersPage extends BasePage {
private txtPassword = element(by.name('uPass'));
private txtConfirmPassword = element(by.name('confirmPassword'));
private txtPublicSSHKey = element(by.name('publicSshKey'));
- private config = require('../config');
- private randomize = this.config.randomize;
+ private readonly config = config;
+ private randomize = randomize;
async OpenUserPage(){
let snp = new SideNavigationPage();
diff --git a/traffic_portal/test/integration/config.ts
b/traffic_portal/test/integration/config.ts
index c04a2c5..0b244f3 100644
--- a/traffic_portal/test/integration/config.ts
+++ b/traffic_portal/test/integration/config.ts
@@ -16,26 +16,26 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+import { resolve } from "path";
+
+import { emptyDir } from "fs-extra";
+import { Config, browser } from 'protractor';
+import HtmlReporter from "protractor-beautiful-reporter";
+
import { API } from './CommonUtils/API';
-import { Config, browser } from 'protractor'
import * as conf from "./config.json"
-let path = require('path');
-let downloadsPath = path.resolve('Downloads');
-let randomize = Math.random().toString(36).substring(3, 7);
-let HtmlReporter = require('protractor-beautiful-reporter');
-let twoNumberRandomize = Math.floor(Math.random() * 101);
-exports.twoNumberRandomize = twoNumberRandomize;
-exports.randomize = randomize;
+let downloadsPath = resolve('Downloads');
+export const randomize = Math.random().toString(36).substring(3, 7);
+export const twoNumberRandomize = Math.floor(Math.random() * 101);
export let config: Config = conf;
config.capabilities.chromeOptions.prefs.download.default_directory =
downloadsPath;
config.onPrepare = async function () {
await browser.waitForAngularEnabled(true);
- var fs = require('fs-extra');
-
- fs.emptyDir('./Reports/', function (err) {
+ emptyDir('./Reports/', function (err) {
console.log(err);
});
@@ -54,7 +54,7 @@ config.onPrepare = async function () {
try {
let api = new API();
let setupFile = 'Data/Prerequisites/user.setup.json';
- let setupData = JSON.parse(fs.readFileSync(setupFile));
+ let setupData = JSON.parse(readFileSync(setupFile, "utf8"));
let output = await api.UseAPI(setupData);
if (output != null){
throw new Error(output)
diff --git a/traffic_portal/test/integration/package-lock.json
b/traffic_portal/test/integration/package-lock.json
index 5cc6a4d..3387bc3 100644
--- a/traffic_portal/test/integration/package-lock.json
+++ b/traffic_portal/test/integration/package-lock.json
@@ -26,6 +26,7 @@
"xlsx": "^0.15.1"
},
"devDependencies": {
+ "@types/fs-extra": "^9.0.9",
"@types/jasmine": "^3.4.6",
"@types/node": "^12.12.0",
"jasmine": "^3.5.0",
@@ -33,6 +34,15 @@
"typescript": "^3.6.4"
}
},
+ "node_modules/@types/fs-extra": {
+ "version": "9.0.9",
+ "resolved":
"https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.9.tgz",
+ "integrity":
"sha512-5TqDycCl0oMzwzd1cIjSJWMKMvLCDVErle4ZTjU4EmHDURR/+yZghe6GDHMCpHtcVfq0x0gMoOM546/5TbYHrg==",
+ "dev": true,
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
"node_modules/@types/glob": {
"version": "7.1.3",
"resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz",
@@ -2563,6 +2573,15 @@
}
},
"dependencies": {
+ "@types/fs-extra": {
+ "version": "9.0.9",
+ "resolved":
"https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.9.tgz",
+ "integrity":
"sha512-5TqDycCl0oMzwzd1cIjSJWMKMvLCDVErle4ZTjU4EmHDURR/+yZghe6GDHMCpHtcVfq0x0gMoOM546/5TbYHrg==",
+ "dev": true,
+ "requires": {
+ "@types/node": "*"
+ }
+ },
"@types/glob": {
"version": "7.1.3",
"resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz",
diff --git a/traffic_portal/test/integration/package.json
b/traffic_portal/test/integration/package.json
index 0aa2a0c..30b852d 100644
--- a/traffic_portal/test/integration/package.json
+++ b/traffic_portal/test/integration/package.json
@@ -21,6 +21,7 @@
"xlsx": "^0.15.1"
},
"devDependencies": {
+ "@types/fs-extra": "^9.0.9",
"@types/jasmine": "^3.4.6",
"@types/node": "^12.12.0",
"jasmine": "^3.5.0",
diff --git a/traffic_portal/test/integration/pnpm-lock.yaml
b/traffic_portal/test/integration/pnpm-lock.yaml
index c0db4d3..f0c71ee 100644
--- a/traffic_portal/test/integration/pnpm-lock.yaml
+++ b/traffic_portal/test/integration/pnpm-lock.yaml
@@ -15,6 +15,7 @@ dependencies:
selenium-webdriver: 4.0.0-beta.1
xlsx: 0.15.6
devDependencies:
+ '@types/fs-extra': 9.0.9
'@types/jasmine': 3.6.4
'@types/node': 12.20.4
jasmine: 3.6.4
@@ -22,6 +23,12 @@ devDependencies:
typescript: 3.9.9
lockfileVersion: 5.2
packages:
+ /@types/fs-extra/9.0.9:
+ dependencies:
+ '@types/node': 12.20.7
+ dev: true
+ resolution:
+ integrity:
sha512-5TqDycCl0oMzwzd1cIjSJWMKMvLCDVErle4ZTjU4EmHDURR/+yZghe6GDHMCpHtcVfq0x0gMoOM546/5TbYHrg==
/@types/glob/7.1.3:
dependencies:
'@types/minimatch': 3.0.3
@@ -40,6 +47,10 @@ packages:
/@types/node/12.20.4:
resolution:
integrity:
sha512-xRCgeE0Q4pT5UZ189TJ3SpYuX/QGl6QIAOAIeDSbAVAd2gX1NxSZup4jNVK7cxIeP8KDSbJgcckun495isP1jQ==
+ /@types/node/12.20.7:
+ dev: true
+ resolution:
+ integrity:
sha512-gWL8VUkg8VRaCAUgG9WmhefMqHmMblxe2rVpMF86nZY/+ZysU+BkAp+3cz03AixWDSSz0ks5WX59yAhv/cDwFA==
/@types/q/0.0.32:
dev: false
resolution:
@@ -1852,6 +1863,7 @@ packages:
resolution:
integrity: sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=
specifiers:
+ '@types/fs-extra': ^9.0.9
'@types/jasmine': ^3.4.6
'@types/node': ^12.12.0
axios: ^0.21.1
diff --git a/traffic_portal/test/integration/specs/ASNs.spec.ts
b/traffic_portal/test/integration/specs/ASNs.spec.ts
index 1f959a5..b6fe3c0 100644
--- a/traffic_portal/test/integration/specs/ASNs.spec.ts
+++ b/traffic_portal/test/integration/specs/ASNs.spec.ts
@@ -16,19 +16,20 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+
import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
import { API } from '../CommonUtils/API';
import { ASNsPage } from '../PageObjects/ASNs.po';
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let setupFile = 'Data/ASNs/Setup.json';
let cleanupFile = 'Data/ASNs/Cleanup.json';
let filename = 'Data/ASNs/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
let api = new API();
let loginPage = new LoginPage();
@@ -37,7 +38,7 @@ let asnsPage = new ASNsPage();
describe('Setup API for ASNs Test', function(){
it('Setup', async function(){
- let setupData = JSON.parse(fs.readFileSync(setupFile));
+ let setupData = JSON.parse(readFileSync(setupFile, "utf8"));
let output = await api.UseAPI(setupData);
expect(output).toBeNull();
})
@@ -85,8 +86,8 @@ using(testData.ASNs, async function(asnsData){
describe('Clean Up API for ASNs Test', function () {
it('Cleanup', async function () {
- let cleanupData = JSON.parse(fs.readFileSync(cleanupFile));
+ let cleanupData = JSON.parse(readFileSync(cleanupFile, "utf8"));
let output = await api.UseAPI(cleanupData);
expect(output).toBeNull();
})
-})
\ No newline at end of file
+})
diff --git a/traffic_portal/test/integration/specs/CDNs.spec.ts
b/traffic_portal/test/integration/specs/CDNs.spec.ts
index 705f475..0066279 100644
--- a/traffic_portal/test/integration/specs/CDNs.spec.ts
+++ b/traffic_portal/test/integration/specs/CDNs.spec.ts
@@ -16,17 +16,17 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { browser } from 'protractor'
+import { readFileSync } from "fs";
+
+import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po'
import { CDNPage } from '../PageObjects/CDNPage.po';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
-
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let filename = 'Data/CDN/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
let loginPage = new LoginPage();
let topNavigation = new TopNavigationPage();
diff --git a/traffic_portal/test/integration/specs/CacheGroup.spec.ts
b/traffic_portal/test/integration/specs/CacheGroup.spec.ts
index 89b1948..8e83eec 100644
--- a/traffic_portal/test/integration/specs/CacheGroup.spec.ts
+++ b/traffic_portal/test/integration/specs/CacheGroup.spec.ts
@@ -16,17 +16,18 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+
import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po'
import { CacheGroupPage } from '../PageObjects/CacheGroup.po';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let filename = 'Data/CacheGroup/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
let loginPage = new LoginPage();
let topNavigation = new TopNavigationPage();
@@ -56,25 +57,25 @@ using(testData.CacheGroup, function (cacheGroupData) {
await cacheGroupPage.SearchCacheGroups(update.Name)
expect(await cacheGroupPage.UpdateCacheGroups(update,
update.validationMessage)).toBeUndefined();
await cacheGroupPage.OpenCacheGroupsPage();
- })
+ })
}else{
it(update.description, async function () {
await cacheGroupPage.SearchCacheGroups(update.Name)
expect(await cacheGroupPage.UpdateCacheGroups(update,
update.validationMessage)).toBeTruthy();
await cacheGroupPage.OpenCacheGroupsPage();
- })
+ })
}
-
+
})
using(cacheGroupData.Remove, function (remove) {
it(remove.description, async function () {
await cacheGroupPage.SearchCacheGroups(remove.Name)
expect(await cacheGroupPage.DeleteCacheGroups(remove.Name,
remove.validationMessage)).toBeTruthy();
- })
+ })
})
it('can logout', async function () {
expect(await topNavigation.Logout()).toBeTruthy();
})
})
})
-})
\ No newline at end of file
+})
diff --git a/traffic_portal/test/integration/specs/Coordinates.spec.ts
b/traffic_portal/test/integration/specs/Coordinates.spec.ts
index e452d44..3bbd395 100644
--- a/traffic_portal/test/integration/specs/Coordinates.spec.ts
+++ b/traffic_portal/test/integration/specs/Coordinates.spec.ts
@@ -16,15 +16,16 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+
import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po'
import { CoordinatesPage } from '../PageObjects/CoordinatesPage.po';
import { API } from '../CommonUtils/API';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let api = new API();
let loginPage = new LoginPage();
let topNavigation = new TopNavigationPage();
@@ -34,11 +35,11 @@ let coordinatesPage = new CoordinatesPage();
let setupFile = 'Data/Coordinates/Setup.json';
let cleanupFile = 'Data/Coordinates/Cleanup.json';
let filename = 'Data/Coordinates/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
describe('Setup API for coordinates test', function () {
it('Setup', async function () {
- let setupData = JSON.parse(fs.readFileSync(setupFile));
+ let setupData = JSON.parse(readFileSync(setupFile, "utf8"));
let output = await api.UseAPI(setupData);
expect(output).toBeNull();
})
@@ -70,7 +71,7 @@ using(testData.Coordinates, async function(coordinatesData){
await coordinatesPage.OpenCoordinatesPage();
})
})
-
+
using(coordinatesData.Remove, function (remove) {
it(remove.description, async function () {
await coordinatesPage.SearchCoordinates(remove.Name);
@@ -89,8 +90,8 @@ using(testData.Coordinates, async function(coordinatesData){
describe('Clean up API for coordinates test', function () {
it('Cleanup', async function () {
- let cleanupData = JSON.parse(fs.readFileSync(cleanupFile));
+ let cleanupData = JSON.parse(readFileSync(cleanupFile, "utf8"));
let output = await api.UseAPI(cleanupData);
expect(output).toBeNull();
})
-})
\ No newline at end of file
+})
diff --git a/traffic_portal/test/integration/specs/Divisions.spec.ts
b/traffic_portal/test/integration/specs/Divisions.spec.ts
index 0734865..ef49ea9 100644
--- a/traffic_portal/test/integration/specs/Divisions.spec.ts
+++ b/traffic_portal/test/integration/specs/Divisions.spec.ts
@@ -16,19 +16,20 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+
import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
import { API } from '../CommonUtils/API';
import { DivisionsPage } from '../PageObjects/Divisions.po';
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let setupFile = 'Data/Divisions/Setup.json';
let cleanupFile = 'Data/Divisions/Cleanup.json';
let filename = 'Data/Divisions/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
let api = new API();
let loginPage = new LoginPage();
@@ -37,7 +38,7 @@ let divisionsPage = new DivisionsPage();
describe('Setup API for Divisions Test', function(){
it('Setup', async function(){
- let setupData = JSON.parse(fs.readFileSync(setupFile));
+ let setupData = JSON.parse(readFileSync(setupFile, "utf8"));
let output = await api.UseAPI(setupData);
expect(output).toBeNull();
})
@@ -85,8 +86,8 @@ using(testData.Divisions, async function(divisionsData){
describe('Clean Up API for Divisions Test', function () {
it('Cleanup', async function () {
- let cleanupData = JSON.parse(fs.readFileSync(cleanupFile));
+ let cleanupData = JSON.parse(readFileSync(cleanupFile, "utf8"));
let output = await api.UseAPI(cleanupData);
expect(output).toBeNull();
})
-})
\ No newline at end of file
+})
diff --git a/traffic_portal/test/integration/specs/Login.spec.ts
b/traffic_portal/test/integration/specs/Login.spec.ts
index 869e118..2537893 100644
--- a/traffic_portal/test/integration/specs/Login.spec.ts
+++ b/traffic_portal/test/integration/specs/Login.spec.ts
@@ -18,7 +18,7 @@
*/
import { browser } from 'protractor';
import { LoginPage } from '../PageObjects/LoginPage.po';
-import * as using from "jasmine-data-provider";
+import using from "jasmine-data-provider";
import { readFileSync } from "fs"
const filename = 'Data/Login/TestCases.json';
diff --git a/traffic_portal/test/integration/specs/Origins.spec.ts
b/traffic_portal/test/integration/specs/Origins.spec.ts
index 7af65f2..d363914 100644
--- a/traffic_portal/test/integration/specs/Origins.spec.ts
+++ b/traffic_portal/test/integration/specs/Origins.spec.ts
@@ -16,19 +16,20 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { browser } from 'protractor'
+import { readFileSync } from "fs";
+
+import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po'
import { OriginsPage } from '../PageObjects/OriginsPage.po';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
import { API } from '../CommonUtils/API';
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let setupFile = 'Data/Origins/Setup.json';
let cleanupFile = 'Data/Origins/Cleanup.json';
let filename = 'Data/Origins/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
let api = new API();
let loginPage = new LoginPage();
@@ -37,7 +38,7 @@ let originsPage = new OriginsPage();
describe('Setup Origin Delivery Service', function () {
it('Setup', async function () {
- let setupData = JSON.parse(fs.readFileSync(setupFile));
+ let setupData = JSON.parse(readFileSync(setupFile, "utf8"));
let output = await api.UseAPI(setupData);
expect(output).toBeNull();
})
@@ -91,8 +92,8 @@ using(testData.Origins, async function (originsData) {
describe('Clean up Origin Delivery Service', function () {
it('Cleanup', async function () {
- let cleanupData = JSON.parse(fs.readFileSync(cleanupFile));
+ let cleanupData = JSON.parse(readFileSync(cleanupFile, "utf8"));
let output = await api.UseAPI(cleanupData);
expect(output).toBeNull();
})
-})
\ No newline at end of file
+})
diff --git a/traffic_portal/test/integration/specs/Parameters.spec.ts
b/traffic_portal/test/integration/specs/Parameters.spec.ts
index 651e5be..1849bb5 100644
--- a/traffic_portal/test/integration/specs/Parameters.spec.ts
+++ b/traffic_portal/test/integration/specs/Parameters.spec.ts
@@ -16,15 +16,16 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+
import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po'
import { ParametersPage } from '../PageObjects/ParametersPage.po';
import { API } from '../CommonUtils/API';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let api = new API();
let loginPage = new LoginPage();
let topNavigation = new TopNavigationPage();
@@ -34,11 +35,11 @@ let parametersPage = new ParametersPage();
let setupFile = 'Data/Parameters/Setup.json';
let cleanupFile = 'Data/Parameters/Cleanup.json';
let filename = 'Data/Parameters/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
describe('Setup API for parameter test', function () {
it('Setup', async function () {
- let setupData = JSON.parse(fs.readFileSync(setupFile));
+ let setupData = JSON.parse(readFileSync(setupFile, "utf8"));
let output = await api.UseAPI(setupData);
expect(output).toBeNull();
})
@@ -70,7 +71,7 @@ using(testData.Parameters, async function(parametersData){
await parametersPage.OpenParametersPage();
})
})
-
+
using(parametersData.Remove, function (remove) {
it(remove.description, async function () {
await parametersPage.SearchParameter(remove.Name);
@@ -88,8 +89,8 @@ using(testData.Parameters, async function(parametersData){
describe('Clean up API for parameter test', function () {
it('Cleanup', async function () {
- let cleanupData = JSON.parse(fs.readFileSync(cleanupFile));
+ let cleanupData = JSON.parse(readFileSync(cleanupFile, "utf8"));
let output = await api.UseAPI(cleanupData);
expect(output).toBeNull();
})
-})
\ No newline at end of file
+})
diff --git a/traffic_portal/test/integration/specs/PhysLocations.spec.ts
b/traffic_portal/test/integration/specs/PhysLocations.spec.ts
index 673c15b..2db9964 100644
--- a/traffic_portal/test/integration/specs/PhysLocations.spec.ts
+++ b/traffic_portal/test/integration/specs/PhysLocations.spec.ts
@@ -16,17 +16,16 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+
import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po'
import { PhysLocationsPage } from '../PageObjects/PhysLocationsPage.po';
import { API } from '../CommonUtils/API';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
-
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
-
let api = new API();
let loginPage = new LoginPage();
let topNavigation = new TopNavigationPage();
@@ -35,11 +34,11 @@ let physlocationsPage = new PhysLocationsPage();
let setupFile = 'Data/PhysLocations/Setup.json';
let cleanupFile = 'Data/PhysLocations/Cleanup.json';
let filename = 'Data/PhysLocations/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
describe('Setup API for physlocation test', function () {
it('Setup', async function () {
- let setupData = JSON.parse(fs.readFileSync(setupFile));
+ let setupData = JSON.parse(readFileSync(setupFile, "utf8"));
let output = await api.UseAPI(setupData);
expect(output).toBeNull();
})
@@ -71,7 +70,7 @@ using(testData.PhysLocations, async
function(physlocationsData){
await physlocationsPage.OpenPhysLocationPage();
})
})
-
+
using(physlocationsData.Remove, function (remove) {
it(remove.description, async function () {
await physlocationsPage.SearchPhysLocation(remove.Name);
@@ -88,8 +87,8 @@ using(testData.PhysLocations, async
function(physlocationsData){
describe('Clean up API for physlocation test', function () {
it('Cleanup', async function () {
- let cleanupData = JSON.parse(fs.readFileSync(cleanupFile));
+ let cleanupData = JSON.parse(readFileSync(cleanupFile, "utf8"));
let output = await api.UseAPI(cleanupData);
expect(output).toBeNull();
})
-})
\ No newline at end of file
+})
diff --git a/traffic_portal/test/integration/specs/Profiles.spec.ts
b/traffic_portal/test/integration/specs/Profiles.spec.ts
index 2ee348b..b9c8165 100644
--- a/traffic_portal/test/integration/specs/Profiles.spec.ts
+++ b/traffic_portal/test/integration/specs/Profiles.spec.ts
@@ -16,20 +16,20 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+
import { browser } from 'protractor'
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po'
import { ProfilesPage } from '../PageObjects/ProfilesPage.po';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
import { API } from '../CommonUtils/API';
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let setupFile = 'Data/Profiles/Setup.json';
let cleanupFile = 'Data/Profiles/Cleanup.json';
let filename = 'Data/Profiles/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
-
+let testData = JSON.parse(readFileSync(filename, "utf8"));
let api = new API();
let loginPage = new LoginPage();
@@ -38,7 +38,7 @@ let profilesPage = new ProfilesPage();
describe('Setup API for Profiles', function () {
it('Setup', async function () {
- let setupData = JSON.parse(fs.readFileSync(setupFile));
+ let setupData = JSON.parse(readFileSync(setupFile, "utf8"));
let output = await api.UseAPI(setupData);
expect(output).toBeNull();
})
@@ -83,8 +83,8 @@ using(testData.Profiles, async function(profilesData){
})
describe('Clean up API for Profiles', function () {
it('Cleanup', async function () {
- let cleanupData = JSON.parse(fs.readFileSync(cleanupFile));
+ let cleanupData = JSON.parse(readFileSync(cleanupFile, "utf8"));
let output = await api.UseAPI(cleanupData);
expect(output).toBeNull();
})
-})
\ No newline at end of file
+})
diff --git a/traffic_portal/test/integration/specs/Regions.spec.ts
b/traffic_portal/test/integration/specs/Regions.spec.ts
index 2567811..9af387a 100644
--- a/traffic_portal/test/integration/specs/Regions.spec.ts
+++ b/traffic_portal/test/integration/specs/Regions.spec.ts
@@ -16,19 +16,20 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+
import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
import { API } from '../CommonUtils/API';
import { RegionsPage } from '../PageObjects/RegionsPage.po';
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let setupFile = 'Data/Regions/Setup.json';
let cleanupFile = 'Data/Regions/Cleanup.json';
let filename = 'Data/Regions/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
let api = new API();
let loginPage = new LoginPage();
@@ -37,7 +38,7 @@ let regionsPage = new RegionsPage();
describe('Setup Divisions for Regions Test', function(){
it('Setup', async function(){
- let setupData = JSON.parse(fs.readFileSync(setupFile));
+ let setupData = JSON.parse(readFileSync(setupFile, "utf8"));
let output = await api.UseAPI(setupData);
expect(output).toBeNull();
})
@@ -85,8 +86,8 @@ using(testData.Regions, async function(regionsData){
describe('Clean Up Divisions for Regions Test', function () {
it('Cleanup', async function () {
- let cleanupData = JSON.parse(fs.readFileSync(cleanupFile));
+ let cleanupData = JSON.parse(readFileSync(cleanupFile, "utf8"));
let output = await api.UseAPI(cleanupData);
expect(output).toBeNull();
})
-})
\ No newline at end of file
+})
diff --git a/traffic_portal/test/integration/specs/ServerCapabilities.spec.ts
b/traffic_portal/test/integration/specs/ServerCapabilities.spec.ts
index e75501f..ae9b018 100644
--- a/traffic_portal/test/integration/specs/ServerCapabilities.spec.ts
+++ b/traffic_portal/test/integration/specs/ServerCapabilities.spec.ts
@@ -16,16 +16,17 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+
import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po'
import { ServerCapabilitiesPage } from
'../PageObjects/ServerCapabilitiesPage.po';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let filename = 'Data/ServerCapabilities/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
let loginPage = new LoginPage();
let topNavigation = new TopNavigationPage();
@@ -53,7 +54,7 @@ using(testData.ServerCapabilities,
function(serverCapabilitiesData) {
if(remove.description.includes("invalid")){
it(remove.description, async function(){
await
serverCapabilitiesPage.SearchServerCapabilities(remove.Name)
- expect(await
serverCapabilitiesPage.DeleteServerCapabilities(remove.InvalidName,
remove.validationMessage)).toBeFalsy();
+ expect(await
serverCapabilitiesPage.DeleteServerCapabilities(remove.InvalidName,
remove.validationMessage)).toBeFalsy();
await
serverCapabilitiesPage.OpenServerCapabilityPage();
})
} else {
@@ -69,4 +70,4 @@ using(testData.ServerCapabilities,
function(serverCapabilitiesData) {
})
})
})
-})
\ No newline at end of file
+})
diff --git
a/traffic_portal/test/integration/specs/ServerServerCapabilities.spec.ts
b/traffic_portal/test/integration/specs/ServerServerCapabilities.spec.ts
index 4c9b8bd..a200967 100644
--- a/traffic_portal/test/integration/specs/ServerServerCapabilities.spec.ts
+++ b/traffic_portal/test/integration/specs/ServerServerCapabilities.spec.ts
@@ -16,20 +16,21 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+
import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po'
import { ServerCapabilitiesPage } from
'../PageObjects/ServerCapabilitiesPage.po';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
import { ServersPage } from '../PageObjects/ServersPage.po';
import { API } from '../CommonUtils/API';
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let setupFile = 'Data/ServerServerCapabilities/Setup.json';
let cleanupFile = 'Data/ServerServerCapabilities/Cleanup.json';
let filename = 'Data/ServerServerCapabilities/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
let api = new API();
let loginPage = new LoginPage();
@@ -39,7 +40,7 @@ let serverPage = new ServersPage();
describe("Setup Server Capabilities and Server for prereq", function(){
it('Setup', async function(){
- let setupData = JSON.parse(fs.readFileSync(setupFile));
+ let setupData = JSON.parse(readFileSync(setupFile, "utf8"));
let output = await api.UseAPI(setupData);
expect(output).toBeNull();
})
@@ -96,7 +97,7 @@ using(testData.ServerServerCapabilities, async
function(serverServerCapData){
})
describe("Clean up prereq", function(){
it('Clean up', async function(){
- let cleanupData = JSON.parse(fs.readFileSync(cleanupFile));
+ let cleanupData = JSON.parse(readFileSync(cleanupFile, "utf8"));
let output = await api.UseAPI(cleanupData);
expect(output).toBeNull();
})
diff --git a/traffic_portal/test/integration/specs/Servers.spec.ts
b/traffic_portal/test/integration/specs/Servers.spec.ts
index 3726946..c5f087a 100644
--- a/traffic_portal/test/integration/specs/Servers.spec.ts
+++ b/traffic_portal/test/integration/specs/Servers.spec.ts
@@ -16,15 +16,16 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+
import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po'
import { ServersPage } from '../PageObjects/ServersPage.po';
import { API } from '../CommonUtils/API';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let api = new API();
let loginPage = new LoginPage();
let topNavigation = new TopNavigationPage();
@@ -33,11 +34,11 @@ let serversPage = new ServersPage();
let setupFile = 'Data/Servers/Setup.json';
let cleanupFile = 'Data/Servers/Cleanup.json';
let filename = 'Data/Servers/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
describe('Setup API call for Servers Test', function(){
it('Setup', async function(){
- let setupData = JSON.parse(fs.readFileSync(setupFile));
+ let setupData = JSON.parse(readFileSync(setupFile, "utf8"));
let output = await api.UseAPI(setupData);
expect(output).toBeNull();
})
@@ -84,8 +85,8 @@ using(testData.Servers, async function(serversData){
describe('API Clean Up for Servers Test', function () {
it('Cleanup', async function () {
- let cleanupData = JSON.parse(fs.readFileSync(cleanupFile));
+ let cleanupData = JSON.parse(readFileSync(cleanupFile, "utf8"));
let output = await api.UseAPI(cleanupData);
expect(output).toBeNull();
})
-})
\ No newline at end of file
+})
diff --git a/traffic_portal/test/integration/specs/ServiceCategories.spec.ts
b/traffic_portal/test/integration/specs/ServiceCategories.spec.ts
index 2793bcb..b9d171b 100644
--- a/traffic_portal/test/integration/specs/ServiceCategories.spec.ts
+++ b/traffic_portal/test/integration/specs/ServiceCategories.spec.ts
@@ -16,19 +16,20 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+
import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
import { API } from '../CommonUtils/API';
import { ServiceCategoriesPage } from '../PageObjects/ServiceCategories.po';
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let setupFile = 'Data/ServiceCategories/Setup.json';
let cleanupFile = 'Data/ServiceCategories/Cleanup.json';
let filename = 'Data/ServiceCategories/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
let api = new API();
let loginPage = new LoginPage();
@@ -37,7 +38,7 @@ let serviceCategoriesPage = new ServiceCategoriesPage();
describe('Setup API for Service Categories Test', function(){
it('Setup', async function(){
- let setupData = JSON.parse(fs.readFileSync(setupFile));
+ let setupData = JSON.parse(readFileSync(setupFile, "utf8"));
let output = await api.UseAPI(setupData);
expect(output).toBeNull();
})
@@ -84,8 +85,8 @@ using(testData.ServiceCategories, async
function(serviceCategoriesData){
describe('Clean Up API for Service Categories Test', function () {
it('Cleanup', async function () {
- let cleanupData = JSON.parse(fs.readFileSync(cleanupFile));
+ let cleanupData = JSON.parse(readFileSync(cleanupFile, "utf8"));
let output = await api.UseAPI(cleanupData);
expect(output).toBeNull();
})
-})
\ No newline at end of file
+})
diff --git a/traffic_portal/test/integration/specs/Statuses.spec.ts
b/traffic_portal/test/integration/specs/Statuses.spec.ts
index c596219..aa5bf3b 100644
--- a/traffic_portal/test/integration/specs/Statuses.spec.ts
+++ b/traffic_portal/test/integration/specs/Statuses.spec.ts
@@ -16,19 +16,20 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+
import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
import { API } from '../CommonUtils/API';
import { StatusesPage } from '../PageObjects/Statuses.po'
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let setupFile = 'Data/Statuses/Setup.json';
let cleanupFile = 'Data/Statuses/Cleanup.json';
let filename = 'Data/Statuses/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
let api = new API();
let loginPage = new LoginPage();
@@ -37,7 +38,7 @@ let statusesPage = new StatusesPage();
describe('Setup API for Statuses Test', function(){
it('Setup', async function(){
- let setupData = JSON.parse(fs.readFileSync(setupFile));
+ let setupData = JSON.parse(readFileSync(setupFile, "utf8"));
let output = await api.UseAPI(setupData);
expect(output).toBeNull();
})
@@ -83,8 +84,8 @@ using(testData.Statuses, async function(statusesData){
})
describe('Clean Up API for Statuses Test', function () {
it('Cleanup', async function () {
- let cleanupData = JSON.parse(fs.readFileSync(cleanupFile));
+ let cleanupData = JSON.parse(readFileSync(cleanupFile, "utf8"));
let output = await api.UseAPI(cleanupData);
expect(output).toBeNull();
})
-})
\ No newline at end of file
+})
diff --git a/traffic_portal/test/integration/specs/Types.spec.ts
b/traffic_portal/test/integration/specs/Types.spec.ts
index a5e4d46..f8acd95 100644
--- a/traffic_portal/test/integration/specs/Types.spec.ts
+++ b/traffic_portal/test/integration/specs/Types.spec.ts
@@ -16,19 +16,20 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { readFileSync } from "fs";
+
import { browser } from 'protractor';
+import using from "jasmine-data-provider";
+
import { LoginPage } from '../PageObjects/LoginPage.po';
import { TopNavigationPage } from '../PageObjects/TopNavigationPage.po';
import { API } from '../CommonUtils/API';
import { TypesPage } from '../PageObjects/Types.po'
-let fs = require('fs')
-let using = require('jasmine-data-provider');
-
let setupFile = 'Data/Types/Setup.json';
let cleanupFile = 'Data/Types/Cleanup.json';
let filename = 'Data/Types/TestCases.json';
-let testData = JSON.parse(fs.readFileSync(filename));
+let testData = JSON.parse(readFileSync(filename, "utf8"));
let api = new API();
let loginPage = new LoginPage();
@@ -37,7 +38,7 @@ let typesPage = new TypesPage();
describe('Setup API for Types Test', function(){
it('Setup', async function(){
- let setupData = JSON.parse(fs.readFileSync(setupFile));
+ let setupData = JSON.parse(readFileSync(setupFile, "utf8"));
let output = await api.UseAPI(setupData);
expect(output).toBeNull();
})
@@ -83,8 +84,8 @@ using(testData.Types, async function(typesData){
})
describe('Clean Up API for Types Test', function () {
it('Cleanup', async function () {
- let cleanupData = JSON.parse(fs.readFileSync(cleanupFile));
+ let cleanupData = JSON.parse(readFileSync(cleanupFile, "utf8"));
let output = await api.UseAPI(cleanupData);
expect(output).toBeNull();
})
-})
\ No newline at end of file
+})
diff --git a/traffic_portal/test/integration/tsconfig.json
b/traffic_portal/test/integration/tsconfig.json
index eac68a9..bdd4772 100644
--- a/traffic_portal/test/integration/tsconfig.json
+++ b/traffic_portal/test/integration/tsconfig.json
@@ -1,6 +1,7 @@
{
"compilerOptions": {
"target": "es6",
+ "esModuleInterop": true,
"module": "commonjs",
"moduleResolution": "node",
"inlineSourceMap": true,