Skip to content
This repository was archived by the owner on Feb 26, 2024. It is now read-only.

Failing e2e tests #377

Closed
IAmAnubhavSaini opened this issue Oct 18, 2016 · 8 comments
Closed

Failing e2e tests #377

IAmAnubhavSaini opened this issue Oct 18, 2016 · 8 comments

Comments

@IAmAnubhavSaini
Copy link

Following https://docs.angularjs.org/tutorial/#environment-setup
I ran application in a terminal with npm start, then in another tab, npm run protractor which failed.

Here's the error log:

0 info it worked if it ends with ok
1 verbose cli [ '/home/dev/.nvm/versions/node/v6.8.1/bin/node',
1 verbose cli   '/home/dev/.nvm/versions/node/v6.8.1/bin/npm',
1 verbose cli   'run',
1 verbose cli   'protractor' ]
2 info using [email protected]
3 info using [email protected]
4 verbose run-script [ 'preprotractor', 'protractor', 'postprotractor' ]
5 info lifecycle [email protected]~preprotractor: [email protected]
6 verbose lifecycle [email protected]~preprotractor: unsafe-perm in lifecycle true
7 verbose lifecycle [email protected]~preprotractor: PATH: /home/dev/.nvm/versions/node/v6.8.1/lib/node_modules/npm/bin/node-gyp-bin:/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/.bin:/home/dev/.nvm/versions/node/v6.8.1/bin:/home/dev/bin:/home/dev/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
8 verbose lifecycle [email protected]~preprotractor: CWD: /home/dev/code/angularjs/tutorials/angular-phonecat
9 silly lifecycle [email protected]~preprotractor: Args: [ '-c', 'npm run update-webdriver' ]
10 silly lifecycle [email protected]~preprotractor: Returned: code: 0  signal: null
11 info lifecycle [email protected]~protractor: [email protected]
12 verbose lifecycle [email protected]~protractor: unsafe-perm in lifecycle true
13 verbose lifecycle [email protected]~protractor: PATH: /home/dev/.nvm/versions/node/v6.8.1/lib/node_modules/npm/bin/node-gyp-bin:/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/.bin:/home/dev/.nvm/versions/node/v6.8.1/bin:/home/dev/bin:/home/dev/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
14 verbose lifecycle [email protected]~protractor: CWD: /home/dev/code/angularjs/tutorials/angular-phonecat
15 silly lifecycle [email protected]~protractor: Args: [ '-c', 'protractor e2e-tests/protractor.conf.js' ]
16 silly lifecycle [email protected]~protractor: Returned: code: 1  signal: null
17 info lifecycle [email protected]~protractor: Failed to exec protractor script
18 verbose stack Error: [email protected] protractor: `protractor e2e-tests/protractor.conf.js`
18 verbose stack Exit status 1
18 verbose stack     at EventEmitter.<anonymous> (/home/dev/.nvm/versions/node/v6.8.1/lib/node_modules/npm/lib/utils/lifecycle.js:255:16)
18 verbose stack     at emitTwo (events.js:106:13)
18 verbose stack     at EventEmitter.emit (events.js:191:7)
18 verbose stack     at ChildProcess.<anonymous> (/home/dev/.nvm/versions/node/v6.8.1/lib/node_modules/npm/lib/utils/spawn.js:40:14)
18 verbose stack     at emitTwo (events.js:106:13)
18 verbose stack     at ChildProcess.emit (events.js:191:7)
18 verbose stack     at maybeClose (internal/child_process.js:877:16)
18 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)
19 verbose pkgid [email protected]
20 verbose cwd /home/dev/code/angularjs/tutorials/angular-phonecat
21 error Linux 4.4.0-43-generic
22 error argv "/home/dev/.nvm/versions/node/v6.8.1/bin/node" "/home/dev/.nvm/versions/node/v6.8.1/bin/npm" "run" "protractor"
23 error node v6.8.1
24 error npm  v3.10.9
25 error code ELIFECYCLE
26 error [email protected] protractor: `protractor e2e-tests/protractor.conf.js`
26 error Exit status 1
27 error Failed at the [email protected] protractor script 'protractor e2e-tests/protractor.conf.js'.
27 error Make sure you have the latest version of node.js and npm installed.
27 error If you do, this is most likely a problem with the angular-phonecat package,
27 error not with npm itself.
27 error Tell the author that this fails on your system:
27 error     protractor e2e-tests/protractor.conf.js
27 error You can get information on how to open an issue for this project with:
27 error     npm bugs angular-phonecat
27 error Or if that isn't available, you can get their info via:
27 error     npm owner ls angular-phonecat
27 error There is likely additional logging output above.
28 verbose exit [ 1, true ]

Node and NPM versions are on 23rd and 24th line above.

@IAmAnubhavSaini
Copy link
Author

Then I installed jre and jdk via sudo apt install default-jre default-jdk and ran npm run protrator again. Found this error:

npm run protractor

> [email protected] preprotractor /home/dev/code/angularjs/tutorials/angular-phonecat
> npm run update-webdriver


> [email protected] preupdate-webdriver /home/dev/code/angularjs/tutorials/angular-phonecat
> npm install


> [email protected] postinstall /home/dev/code/angularjs/tutorials/angular-phonecat
> bower install

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

> [email protected] update-webdriver /home/dev/code/angularjs/tutorials/angular-phonecat
> webdriver-manager update

selenium standalone is up to date.
chromedriver is up to date.

> [email protected] protractor /home/dev/code/angularjs/tutorials/angular-phonecat
> protractor e2e-tests/protractor.conf.js

[09:22:55] I/local - Starting selenium standalone server...
[09:22:55] I/launcher - Running 1 instances of WebDriver
[09:22:55] I/local - Selenium standalone server started at http://10.0.2.15:50148/wd/hub

/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/selenium-webdriver/error.js:27
    super(opt_error);
    ^
SessionNotCreatedError: session not created exception
from unknown error: Runtime.executionContextCreated has invalid 'context': {"auxData":{"frameId":"24588.1","isDefault":true},"id":1,"name":"","origin":"://"}
  (Session info: chrome=54.0.2840.59)
  (Driver info: chromedriver=2.21.371461 (633e689b520b25f3e264a2ede6b74ccc23cb636a),platform=Linux 4.4.0-43-generic x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 1.07 seconds
Build info: version: '2.52.0', revision: '4c2593c', time: '2016-02-11 19:06:42'
System info: host: 'dev-VirtualBox', ip: '127.0.1.1', os.name: 'Linux', os.arch: 'amd64', os.version: '4.4.0-43-generic', java.version: '1.8.0_91'
Driver info: org.openqa.selenium.chrome.ChromeDriver
    at WebDriverError (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/selenium-webdriver/error.js:27:5)
    at SessionNotCreatedError (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/selenium-webdriver/error.js:296:5)
    at Object.checkLegacyResponse (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/selenium-webdriver/error.js:580:13)
    at /home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/selenium-webdriver/lib/webdriver.js:64:13
    at Promise.invokeCallback_ (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/selenium-webdriver/lib/promise.js:1329:14)
    at TaskQueue.execute_ (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/selenium-webdriver/lib/promise.js:2790:14)
    at TaskQueue.executeNext_ (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/selenium-webdriver/lib/promise.js:2773:21)
    at asyncRun (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/selenium-webdriver/lib/promise.js:2652:27)
    at /home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/selenium-webdriver/lib/promise.js:639:7
    at process._tickCallback (internal/process/next_tick.js:103:7)
From: Task: WebDriver.createSession()
    at acquireSession (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/selenium-webdriver/lib/webdriver.js:62:22)
    at Function.createSession (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/selenium-webdriver/lib/webdriver.js:295:12)
    at Builder.build (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/selenium-webdriver/builder.js:458:24)
    at Local.DriverProvider.getNewDriver (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/protractor/built/driverProviders/driverProvider.js:37:33)
    at Runner.createBrowser (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/protractor/built/runner.js:182:43)
    at /home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/protractor/built/runner.js:255:30
    at _fulfilled (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/q/q.js:834:54)
    at self.promiseDispatch.done (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/q/q.js:863:30)
    at Promise.promise.promiseDispatch (/home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/q/q.js:796:13)
    at /home/dev/code/angularjs/tutorials/angular-phonecat/node_modules/q/q.js:604:44
[09:22:57] E/launcher - Process exited with error code 1

npm ERR! Linux 4.4.0-43-generic
npm ERR! argv "/home/dev/.nvm/versions/node/v6.8.1/bin/node" "/home/dev/.nvm/versions/node/v6.8.1/bin/npm" "run" "protractor"
npm ERR! node v6.8.1
npm ERR! npm  v3.10.9
npm ERR! code ELIFECYCLE
npm ERR! [email protected] protractor: `protractor e2e-tests/protractor.conf.js`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] protractor script 'protractor e2e-tests/protractor.conf.js'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the angular-phonecat package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     protractor e2e-tests/protractor.conf.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs angular-phonecat
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls angular-phonecat
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR!     /home/dev/code/angularjs/tutorials/angular-phonecat/npm-debug.log

@IAmAnubhavSaini
Copy link
Author

IAmAnubhavSaini commented Oct 18, 2016

$ java -version
openjdk version "1.8.0_91"
OpenJDK Runtime Environment (build 1.8.0_91-8u91-b14-3ubuntu1~16.04.1-b14)
OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)

$ npm -v
3.10.9

$ node -v
v6.8.1

@hesterrocks
Copy link

I had the same errors when I ran npm run protrator

@petebacondarwin
Copy link
Contributor

I am not sure we have tested this on node 6 - could you try node 4?

@gkalpak
Copy link
Member

gkalpak commented Oct 18, 2016

FWIW, it works for me (on Windows) with node v6.8.1 😕

@Narretz
Copy link

Narretz commented Oct 18, 2016

node 4.4.4
npm 2.15.1
Java RE build 1.8.0_101-b13

npm packages shouldn't be a variable, as we all install the same. But you can try by installing a newer (>3) protractor version for example.

@gkalpak
Copy link
Member

gkalpak commented Oct 18, 2016

There seems to be an issue on linux (I tried on Ubuntu 16.04).
Updating protractor to version 4.0.9 solves the issue. (I'll submit a fix.)

gkalpak added a commit to gkalpak/angular-seed that referenced this issue Oct 18, 2016
This also fixes some issues on linux (e.g. angular/angular-phonecat#377).
gkalpak added a commit to gkalpak/angular-phonecat that referenced this issue Oct 18, 2016
gkalpak added a commit to gkalpak/angular-phonecat that referenced this issue Oct 18, 2016
gkalpak added a commit to angular/angular-seed that referenced this issue Oct 18, 2016
This also fixes some issues on linux (e.g. angular/angular-phonecat#377).

Closes #378
@IAmAnubhavSaini
Copy link
Author

Thanks @gkalpak

kmurban94 pushed a commit to kmurban94/cmsc435-scrimmage1 that referenced this issue Feb 9, 2017
This also fixes some issues on linux (e.g. angular/angular-phonecat#377).

Closes #378
natos added a commit to HackYourFuture/generala that referenced this issue Apr 30, 2017
* the initial version

* updated jasmine adapter to newer version

* upgrade to angular 0.9.10 and update the code with angular API changes

* upgrade to angular 0.9-10

* move jsTestDriver.conf into config/ directory

* upgrading angular to 0.9.12 thought-implanter

* angular 0.9.12 $hover service fix

* angular 0.9.12 leftover .scope call fix

* default to utf8 charset

* jstd 1.3.1+ and jasmine-jstd-adapter upgrade

* improving the test-server.sh console output

* switching scripts/test.sh from sh to bash

* updating angular to 0.9.13 curdling-stare

* upgrading angular to 0.9.14 key-maker

* removing display:none + ng:show from index.html

the best practice is not to use angular markup in index.html so
the hide/show thing is not needed.

instead of <div>{{foo}}</div> use <div ng:bind="foo"></div> in
index.html. In other templates it is totally fine to use markup.

* fix typo in controllers.js placeholder code

* upgrading to angular 0.9.15 lethal-stutter

* add index.html to the seed layout docs

* Added windows .bat equivalents to .sh scripts for running tests

* improving the windows bat scripts

* update readme with windows info

* making the windows script crlf delimited

* angular 0.9.16 weather-control

* Add jstd-scenario-adapter so we can run e2e tests with JsTD

Added basic configuration, so all you need to run e2e tests:
1/ start web server in project root
>> ./scripts/web-server.js

2/ start JsTD server
>> ./scripts/e2e-test-server.sh

3/ capture some browser
navigate to http://localhost:9877/capture

4/ run the tests
>> ./scripts/e2e-test.sh

* Update scripts for running tests

- change forward slash into back slash in Win scripts
- split params to new lines
- remove $tests option as it makes no sense now

* Missing semi-colons

* upgrade to angular 0.9.17 vegetable-reanimation

* upgrade to angular 0.9.18 jiggling-armfat

* upgrade to angular 0.9.19 canine-psychokinesis

* Fixed two small typos in scripts/web-server.js.

* upgrade to AngularJS 0.10.0 chicken-hands

* upgrade to AnuglarJS 0.10.6 bubblewrap-cape

* upgrade to 0.10.6 final

* remove extra ng:app from async template

* add inlined ng:cloak definition to the async template

* Update angular to 1.0.0-rc1

* Update jasmine to 1.1.0

* Update seed app

* Fix broken references to widgets and make template IE friendly

* upgrade seed to 1.0.0rc2 silence-absorption

* upgrade to 1.0.0rc3 barefoot-telepathy

* upgrade to angular 1.0.0rc4 insomnia-induction

* upgrade to angular 1.0.0rc5 reality-distortion

* upgrade to AngularJS 1.0.0rc6 runny-nose

* various fixes

* update the jasmine-jstd-adapter with fixes

* Fix extraneous " in doctype tag. Changed ng:autotest to ng-autotest

* upgrade to AngularJS 1.0.0rc7 rc-generation

* upgrade to AngularJS 1.0.0rc8 blooming-touch

* upgrade to AngularJS 1.0.0rc eggplant-teleportation

* fix typo in sample e2e test

* upgrade to AngularJS 1.0.0rc10 tesseract-giftwrapping

* upgrade to AngularJS 1.0.0rc11 promise-resolution

* migrate code to 1.0.0rc11

* upgrade to AngularJS 1.0.0rc12

* upgrading AngularJS to 1.0

* upgrade angular to 1.0.1

* upgrade to AngularJS 1.0.2

* add link to CDN to index.html

* switch over to using Testacular for E2E tests

* switch over to using Testacular for running unit tests

* improve wildcards in testacular configs

* pass arguments through test.sh and e2e-test.sh

* add junit reporter to testacular configs

* Update windows scripts to use Testacular

* sync README with code

* Added global flag to path replace function in handleRequest to allow more than one space (aka %20) in the name

* Update to node 0.8 : "sys" is now called "util".

Simple text and replace and it works on node 0.8.

* Update README.md file

* add 'svg' MIME type to web-server

* remove obsolete test-server scripts

* upgrade to AngularJS 1.0.3 bouncy-thunder

* add missing ng-cloak directive

* upgrade to angular 1.0.4

* update angular to 1.0.5

* Added link to clickstart

* upgrade to angular 1.0.6 universal-irreversibility

* shift to karma from testacular

* fixed capitalisation of Karma and links corrected

* update CDN link index.html to 1.0.6

* travis-ci config for unit and e2e tests

* Made runner.html to use utf-8 charset

* Moved global controllers to module

* Switch to one global .gitignore

* Remove dev tools specific files from .gitignore

There are infinite dev tools with infinite kinds of files they generate. Instead of putting every possible entry to the project's .gitignore file, a user should create her own global .gitignore with entries specific to the tools used by her.

* correct "logs/*" entry in .gitignore

* "testacular" -> "karma" in travis config

* upgrade to angular 1.0.7 monochromatic-rainbow

* upgrade angular-loader to v1.0.7

* update CDN link in index.html to 1.0.7

* Jasmine needs to be listed as a framework

karma conf is now exported functions

how embarrassing - now it really should work

need ng-scenario for e2e tests

need karma-junit-reporter

trying without jasmine

trying some other plugins

adding jasmine in

I will stab someone

ng-scenario is probably needed

trying adding karma-ng-scenario

need a package.json to specify dev deps

normalise quotes

* add license file

* upgrade to angular 1.2.0-rc.2 barehand-atomsplitting

* add ngRoute module to app.js

* load angular-route.js in index.html

* upgrade to angular 1.2.0-rc.3 ferocious-twitch

* fix(package.json): Fixed spelling and versions in package.json

* gitignore: Added node_modules to ignore

* feat(e2e): Used local karma to run e2e tests

* fix(unit): Changed unit test to use local karma

* fix(karma): Excluded minified files from unit test

* fix(package): Added repository to package.json

* fix(karma): Fixed inadvertently-removed asterisk match

* fix(e2e): Change app loading path in e2e test

* fix(karma): Removed loader file from unit config

* fix(scenario): Made path ci-friendly

* update(angular): bump angular to 1.2.0

* fix(karma): excluded angular-scenario

* update(angular): bump angular to 1.2.2

* update(angular): bump angular to 1.2.3

* bump angular to 1.2.4

* update(angular): bump angular to 1.2.5

* update(angular): bump to 1.2.6

* update(angular): bump to 1.2.7

* chore(build): update angular using a directory

* chore(build): refactor update angular and run tests

* update(angular): bump to 1.2.8

* update(angular): bump to 1.2.9

* update(angular): bump to 1.2.10

* update(angular): bump to 1.2.11

* chore(testing): update end to end tests to Protractor

* update(angular): bump to 1.2.12

* update(angular): bump to 1.2.13

* update(angular): bump to 1.2.14

* fix(readme): correct typo

* fix(readme): remove angular-scenario.js from readme

* update(angular): bump to 1.3.0-beta.1

* update(angular): bump to 1.3.0-build.51+sha.e888dde

* update(angular): bump to 1.3.0-beta.2+

* update(angular): bump to 1.3.0-beta.2

* update(angular): bump to 1.3.0-beta.3

* update(angular): bump to 1.2.15

* chore(dependencies): remove inline dependencies (use npm & bower instead)

It is inefficient to store the angular libraries inside this repository.
Moreover it is a pain to have to update them every time a new version of
Angular is released.

This commit changes the project to use bower to install the angular
dependencies.

In addition, simplify the structure of the project, all the support
scripts have either been replaced with well-defined npm modules (e.g
http-server) or have been moved to the package.json `script` property.

This means that we can now do all the management of the project with
three simple commands:

* `npm start` - start the development web server to host the application
* `npm test` - start the Karma test runner
* `npm run-script protractor` - start the Protractor end-to-end test runner

A nice feature of these scripts is that they run `npm install` first, thus
ensuring that the necessary npm dependencies are in place.  Also there is
a `postinstall` script which runs `bower install` to ensure the angular
library dependencies are in place and updates the index-async.html
with the `angular-loader.min.js` content via the following sed script:

```
sed '/@@NG_LOADER@@/{
  s/@@NG_LOADER@@//g
  r bower_components/angular-loader/angular-loader.min.js
}' app/index-async.html.template > app/index-async.html
```

* chore(npm-scripts): ensure they work on Windows

* chore(update-index-async): update async code in place

* chore(package.json): remove postupdate hook

We would want more control over when bower updates are run.

* docs(README.md): update instructions to match scripts

* chore(package.json): watch test files by default

* docs(README): npm test watches files for changes

* docs(LICENSE): update copyright year to 2014

Closes #155

* chore(travis): use more recent version of node

* style(controllers): consistent use of dots

The second controller led with a period while the first did not.
Moving the period in front of the first controller creates consistency
and more explicitly conveys the chaining behavior.

Closes #138

* chore(travis): run http-server in the background

* test(controllers): use $controller to get hold of a controller for testing

Closes #75

* chore(travis): install the webdriver for protractor

* style(filters): add missing semicolon

* chore(jshint): add jshint config file

* chore(package): add extra scripts to make life even smoother

* chore(lib): remove lib folder

It is not being used anymore - angular-mocks should be installed by bower.

Closes #181

* docs(README): add info about prerequisites

* fix(package.json): bind web server only to localhost

It's better to bind to localhost only during development, since it improves security.
It also avoids a pesky warning under Mac OS.

Closes #165

* feat(index): use html5-boilerplate HTML, modernizr and styles

Closes #1

* feat(myApp.controllers): add $scope param to clarify annotation

Closes #154

* chore(karma): add junit-reporter

We need to list karma-junit-reporter as a plugin and include it as a node module
dependency before we can use it to output junit format.

Closes #178

* chore(bower): fix angular-mocks dependency

* test(controllers): provide $scope when instantiating controllers

* chore(bower): move bower_components under the app folder

This will help web servers who are not happy to serve up files outside
the "root" folder of the application.

Closes #183
Closes #182

* fix(index): remove invalid path references

A few invalid paths which were referenced in index.html were removed.
These paths became invalid due to commit daf71f2
which moved where the bower_components directory is placed.

Closes #184

* fix(index-async): correct the path to bower_components

* docs(README): fix typos

Closes #190

* chore(travis): node js version should between quotes

node js version should between quotation marks based on
http://docs.travis-ci.com/user/languages/javascript-with-nodejs/

Closes #213

* refact(*): refactor app layout to conform to best practices

* refact(*): update overall application architecture to match best practices

* refact(*): further architectural improvements

* chore(package.json): update to protractor 1.1.1

* docs(README): fix link to Jasmine

Closes #209

* docs(README): fix grammar and ambiguous sentence

Closes #223

* docs(scenarios): fix link to protractor docs

Closes #206

* chore(package.json): remove local HTTP server's cache-control header

Disable the local HTTP server's cache-control header, to fix the problem
where the browser wouldn't reload templateUrl-based directive templates.

Fixes #193
Closes #194

* chore(package.json): fix path to angular-load.min.js.map in "update-index-async" command

This fixes the 404 not found when it tries to retrieve this map file and can't because
the path is wrong.

Note that you won't see that error if you have JavaScript source maps turned off.

Closes #197

* docs(README): fix typo

Closes #229

* refact(index.html): remove self closing slash for link tag.

You don't need it when doctype is HTML5 and also the others above already
don't have one.

Closes #232

* docs(README): add alternative git clone method

Closes #239

* chore(bower.son): update angular dep to 1.3.x, html5-boilerplate

* chore(package.json): update karma, add karma plugins dep

* chore(bower.json): Update angular dependency to ~1.4.0

* chore(protractor): update to use protractor v2.1.0

* chore(*): update dependencies and configuration files

Closes #341

* chore(*): serve from the `app/` directory

Closes #341

* chore(*): use `!` as hash-prefix

Closes #341

* fix(index-async): fix inlining of `angular-loader` into `index-async.html`

Previously, `angular-loader` was never inlined into `index-async.html`, because running `sed` with a
multiline RegExp fails to match anything, since `sed` matches per line. Using the `fs` module
directly, solves the issues.
(Now, we no longer depend on `shelljs`.)

Closes #309

* fix(index-async): properly inline text containing `$$`

When using `'...'.replace(regex, replacement)`, any instances of `$$` inside `replacement` will be
converted to `$` (see
[mdn](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace#Specifying_a_string_as_a_parameter).
Thus, for example `$$minErr` and `$$moduleName` are converted to `$minErr` and `$moduleName`.
This commit fixes it, by first using `'...'.split(regex).join(replacement)` instead.

Fixes #283
Closes #286

* docs(README): update for consistenty ("End to End" --> "end-to-end")

This test refers to general end-to-end tests.

Closes #235

* docs(LICENSE): update copyright year to 2016

Closes #269

* fix(index-async): correct html5-boilerplate paths

Paths to html5-boilerplate resource were configured incorrectly.
These paths are corrected.

Closes #356

* chore(travis): switch to Chrome, Node.js 4.5.x and Ubuntu "trusty"

Closes #360

* docs(README.md): mention JDK dependency for Protractor

Fixes #222
Closes #312

* docs(README.md): add links for Selenium and JDK

* refactor(app.css): simplify rules for styling menu item seperator

Closes #367

* docs(README.md): fix typo (Stadalone --> Standalone)

* chore(package): update to Protractor 4.x

This also fixes some issues on linux (e.g. angular/angular-phonecat#377).

Closes #378

* docs(README.md): remove outdated CloudBees integration

The CloudBees URL doesn't seem to work any more. And the
`CloudBees-community/angular-js-clickstart` (now moved to `CloudBees-attic`)
relies on the patched `michaelneale/angular-seed`, which hasn't been updated for
~2.5 years and is more than 40 commits behind `angular/angular-seed`.

* feat(*): add npm script for updating bower dependencies as well

Previously, is was suggested to run `bower update`, which would only work if `bower` was globally
installed. Since a global `bower` installation should not be a prerequisite for the seed project, it
is now possible to update bower dependencies via the new `update-deps` npm script.

Fixes #383

* docs(README.md): highlight the JDK dependency in the "Depedencies" section

* docs(README.md): minor typo/wording/style improvements

Closes #384

* rename foldar app to client

* add detials to wercker faile

* Fixed bower_components, added basic compilation flow to npm scripts

* Some new scripts to compile the app

* Updated wercker yml

* Updated bower steps in wercker yml

* Fixed indentation in wercker yaml

* Added wercker status to README
tarektarho pushed a commit to HackYourFuture/generala that referenced this issue May 21, 2017
* the initial version

* updated jasmine adapter to newer version

* upgrade to angular 0.9.10 and update the code with angular API changes

* upgrade to angular 0.9-10

* move jsTestDriver.conf into config/ directory

* upgrading angular to 0.9.12 thought-implanter

* angular 0.9.12 $hover service fix

* angular 0.9.12 leftover .scope call fix

* default to utf8 charset

* jstd 1.3.1+ and jasmine-jstd-adapter upgrade

* improving the test-server.sh console output

* switching scripts/test.sh from sh to bash

* updating angular to 0.9.13 curdling-stare

* upgrading angular to 0.9.14 key-maker

* removing display:none + ng:show from index.html

the best practice is not to use angular markup in index.html so
the hide/show thing is not needed.

instead of <div>{{foo}}</div> use <div ng:bind="foo"></div> in
index.html. In other templates it is totally fine to use markup.

* fix typo in controllers.js placeholder code

* upgrading to angular 0.9.15 lethal-stutter

* add index.html to the seed layout docs

* Added windows .bat equivalents to .sh scripts for running tests

* improving the windows bat scripts

* update readme with windows info

* making the windows script crlf delimited

* angular 0.9.16 weather-control

* Add jstd-scenario-adapter so we can run e2e tests with JsTD

Added basic configuration, so all you need to run e2e tests:
1/ start web server in project root
>> ./scripts/web-server.js

2/ start JsTD server
>> ./scripts/e2e-test-server.sh

3/ capture some browser
navigate to http://localhost:9877/capture

4/ run the tests
>> ./scripts/e2e-test.sh

* Update scripts for running tests

- change forward slash into back slash in Win scripts
- split params to new lines
- remove $tests option as it makes no sense now

* Missing semi-colons

* upgrade to angular 0.9.17 vegetable-reanimation

* upgrade to angular 0.9.18 jiggling-armfat

* upgrade to angular 0.9.19 canine-psychokinesis

* Fixed two small typos in scripts/web-server.js.

* upgrade to AngularJS 0.10.0 chicken-hands

* upgrade to AnuglarJS 0.10.6 bubblewrap-cape

* upgrade to 0.10.6 final

* remove extra ng:app from async template

* add inlined ng:cloak definition to the async template

* Update angular to 1.0.0-rc1

* Update jasmine to 1.1.0

* Update seed app

* Fix broken references to widgets and make template IE friendly

* upgrade seed to 1.0.0rc2 silence-absorption

* upgrade to 1.0.0rc3 barefoot-telepathy

* upgrade to angular 1.0.0rc4 insomnia-induction

* upgrade to angular 1.0.0rc5 reality-distortion

* upgrade to AngularJS 1.0.0rc6 runny-nose

* various fixes

* update the jasmine-jstd-adapter with fixes

* Fix extraneous " in doctype tag. Changed ng:autotest to ng-autotest

* upgrade to AngularJS 1.0.0rc7 rc-generation

* upgrade to AngularJS 1.0.0rc8 blooming-touch

* upgrade to AngularJS 1.0.0rc eggplant-teleportation

* fix typo in sample e2e test

* upgrade to AngularJS 1.0.0rc10 tesseract-giftwrapping

* upgrade to AngularJS 1.0.0rc11 promise-resolution

* migrate code to 1.0.0rc11

* upgrade to AngularJS 1.0.0rc12

* upgrading AngularJS to 1.0

* upgrade angular to 1.0.1

* upgrade to AngularJS 1.0.2

* add link to CDN to index.html

* switch over to using Testacular for E2E tests

* switch over to using Testacular for running unit tests

* improve wildcards in testacular configs

* pass arguments through test.sh and e2e-test.sh

* add junit reporter to testacular configs

* Update windows scripts to use Testacular

* sync README with code

* Added global flag to path replace function in handleRequest to allow more than one space (aka %20) in the name

* Update to node 0.8 : "sys" is now called "util".

Simple text and replace and it works on node 0.8.

* Update README.md file

* add 'svg' MIME type to web-server

* remove obsolete test-server scripts

* upgrade to AngularJS 1.0.3 bouncy-thunder

* add missing ng-cloak directive

* upgrade to angular 1.0.4

* update angular to 1.0.5

* Added link to clickstart

* upgrade to angular 1.0.6 universal-irreversibility

* shift to karma from testacular

* fixed capitalisation of Karma and links corrected

* update CDN link index.html to 1.0.6

* travis-ci config for unit and e2e tests

* Made runner.html to use utf-8 charset

* Moved global controllers to module

* Switch to one global .gitignore

* Remove dev tools specific files from .gitignore

There are infinite dev tools with infinite kinds of files they generate. Instead of putting every possible entry to the project's .gitignore file, a user should create her own global .gitignore with entries specific to the tools used by her.

* correct "logs/*" entry in .gitignore

* "testacular" -> "karma" in travis config

* upgrade to angular 1.0.7 monochromatic-rainbow

* upgrade angular-loader to v1.0.7

* update CDN link in index.html to 1.0.7

* Jasmine needs to be listed as a framework

karma conf is now exported functions

how embarrassing - now it really should work

need ng-scenario for e2e tests

need karma-junit-reporter

trying without jasmine

trying some other plugins

adding jasmine in

I will stab someone

ng-scenario is probably needed

trying adding karma-ng-scenario

need a package.json to specify dev deps

normalise quotes

* add license file

* upgrade to angular 1.2.0-rc.2 barehand-atomsplitting

* add ngRoute module to app.js

* load angular-route.js in index.html

* upgrade to angular 1.2.0-rc.3 ferocious-twitch

* fix(package.json): Fixed spelling and versions in package.json

* gitignore: Added node_modules to ignore

* feat(e2e): Used local karma to run e2e tests

* fix(unit): Changed unit test to use local karma

* fix(karma): Excluded minified files from unit test

* fix(package): Added repository to package.json

* fix(karma): Fixed inadvertently-removed asterisk match

* fix(e2e): Change app loading path in e2e test

* fix(karma): Removed loader file from unit config

* fix(scenario): Made path ci-friendly

* update(angular): bump angular to 1.2.0

* fix(karma): excluded angular-scenario

* update(angular): bump angular to 1.2.2

* update(angular): bump angular to 1.2.3

* bump angular to 1.2.4

* update(angular): bump angular to 1.2.5

* update(angular): bump to 1.2.6

* update(angular): bump to 1.2.7

* chore(build): update angular using a directory

* chore(build): refactor update angular and run tests

* update(angular): bump to 1.2.8

* update(angular): bump to 1.2.9

* update(angular): bump to 1.2.10

* update(angular): bump to 1.2.11

* chore(testing): update end to end tests to Protractor

* update(angular): bump to 1.2.12

* update(angular): bump to 1.2.13

* update(angular): bump to 1.2.14

* fix(readme): correct typo

* fix(readme): remove angular-scenario.js from readme

* update(angular): bump to 1.3.0-beta.1

* update(angular): bump to 1.3.0-build.51+sha.e888dde

* update(angular): bump to 1.3.0-beta.2+

* update(angular): bump to 1.3.0-beta.2

* update(angular): bump to 1.3.0-beta.3

* update(angular): bump to 1.2.15

* chore(dependencies): remove inline dependencies (use npm & bower instead)

It is inefficient to store the angular libraries inside this repository.
Moreover it is a pain to have to update them every time a new version of
Angular is released.

This commit changes the project to use bower to install the angular
dependencies.

In addition, simplify the structure of the project, all the support
scripts have either been replaced with well-defined npm modules (e.g
http-server) or have been moved to the package.json `script` property.

This means that we can now do all the management of the project with
three simple commands:

* `npm start` - start the development web server to host the application
* `npm test` - start the Karma test runner
* `npm run-script protractor` - start the Protractor end-to-end test runner

A nice feature of these scripts is that they run `npm install` first, thus
ensuring that the necessary npm dependencies are in place.  Also there is
a `postinstall` script which runs `bower install` to ensure the angular
library dependencies are in place and updates the index-async.html
with the `angular-loader.min.js` content via the following sed script:

```
sed '/@@NG_LOADER@@/{
  s/@@NG_LOADER@@//g
  r bower_components/angular-loader/angular-loader.min.js
}' app/index-async.html.template > app/index-async.html
```

* chore(npm-scripts): ensure they work on Windows

* chore(update-index-async): update async code in place

* chore(package.json): remove postupdate hook

We would want more control over when bower updates are run.

* docs(README.md): update instructions to match scripts

* chore(package.json): watch test files by default

* docs(README): npm test watches files for changes

* docs(LICENSE): update copyright year to 2014

Closes #155

* chore(travis): use more recent version of node

* style(controllers): consistent use of dots

The second controller led with a period while the first did not.
Moving the period in front of the first controller creates consistency
and more explicitly conveys the chaining behavior.

Closes #138

* chore(travis): run http-server in the background

* test(controllers): use $controller to get hold of a controller for testing

Closes #75

* chore(travis): install the webdriver for protractor

* style(filters): add missing semicolon

* chore(jshint): add jshint config file

* chore(package): add extra scripts to make life even smoother

* chore(lib): remove lib folder

It is not being used anymore - angular-mocks should be installed by bower.

Closes #181

* docs(README): add info about prerequisites

* fix(package.json): bind web server only to localhost

It's better to bind to localhost only during development, since it improves security.
It also avoids a pesky warning under Mac OS.

Closes #165

* feat(index): use html5-boilerplate HTML, modernizr and styles

Closes #1

* feat(myApp.controllers): add $scope param to clarify annotation

Closes #154

* chore(karma): add junit-reporter

We need to list karma-junit-reporter as a plugin and include it as a node module
dependency before we can use it to output junit format.

Closes #178

* chore(bower): fix angular-mocks dependency

* test(controllers): provide $scope when instantiating controllers

* chore(bower): move bower_components under the app folder

This will help web servers who are not happy to serve up files outside
the "root" folder of the application.

Closes #183
Closes #182

* fix(index): remove invalid path references

A few invalid paths which were referenced in index.html were removed.
These paths became invalid due to commit daf71f2
which moved where the bower_components directory is placed.

Closes #184

* fix(index-async): correct the path to bower_components

* docs(README): fix typos

Closes #190

* chore(travis): node js version should between quotes

node js version should between quotation marks based on
http://docs.travis-ci.com/user/languages/javascript-with-nodejs/

Closes #213

* refact(*): refactor app layout to conform to best practices

* refact(*): update overall application architecture to match best practices

* refact(*): further architectural improvements

* chore(package.json): update to protractor 1.1.1

* docs(README): fix link to Jasmine

Closes #209

* docs(README): fix grammar and ambiguous sentence

Closes #223

* docs(scenarios): fix link to protractor docs

Closes #206

* chore(package.json): remove local HTTP server's cache-control header

Disable the local HTTP server's cache-control header, to fix the problem
where the browser wouldn't reload templateUrl-based directive templates.

Fixes #193
Closes #194

* chore(package.json): fix path to angular-load.min.js.map in "update-index-async" command

This fixes the 404 not found when it tries to retrieve this map file and can't because
the path is wrong.

Note that you won't see that error if you have JavaScript source maps turned off.

Closes #197

* docs(README): fix typo

Closes #229

* refact(index.html): remove self closing slash for link tag.

You don't need it when doctype is HTML5 and also the others above already
don't have one.

Closes #232

* docs(README): add alternative git clone method

Closes #239

* chore(bower.son): update angular dep to 1.3.x, html5-boilerplate

* chore(package.json): update karma, add karma plugins dep

* chore(bower.json): Update angular dependency to ~1.4.0

* chore(protractor): update to use protractor v2.1.0

* chore(*): update dependencies and configuration files

Closes #341

* chore(*): serve from the `app/` directory

Closes #341

* chore(*): use `!` as hash-prefix

Closes #341

* fix(index-async): fix inlining of `angular-loader` into `index-async.html`

Previously, `angular-loader` was never inlined into `index-async.html`, because running `sed` with a
multiline RegExp fails to match anything, since `sed` matches per line. Using the `fs` module
directly, solves the issues.
(Now, we no longer depend on `shelljs`.)

Closes #309

* fix(index-async): properly inline text containing `$$`

When using `'...'.replace(regex, replacement)`, any instances of `$$` inside `replacement` will be
converted to `$` (see
[mdn](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace#Specifying_a_string_as_a_parameter).
Thus, for example `$$minErr` and `$$moduleName` are converted to `$minErr` and `$moduleName`.
This commit fixes it, by first using `'...'.split(regex).join(replacement)` instead.

Fixes #283
Closes #286

* docs(README): update for consistenty ("End to End" --> "end-to-end")

This test refers to general end-to-end tests.

Closes #235

* docs(LICENSE): update copyright year to 2016

Closes #269

* fix(index-async): correct html5-boilerplate paths

Paths to html5-boilerplate resource were configured incorrectly.
These paths are corrected.

Closes #356

* chore(travis): switch to Chrome, Node.js 4.5.x and Ubuntu "trusty"

Closes #360

* docs(README.md): mention JDK dependency for Protractor

Fixes #222
Closes #312

* docs(README.md): add links for Selenium and JDK

* refactor(app.css): simplify rules for styling menu item seperator

Closes #367

* docs(README.md): fix typo (Stadalone --> Standalone)

* chore(package): update to Protractor 4.x

This also fixes some issues on linux (e.g. angular/angular-phonecat#377).

Closes #378

* docs(README.md): remove outdated CloudBees integration

The CloudBees URL doesn't seem to work any more. And the
`CloudBees-community/angular-js-clickstart` (now moved to `CloudBees-attic`)
relies on the patched `michaelneale/angular-seed`, which hasn't been updated for
~2.5 years and is more than 40 commits behind `angular/angular-seed`.

* feat(*): add npm script for updating bower dependencies as well

Previously, is was suggested to run `bower update`, which would only work if `bower` was globally
installed. Since a global `bower` installation should not be a prerequisite for the seed project, it
is now possible to update bower dependencies via the new `update-deps` npm script.

Fixes #383

* docs(README.md): highlight the JDK dependency in the "Depedencies" section

* docs(README.md): minor typo/wording/style improvements

Closes #384

* rename foldar app to client

* add detials to wercker faile

* Fixed bower_components, added basic compilation flow to npm scripts

* Some new scripts to compile the app

* Updated wercker yml

* Updated bower steps in wercker yml

* Fixed indentation in wercker yaml

* Added wercker status to README
srinidhi-anand pushed a commit to srinidhi-anand/ApplicationForm that referenced this issue Feb 9, 2020
This also fixes some issues on linux (e.g. angular/angular-phonecat#377).

Closes #378
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants