Compare commits
	
		
			11 Commits
		
	
	
		
			mct7322-a1
			...
			open348
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | f198f0f178 | ||
|   | d54ad1a726 | ||
|   | 1614412b17 | ||
|   | 22ce35b98b | ||
|   | 47fc3af5f2 | ||
|   | 57f462b98a | ||
|   | d45f52bdb9 | ||
|   | 4eaedcba2f | ||
|   | fd45e4e895 | ||
|   | c0e758ac76 | ||
|   | 282058f4c2 | 
							
								
								
									
										27
									
								
								gulpfile.js
									
									
									
									
									
								
							
							
						
						
									
										27
									
								
								gulpfile.js
									
									
									
									
									
								
							| @@ -31,6 +31,9 @@ var gulp = require('gulp'), | ||||
|     jscs = require('gulp-jscs'), | ||||
|     replace = require('gulp-replace-task'), | ||||
|     karma = require('karma'), | ||||
|     protractor = require('gulp-protractor').protractor, | ||||
|     webdriver_update = require('gulp-protractor').webdriver_update, | ||||
|     connect = require('gulp-connect'), | ||||
|     path = require('path'), | ||||
|     fs = require('fs'), | ||||
|     git = require('git-rev-sync'), | ||||
| @@ -47,7 +50,8 @@ var gulp = require('gulp'), | ||||
|             'platform/**/*', | ||||
|             'example/**/*', | ||||
|             'bower_components/**/*' | ||||
|         ] | ||||
|         ], | ||||
|         protractor: './protractor/**/*Spec.js' | ||||
|     }, | ||||
|     options = { | ||||
|         requirejsOptimize: { | ||||
| @@ -69,6 +73,13 @@ var gulp = require('gulp'), | ||||
|                 revision: fs.existsSync('.git') ? git.long() : 'Unknown', | ||||
|                 branch: fs.existsSync('.git') ? git.branch() : 'Unknown' | ||||
|             } | ||||
|         }, | ||||
|         protractor: { | ||||
|             configFile: 'protractor/conf.js', | ||||
|             args: [ '--baseUrl', 'localhost:8080' ] | ||||
|         }, | ||||
|         connect: { | ||||
|             root: paths.dist | ||||
|         } | ||||
|     }; | ||||
|  | ||||
| @@ -85,6 +96,20 @@ gulp.task('test', function (done) { | ||||
|     new karma.Server(options.karma, done).start(); | ||||
| }); | ||||
|  | ||||
| gulp.task('webdriver_update', webdriver_update); | ||||
|  | ||||
| gulp.task('protractor', ['webdriver_update', 'install'], function () { | ||||
|     connect.server(options.connect); | ||||
|  | ||||
|     return gulp.src(paths.protractor) | ||||
|         .pipe(protractor(options.protractor)) | ||||
|         .on('end', connect.serverClose.bind(connect)) | ||||
|         .on('error', function (err) { | ||||
|             connect.serverClose(); | ||||
|             throw err; | ||||
|         }); | ||||
| }); | ||||
|  | ||||
| gulp.task('stylesheets', function () { | ||||
|     return gulp.src(paths.scss, {base: '.'}) | ||||
|         .pipe(sourcemaps.init()) | ||||
|   | ||||
| @@ -12,8 +12,10 @@ | ||||
|     "git-rev-sync": "^1.4.0", | ||||
|     "glob": ">= 3.0.0", | ||||
|     "gulp": "^3.9.0", | ||||
|     "gulp-connect": "^3.1.0", | ||||
|     "gulp-jscs": "^3.0.2", | ||||
|     "gulp-jshint": "^2.0.0", | ||||
|     "gulp-protractor": "^1.0.0", | ||||
|     "gulp-rename": "^1.2.2", | ||||
|     "gulp-replace-task": "^0.11.0", | ||||
|     "gulp-requirejs-optimize": "^0.3.1", | ||||
|   | ||||
| @@ -1,15 +0,0 @@ | ||||
| #! /usr/bin/env node | ||||
| var shell = require("shelljs/global"); | ||||
|  | ||||
| var startdir = process.cwd(); | ||||
| var command = "npm unlink"; | ||||
|  | ||||
| console.log("Cleaning Directory") | ||||
| exec(command, function(code, output) { | ||||
|     if(code != 0){ | ||||
|         console.log('Exit code:', code); | ||||
|         console.log('Program output:', output); | ||||
|     } | ||||
| }); | ||||
| console.log("rm -rf node_modules") | ||||
| rm('-rf', __dirname + "/../node_modules") | ||||
| @@ -1,90 +0,0 @@ | ||||
| #! /bin/bash | ||||
| ARGUMENT=$1; | ||||
|  | ||||
| if [ $# != 1 ]; then | ||||
|     echo "Expected 1 Aurgument. Received " $# 1>&2; | ||||
|     exit 1 | ||||
| fi | ||||
| #Start webdrive and http-server | ||||
| if [ $ARGUMENT == start ]; then | ||||
|     echo "Creating Log Directory ..."     | ||||
|     mkdir logs; | ||||
|      | ||||
|     cd .. | ||||
|     node app.js -p 1984 -x platform/persistence/elastic -i example/persistence > protractor/logs/nodeApp.log 2>&1 & | ||||
|     sleep 3; | ||||
|     if grep -iq "Error"  protractor/logs/nodeApp.log; then | ||||
|         if grep -iq "minimist"  protractor/logs/nodeApp.log; then | ||||
|             echo "  Node Failed Because Minimist is not installed" | ||||
|             echo "  Installng Minimist ..." | ||||
|             npm install minimist express > protractor/logs/minimist.log 2>&1 & | ||||
|             wait $!     | ||||
|             if [ $? != 0 ]; then | ||||
|                 echo "    Error: minimist" | ||||
|                 echo "    Check Log file" | ||||
|                 echo | ||||
|             else | ||||
|                 echo "    Started: Minimist"   | ||||
|                 echo | ||||
|                 node app.js -p 1984 -x platform/persistence/elastic -i example/persistence > protractor/logs/nodeApp.log 2>&1 & | ||||
|                 if grep -iq "Error"  protractor/logs/nodeApp.log; then | ||||
|                     echo "    Error: node app failed" | ||||
|                     echo "    Check Log file" | ||||
|                     echo | ||||
|                 else | ||||
|                     echo "    Started: node app.js"   | ||||
|                     echo | ||||
|                 fi | ||||
|             fi | ||||
|         else     | ||||
|             echo "    Error: node app failed" | ||||
|             echo "    Check Log file" | ||||
|             echo | ||||
|         fi | ||||
|     else | ||||
|         echo "    Started: node app.js"   | ||||
|         echo | ||||
|     fi | ||||
|     echo "Starting webdriver ..." | ||||
|      | ||||
|     cd protractor; | ||||
|     webdriver-manager start > logs/webdriver.log 2>&1 & | ||||
|     sleep 3; | ||||
|     if grep -iq "Exception"  logs/webdriver.log; then | ||||
|         echo "    Error: webdriver-manager" | ||||
|         echo "    Check Log file" | ||||
|         echo  | ||||
|     else | ||||
|         echo "    Started: webdriver-manager"   | ||||
|     fi | ||||
|     echo "Starting Elastic Search..." | ||||
|      | ||||
|     elasticsearch > logs/elasticSearch.log 2>&1 & | ||||
|     sleep 3; | ||||
|     if grep -iq "Exception"  logs/elasticSearch.log; then | ||||
|         echo "    Error: ElasticSearch" | ||||
|         echo "    Check Log file" | ||||
|         echo  | ||||
|     else | ||||
|         echo "    Started: ElasticSearch" | ||||
|     fi | ||||
| #Runs Protractor tests     | ||||
| elif [ $ARGUMENT == run ]; then | ||||
|     protractor ./conf.js | ||||
| #Kill Process     | ||||
| elif [ $ARGUMENT == stop ]; then | ||||
|     echo "Removing logs" | ||||
|     rm -rf logs | ||||
|     echo "Stopping Node" | ||||
|     kill $(ps aux | grep "[n]ode app.js"| awk '{print $2}'); | ||||
|      | ||||
|     echo "Stopping webdriver ..." | ||||
|     kill $(ps aux | grep "[p]rotractor" | awk '{print $2}'); | ||||
|     kill $(ps aux | grep "[w]ebdriver-manager" | awk '{print $2}'); | ||||
|     sleep 1; | ||||
|     echo "Stopping Elastic..." | ||||
|     kill $(ps aux | grep "[e]lastic" | awk '{print $2}'); | ||||
|     sleep 1;  | ||||
| else  | ||||
|     echo "Unkown: Command" $1; | ||||
| fi | ||||
| @@ -1,12 +0,0 @@ | ||||
| #! /usr/bin/env node | ||||
| var shell = require("shelljs/global"); | ||||
| var sleep = require('sleep'); | ||||
|  | ||||
| var command = __dirname + "/../node_modules/protractor/bin/protractor " +__dirname + "/../conf.js"; | ||||
| console.log("Executing Protractor Test") | ||||
| exec(command, function(code, output) { | ||||
|     if(code != 0){ | ||||
|         console.log('Exit code:', code); | ||||
|         console.log('Program output:', output); | ||||
|     } | ||||
| }); | ||||
| @@ -1,40 +0,0 @@ | ||||
| #! /usr/bin/env node | ||||
| var shell,sleep; | ||||
| try { | ||||
|     shell = require("shelljs/global"); | ||||
|     sleep = require('sleep'); | ||||
| }catch (e){ | ||||
|     console.log("Dependencies Error"); | ||||
|     console.log("Run npm install"); | ||||
|     throw (e); | ||||
| } | ||||
| ///Users/jsanderf/git/elastic/wtd/protractor/bin | ||||
| var startdir = process.cwd(); | ||||
| var command; | ||||
| mkdir(__dirname + '/../logs'); | ||||
|  | ||||
| command = __dirname + "/../node_modules/protractor/bin/webdriver-manager update"; | ||||
| console.log("Installing Webdriver"); | ||||
| exec(command,{async:false}); | ||||
| sleep.sleep(1);  | ||||
|  | ||||
| console.log(); | ||||
| cd(__dirname + '/../../'); | ||||
| console.log('Installing Dependencies'); | ||||
| exec("npm install minimist express", {async:false}); | ||||
| console.log('Starting Node'); | ||||
| sleep.sleep(1); | ||||
| exec("node app.js -p 1984 -x example/persistence -x platform/persistence/elastic -i example/localstorage > protractor/logs/nodeApp.log 2>&1 &", {async:false}); | ||||
| console.log('   Started Node'); | ||||
|  | ||||
| console.log(); | ||||
| console.log('Starting Webdriver'); | ||||
| sleep.sleep(1); | ||||
| exec("protractor/node_modules/protractor/bin/webdriver-manager start --standalone> protractor/logs/webdriver.log 2>&1 &",{async:false}); | ||||
| if(error() == null){ | ||||
|         console.log("   Webdriver Started"); | ||||
| }else{ | ||||
|     console.log("   Error : ", error()); | ||||
| } | ||||
| sleep.sleep(1); | ||||
| cd(startdir); | ||||
| @@ -1,44 +0,0 @@ | ||||
| #! /usr/bin/env node | ||||
|  | ||||
| var shell = require("shelljs/global"); | ||||
| var ps = require('psnode'); | ||||
| var S = require('string'); | ||||
| var sleep = require('sleep'); | ||||
|   | ||||
| // A simple pid lookup  | ||||
| ps.list(function(err, results) { | ||||
|   | ||||
|   results.forEach(function( process ){ | ||||
|           //Killing Node | ||||
|           if(S(process.command).contains("node app.js")) { | ||||
|               console.log(); | ||||
|               console.log( 'Killing Node: %s', process.command); | ||||
|               ps.kill(process.pid, function(err, stdout) { | ||||
|                   if (err) { | ||||
|                       throw new Error(err); | ||||
|                   } | ||||
|                   console.log(stdout); | ||||
|               }); | ||||
|           }else if(S(process.command).contains("webdriver")) { | ||||
|               console.log(); | ||||
|               console.log( 'Killing WebDriver: %s', process.command); | ||||
|               ps.kill(process.pid, function(err, stdout) { | ||||
|                   if (err){ | ||||
|                       throw new Error(err); | ||||
|                   } | ||||
|                   console.log(stdout); | ||||
|               }); | ||||
|           }else if(S(process.command).contains("protractor")) { | ||||
|               console.log(); | ||||
|               console.log( 'Killing Chrome Drive: %s', process.command); | ||||
|               ps.kill(process.pid, function(err, stdout) { | ||||
|                   if (err){ | ||||
|                       throw new Error(err); | ||||
|                   } | ||||
|                   console.log(stdout); | ||||
|               }); | ||||
|           } | ||||
|       }); | ||||
| }); | ||||
|  | ||||
|  | ||||
| @@ -24,6 +24,6 @@ | ||||
| module.exports = function launch() { | ||||
|     'use strict'; | ||||
|     browser.ignoreSynchronization = true; | ||||
|     browser.get('http://localhost:1984'); | ||||
|     browser.get('http://localhost:8080/index.html'); | ||||
|     browser.sleep(2000);  // 2 seconds | ||||
| }; | ||||
|   | ||||
							
								
								
									
										23
									
								
								protractor/common/create.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								protractor/common/create.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,23 @@ | ||||
| /*global module,element,by,browser*/ | ||||
|  | ||||
| module.exports = function create(name) { | ||||
|     var createButton = element.all( | ||||
|             by.css('[ng-click="createController.toggle()"]') | ||||
|         ); | ||||
|  | ||||
|     createButton.click(); | ||||
|  | ||||
|     return browser.wait(function () { | ||||
|             return element(by.css('[ng-click="createAction.perform()"]')) | ||||
|                 .isPresent(); | ||||
|         }, 1000) | ||||
|         .then(function () { | ||||
|             return element.all(by.css('[ng-click="createAction.perform()"]')) | ||||
|                 .filter(function (el) { | ||||
|                     return el.getText().then(function (text) { | ||||
|                         return text.indexOf(name) > -1; | ||||
|                     }); | ||||
|                 }) | ||||
|                 .click(); | ||||
|         }); | ||||
| }; | ||||
| @@ -25,38 +25,11 @@ | ||||
| exports.config = { | ||||
|     allScriptsTimeout: 500000, | ||||
|     jasmineNodeOpts: {defaultTimeoutInterval: 360000}, | ||||
|     seleniumAddress: 'http://localhost:4444/wd/hub', | ||||
|     //specs: ['StressTestCarrot.js'], | ||||
|     specs: [ | ||||
|         // 'create/CreateActivity.js', | ||||
|         // 'delete/DeleteActivity.js', | ||||
|         // 'create/CreateActivityMode.js', | ||||
|         // 'delete/DeleteActivityMode.js', | ||||
|         // 'create/CreateClock.js', | ||||
|         // 'delete/DeleteClock.js', | ||||
|         'create/CreateDisplay.js', | ||||
|         'delete/DeleteDisplay.js', | ||||
|         'create/CreateFolder.js', | ||||
|         'delete/DeleteFolder.js', | ||||
|         // 'create/CreateTelemetry.js', | ||||
|         // 'delete/DeleteTelemetry.js', | ||||
|         // 'create/CreateTimeline.js', | ||||
|         // 'delete/DeleteTimeline.js', | ||||
|         // 'create/CreateTimer.js', | ||||
|         // 'delete/DeleteTimer.js', | ||||
|         'create/CreateWebPage.js', | ||||
|         'delete/DeleteWebPage.js', | ||||
|         'UI/Fullscreen.js', | ||||
|         'create/CreateButton.js', | ||||
|         //"UI/DragDrop.js", | ||||
|         "UI/NewWindow.js" | ||||
|         //'UI/InfoBubble.js', | ||||
|         //'UI/RightClick.js' | ||||
|     ], | ||||
|     capabilities: { | ||||
|         'browserName': 'chrome', // or 'safari' | ||||
|         'chromeOptions': {} | ||||
|     } | ||||
|     }, | ||||
|     seleniumServerJar: "../node_modules/gulp-protractor/node_modules/protractor/selenium/selenium-server-standalone-2.47.1.jar" | ||||
| }; | ||||
|  | ||||
| // Allow specifying binary location as an environment variable, | ||||
|   | ||||
| @@ -1,58 +0,0 @@ | ||||
| /***************************************************************************** | ||||
|  * Open MCT Web, Copyright (c) 2014-2015, United States Government | ||||
|  * as represented by the Administrator of the National Aeronautics and Space | ||||
|  * Administration. All rights reserved. | ||||
|  * | ||||
|  * Open MCT Web is licensed under the Apache License, Version 2.0 (the | ||||
|  * "License"); you may not use this file except in compliance with the License. | ||||
|  * You may obtain a copy of the License at | ||||
|  * http://www.apache.org/licenses/LICENSE-2.0. | ||||
|  * | ||||
|  * Unless required by applicable law or agreed to in writing, software | ||||
|  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | ||||
|  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | ||||
|  * License for the specific language governing permissions and limitations | ||||
|  * under the License. | ||||
|  * | ||||
|  * Open MCT Web includes source code licensed under additional open source | ||||
|  * licenses. See the Open Source Licenses file (LICENSES.md) included with | ||||
|  * this source code distribution or the Licensing information page available | ||||
|  * at runtime from the About dialog for additional information. | ||||
|  *****************************************************************************/ | ||||
| var itemCreate = require("../common/CreateItem"); | ||||
| var itemEdit = require("../common/EditItem"); | ||||
|  | ||||
| describe('Create Display', function() { | ||||
|     var createClass = new itemCreate(); | ||||
|     var editItemClass = new itemEdit(); | ||||
|     var ITEM_NAME = "Display"; | ||||
|     var ITEM_TYPE = "display"; | ||||
|     var ITEM_MENU_GLYPH = 'L\nDisplay Layout'; | ||||
|     var ITEM_GRID_SELECT = 'P\nL\nDisplay\n0 Items'; | ||||
|  | ||||
|     beforeEach(require('../common/Launch')); | ||||
|     it('should Create new Display', function(){ | ||||
|         //button.click() | ||||
|         browser.wait(function() { | ||||
|            createClass.createButton().click(); | ||||
|            return true; | ||||
|         }).then(function (){ | ||||
|             var folder =  createClass.selectNewItem(ITEM_TYPE) | ||||
|             expect(folder.getText()).toEqual([ ITEM_MENU_GLYPH ]); | ||||
|             browser.sleep(1000); | ||||
|                folder.click() | ||||
|         }).then(function() { | ||||
|             browser.wait(function () { | ||||
|                 return element.all(by.model('ngModel[field]')).isDisplayed(); | ||||
|             }) | ||||
|             createClass.fillFolderForum(ITEM_NAME,ITEM_TYPE).click(); | ||||
|             browser.sleep(1000); | ||||
|         }).then(function (){ | ||||
|             var item = editItemClass.SelectItem(ITEM_GRID_SELECT); | ||||
|             expect(item.count()).toBe(1); | ||||
|             browser.sleep(1000); | ||||
|         }); | ||||
|  | ||||
|     }); | ||||
|  | ||||
| }); | ||||
							
								
								
									
										26
									
								
								protractor/create/CreateSpec.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								protractor/create/CreateSpec.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | ||||
| /***************************************************************************** | ||||
|  * Open MCT Web, Copyright (c) 2014-2015, United States Government | ||||
|  * as represented by the Administrator of the National Aeronautics and Space | ||||
|  * Administration. All rights reserved. | ||||
|  * | ||||
|  * Open MCT Web is licensed under the Apache License, Version 2.0 (the | ||||
|  * "License"); you may not use this file except in compliance with the License. | ||||
|  * You may obtain a copy of the License at | ||||
|  * http://www.apache.org/licenses/LICENSE-2.0. | ||||
|  * | ||||
|  * Unless required by applicable law or agreed to in writing, software | ||||
|  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | ||||
|  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | ||||
|  * License for the specific language governing permissions and limitations | ||||
|  * under the License. | ||||
|  * | ||||
|  * Open MCT Web includes source code licensed under additional open source | ||||
|  * licenses. See the Open Source Licenses file (LICENSES.md) included with | ||||
|  * this source code distribution or the Licensing information page available | ||||
|  * at runtime from the About dialog for additional information. | ||||
|  *****************************************************************************/ | ||||
|  | ||||
| var CreateTemplate = require('./CreateTemplate'); | ||||
|  | ||||
| new CreateTemplate("Display Layout", true).describe(); | ||||
| new CreateTemplate("Web Page", false).describe(); | ||||
							
								
								
									
										79
									
								
								protractor/create/CreateTemplate.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										79
									
								
								protractor/create/CreateTemplate.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,79 @@ | ||||
| var launch = require('../common/Launch'), | ||||
|     create = require('../common/create'); | ||||
|  | ||||
| function CreateTemplate(name, expectEditMode) { | ||||
|     this.name = name; | ||||
|     this.expectEditMode = !!expectEditMode; | ||||
| } | ||||
|  | ||||
| CreateTemplate.prototype.describe = function (nested) { | ||||
|     describe("Create " + this.name, function () { | ||||
|         beforeEach(launch); | ||||
|         beforeEach(create.bind(this, this.name)); | ||||
|  | ||||
|         it(this.expectEditMode ? "initiates Edit mode" : "does not initiate Edit mode", function () { | ||||
|             expect(element(by.css('.s-status-editing')).isPresent()) | ||||
|                 .toBe(this.expectEditMode); | ||||
|         }.bind(this)); | ||||
|  | ||||
|         it(!this.expectEditMode ? "shows a dialog" : "does not show a dialog", function () { | ||||
|             expect(element(by.css('.overlay')).isPresent()) | ||||
|                 .toBe(!this.expectEditMode); | ||||
|         }.bind(this)); | ||||
|  | ||||
|         if (this.expectEditMode) { | ||||
|             describe("when saved", function () { | ||||
|                 var overlay; | ||||
|  | ||||
|                 beforeEach(function () { | ||||
|                     element(by.css('.t-save')).click(); | ||||
|                     overlay = element(by.css('.overlay')); | ||||
|                 }); | ||||
|  | ||||
|                 it("shows a dialog", function () { | ||||
|                     expect(overlay.isPresent()).toBe(true); | ||||
|                 }); | ||||
|  | ||||
|                 describe("and confirmed", function () { | ||||
|                     beforeEach(function () { | ||||
|                         overlay.all(by.css('.bottom-bar .s-btn')) | ||||
|                             .filter(function (element) { | ||||
|                                 return element.getText().then(function (text) { | ||||
|                                     return text === 'OK'; | ||||
|                                 }); | ||||
|                             }) | ||||
|                             .click(); | ||||
|                     }); | ||||
|  | ||||
|                     it("dismisses the dialog", function () { | ||||
|                         expect(element(by.css('.overlay')).isPresent()) | ||||
|                             .toBe(false); | ||||
|                     }); | ||||
|                 }); | ||||
|  | ||||
|                 describe("and cancelled", function () { | ||||
|                     beforeEach(function () { | ||||
|                         overlay.all(by.css('.bottom-bar .s-btn')) | ||||
|                             .filter(function (element) { | ||||
|                                 return element.getText().then(function (text) { | ||||
|                                     return text === 'Cancel'; | ||||
|                                 }); | ||||
|                             }) | ||||
|                             .click(); | ||||
|                     }); | ||||
|  | ||||
|                     it("dismisses the dialog", function () { | ||||
|                         expect(element(by.css('.overlay')).isPresent()) | ||||
|                             .toBe(false); | ||||
|                     }); | ||||
|                 }); | ||||
|             }); | ||||
|         } | ||||
|  | ||||
|         if (nested) { | ||||
|             nested(); | ||||
|         } | ||||
|     }.bind(this)); | ||||
| }; | ||||
|  | ||||
| module.exports = CreateTemplate; | ||||
| @@ -1,60 +0,0 @@ | ||||
| #! /bin/bash | ||||
| ARGUMENT=$1; | ||||
| DIRECTORY=/Users/jsanderf/Applications; | ||||
|  | ||||
| if [ $# != 1 ]; then | ||||
|     echo "Expected 1 Aurgument. Received " $# 1>&2; | ||||
|     exit 1 | ||||
| fi | ||||
| #Start webdrive and http-server | ||||
| if [ $ARGUMENT == start ]; then | ||||
|     echo | ||||
|     echo "Starting MMAP ..." | ||||
|     $DIRECTORY/MAMP/ctlscript.sh start  > logs/MAMP.log 2>&1 & | ||||
|     wait $!     | ||||
|     if [ $? != 0 ]; then | ||||
|         echo "    Error: MMAP" | ||||
|         echo "    Check Log file" | ||||
|         echo | ||||
|     else | ||||
|         echo "    Started: MMAP"   | ||||
|         echo | ||||
|     fi | ||||
|     echo "Starting webdriver ..." | ||||
|     webdriver-manager start > logs/webdriver.log 2>&1 & | ||||
|     sleep 3; | ||||
|     if grep -iq "Exception"  logs/webdriver.log; then | ||||
|         echo "    Error: webdriver-manager" | ||||
|         echo "    Check Log file" | ||||
|         echo  | ||||
|     else | ||||
|         echo "    Started: webdriver-manager"   | ||||
|     fi | ||||
|     echo "Starting Elastic Search..." | ||||
|     elasticsearch > logs/elasticSearch.log 2>&1 & | ||||
|     sleep 3; | ||||
|     if grep -iq "Exception"  logs/elasticSearch.log; then | ||||
|         echo "    Error: ElasticSearch" | ||||
|         echo "    Check Log file" | ||||
|         echo  | ||||
|     else | ||||
|         echo "    Started: ElasticSearch" | ||||
|     fi | ||||
| #Runs Protractor tests     | ||||
| elif [ $ARGUMENT == run ]; then | ||||
|     protractor ./conf.js | ||||
| #Kill Process     | ||||
| elif [ $ARGUMENT == stop ]; then | ||||
|     echo "Stopping MAMP" | ||||
|     $DIRECTORY/MAMP/ctlscript.sh stop  >> logs/MAMP.log 2>&1 & | ||||
|     sleep 1; | ||||
|     echo "Stopping webdriver ..." | ||||
|     kill $(ps aux | grep "[p]rotractor" | awk '{print $2}'); | ||||
|     kill $(ps aux | grep "[w]ebdriver-manager" | awk '{print $2}'); | ||||
|     sleep 1; | ||||
|     echo "Stopping Elastic..." | ||||
|     kill $(ps aux | grep "[e]lastic" | awk '{print $2}'); | ||||
|     sleep 1;  | ||||
| else  | ||||
|     echo "Unkown: Command" $1; | ||||
| fi | ||||
		Reference in New Issue
	
	Block a user