Commit Graph

49 Commits

Author SHA1 Message Date
Roman Roelofsen 6b448b0b06 - TypeScript 2.0
- Use awesome-typescript-loader in WebPack
- Correctly name open-project.typings.d.ts (instead of wronglopen-project.typings.ts)
- Insert typings.d.ts to reference typings-folder outside of app folder
2016-10-10 15:21:46 +02:00
Oliver Günther e49c163d00 Remove gulp with simpler npm tasks
This removes `gulp` and provides a simpler `karma` and `webpack`,
`webpack-watch` npm scripts.

For actual development, users will need the Rails stack anyway, so it
won't make sense to keep a separate set of dependencies up to date.

* Instead of `gulp webpack`, use `npm run webpack`.
* Instead of `gulp watch`, use `npm run webpack-watch`, which is *drastically* faster than gulp watch-polling.
* Instead of `gulp tests:karma` use `npm run karma`, or just `npm test`.

This also removes all traces of express and restores the Rails
styleguide. It is not whitelisted for precompilation and is only
available in the context of the development mode.

To access the styleguide, use `/assets/styleguide.html`.
2016-04-26 07:56:31 +02:00
Oliver Günther d9be51c30f Remove protractor E2E tests (#4346)
In agreement with @furinvader, we have decided to remove protractor
testing from OpenProject.

Frontend tests are implemented in karma and test single units of work as
before.
Since the freshness of APIv3 JSON mocks are getting ouf hand and we have
covered almost all E2E protractor tests with Rails, we're going to
resort to Rails to write concise *actual* integration test with correct data.
2016-04-22 08:23:00 +02:00
Alex Coles 8c26649040 Create root package.json aliasing scripts
This should ensure CI and pkgr.io continue working as expected.

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-12-01 09:13:55 +01:00
Alex Coles 25a6b61f2d Move remainder of Angular app under frontend
Templates, project infrastructure, configuration.

See 6ec5ca58.

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-11-26 13:28:59 +01:00
Alex Coles 35f2c7a978 Add lodash (as npm dependency)
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-11-20 16:39:53 +01:00
Alex Coles dbc840e121 Add shelljs for synchronous command exec
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-11-20 15:39:42 +01:00
Alex Coles 548a88bb92 Expose I18n as global with Webpack expose-loader
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-11-20 15:39:42 +01:00
Alex Coles ef365c4e70 Bump Protractor to 1.4.0
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-11-17 13:07:41 +01:00
Alex Coles 2af78db7d9 Add jshint-stylish, configure as JSHint reporter
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-11-11 14:28:46 +01:00
Mihail Maxacov 7956daf423 add gulp watch support 2014-11-10 13:31:35 +02:00
Philipp Tessenow e1a2704026 Merge pull request #2110 from opf/fix/packager-fix-webpack-build
Make Webpack and its loaders non-dev dependencies
2014-10-30 17:13:35 +01:00
Alex Coles 4effa90565 Add mocha-jenkins-reporter, config. for Protractor
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-10-30 16:25:34 +01:00
Alex Coles 4a3af649a8 Make Webpack and its loaders non-dev dependencies
Build-packs used by Packager.io run `npm install` with the
`--production` flag.

These are the minimum dependencies necessary for Webpack to build its
bundle prior to Sprockets assets precompilation.

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-10-30 15:40:05 +01:00
Alex Coles a10914875b Merge branch 'dev' into feature/16494-protractor-tests
Signed-off-by: Alex Coles <alex@alexbcoles.com>

Conflicts:
	package.json
2014-10-28 18:55:52 +01:00
Alex Coles 2eebcf730e Add npm scripts entry for Protractor
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-10-27 16:20:47 +01:00
Alex Coles 6dae63f044 Add gulp-protractor, gulp tasks for Protractor
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-10-27 16:03:01 +01:00
Alex Coles 495e858b0d Bundle I18n translations with Webpack
Vendor i18n.js script provided by fnando/i18n-js.

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-10-27 11:01:07 +01:00
Alex Coles f597aab92c First steps to bootstrap Angular app without Rails
Create basic express app that serves a static HTML page for
bootstrapping the Angular app and a minimal subset of API endpoints.

* Create Gulp tasks for starting express server, compiling Sass.

User Story # 16494

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-10-24 22:45:33 +02:00
Alex Coles 66f796c007 Bundle CommonJS modules with Webpack
Minimal work necessary to make Sprockets and existing Karma tests work
with Webpack.

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-10-22 19:19:26 +02:00
Martin Linkhorst 2617da288c what now, travis? 2014-10-17 22:58:51 +02:00
Alex Coles 0aa5d52477 Move from grunt to gulp build system
Initially port only JSHint tasks.

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-10-17 10:45:28 +02:00
Martin Linkhorst 26796a199c shut up, bothering bower! 2014-10-07 09:52:15 +02:00
Alex Coles ccda4ede05 Add protractor, chai-as-promised dependencies
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-10-06 19:18:02 +02:00
Martin Linkhorst a63cf46176 do not hardcode node’s local bin path 2014-10-01 13:24:29 +02:00
kgalli e49e25ceca Update bower dependency to ~1.3.8 2014-09-03 17:56:22 +02:00
Cyril Rohr f7b70546de Add bower as proper dependency 2014-09-03 13:52:39 +02:00
Cyril Rohr 631147afa9 Launch bower install after npm install 2014-09-03 13:52:28 +02:00
Alex Coles 30ff078525 Bump Bower to latest (1.3.8)
See https://twitter.com/bower/status/487704111832252417

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-07-12 12:23:10 +02:00
Alex Coles ce5ea98b46 Specify latest karma-coverage in package.json
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-05-25 11:24:02 +02:00
Alex Coles 70a43f4af6 Reformat npm dependencies in alphabetical order
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-05-25 11:22:22 +02:00
Alex Coles 58efd620a6 Bump Bower to latest (1.3.3)
This should address an issue affecting CI: bower/bower#1221
(see https://github.com/bower/bower/blob/master/CHANGELOG.md#133---2014-04-24)

https://www.openproject.org/work_packages/7196

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-04-28 13:35:42 +02:00
Alex Coles 16cfc9ddde Merge branch 'dev-angular' into fixes/ng-filter-sorting
Signed-off-by: Alex Coles <alex@alexbcoles.com>

Conflicts:
	package.json
2014-04-14 16:05:26 +02:00
Alex Coles 3c55702234 Remove mocha-phantomjs package
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-04-14 15:42:04 +02:00
Alex Coles c875804c9c Revert npm version specifiers to ~ in package.json
See 9935dd72.

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-04-11 19:35:03 +02:00
Till Breuer 83f723ef20 Install karma-chain-sinon and fix karma conf
by myabc
2014-04-11 18:33:58 +02:00
Alex Coles eb69e4f9a7 Add Sinon-Chai, Sinon.JS for mocking
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-04-11 11:18:18 +02:00
Alex Coles 73ff6ad52b Add and configure karma-ng-html2js-preprocessor
This enables Karma to preprocess and pre-cache HTML templates (in
$templateCache), making them available to directive tests without
the need for an HTTP request (ngMock's $httpBackend does not less us
make Ajax requests easily, even if this were desirable).

See: http://daginge.com/technology/2013/12/14/testing-angular-templates-with-jasmine-and-karma/

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-04-11 10:38:28 +02:00
Alex Coles 9935dd7257 Revert npm version specifiers to ~ in package.json
Our Jenkins CI instances don't yet have the latest node and npm
available.

See: http://fredkschott.com/post/2014/02/npm-no-longer-defaults-to-tildes/

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-04-09 19:00:46 +02:00
Alex Coles de1bf01b08 Add, configure karma-junit-reporter (for Jenkins)
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-04-09 18:11:54 +02:00
Alex Coles 166925476d Configure 'npm test' to run Mocha tests with Karma
Run tests Karma with both Firefox and PhantomJS.

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-04-08 19:00:06 +02:00
Alex Coles d993cbf870 Add Karma test runner with basic configuration
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-04-08 18:27:36 +02:00
Alex Coles 36d2e9079b Make Bower ~1.3.2 a min requirement (npm + Travis)
We need at least version 1.3.2 to avoid a race condition:
https://github.com/bower/bower/issues/1211

https://github.com/bower/bower/issues/933
https://www.openproject.org/work_packages/5645

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-04-07 13:28:58 +02:00
Alex Coles 8dfb55e89c Revert "Configure Travis to use @knalli's Bower fork"
A fixed release of Bower is now available via npm.

This reverts commit 67f5564e04.
2014-04-07 13:23:50 +02:00
Alex Coles 67f5564e04 Configure Travis to use @knalli's Bower fork
Fork includes a fix for possible race condition when installing/
resolving dependencies.

https://github.com/bower/bower/issues/933
https://www.openproject.org/work_packages/5645

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-04-03 16:49:42 +02:00
Alex Coles dcb3b2200b Peg readable-stream to 1.1.11 in package.json
(a bower > decompress-zip dependency)

1.1.12 is failing on CI.
See:https://github.com/isaacs/readable-stream/issues/89

Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-04-01 14:08:13 +02:00
Alex Coles 911608fde2 Add Bower as a devDependency to package.json
Signed-off-by: Alex Coles <alex@alexbcoles.com>
2014-04-01 14:05:35 +02:00
Nils Kenneweg 72be0d3347 more advanced gruntfile. 2014-02-03 16:48:41 +01:00
Nils Kenneweg 0cb27b9090 add package.json gruntfile and jshintignore. 2014-02-03 16:48:41 +01:00