@universis/common v15.5.0
@universis/common
Universis is a coordinated effort by Greek academic institutions to build a Student Information System as an open source platform. The target is to serve our common needs to support academic and administrative processes.
@universis/common package contains common components and services for building client applications for Universis project.
Usage
npm i @universis/commonDevelopment
Import @universis/common as submodule in any angular cli project by replacing newProjectRoot as already configured in your angular.json
git submodule add https://gitlab.com/universis/common.git <newProjectRoot>/commone.g.
git submodule add https://gitlab.com/universis/common.git projects/commonAdd the following entries to tsconfig.app.json#compilerOptions.paths:
{
"compilerOptions": {
"paths": {
"@universis/common/routing": [
"<newProjectRoot>/common/routing/src/public_api"
],
"@universis/common/testing": [
"<newProjectRoot>/common/testing/src/public_api"
],
"@universis/common": [
"<newProjectRoot>/common/src/public_api"
]
...
}
}
} If you want to include @universis/common as an angular cli project, include the following section in angular.json under projects:
"projects": {
"common": {
"root": "<newProjectRoot>/common",
"sourceRoot": "<newProjectRoot>/common/src",
"projectType": "library",
"prefix": "lib",
"architect": {
"build": {
"builder": "@angular-devkit/build-ng-packagr:build",
"options": {
"tsConfig": "<newProjectRoot>/common/tsconfig.lib.json",
"project": "<newProjectRoot>/common/ng-package.json"
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "<newProjectRoot>/common/src/test.ts",
"polyfills": "<newProjectRoot>/common/src/polyfills.ts",
"tsConfig": "<newProjectRoot>/common/tsconfig.spec.json",
"karmaConfig": "<newProjectRoot>/common/karma.conf.js",
"watch": false,
"codeCoverage": true,
"scripts": []
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"<newProjectRoot>/common/tsconfig.lib.json",
"<newProjectRoot>/common/tsconfig.spec.json"
],
"exclude": [
"**/node_modules/**"
]
}
}
}
},
...
}Testing
Intro
In order to test @universis/common package, we use Karma as our test-runner and Jasmine as our
testing framework. We also use Puppeteer, a high-level API to manipulate the dev-tools of any
chromium based browser. You should keep in mind that puppeteer is a peer dependency of the whole project
and should be placed in the parent directory of the repository universis.
Example
To run all of our tests simply run
ng test commonThis will compile the common package and run our test suite in a ChromeHeadless browser with no sandbox.
Extra
You can also have a visual representation of the tests running by adding
ChromeNoSandbox: {
base: 'Chrome',
flags: [
'--no-sandbox',
'--enable-logging=stderr',
'--disable-web-security',
'--disable-gpu',
'--no-proxy-server'
]
},under the customLaunchers in packages/common/karma.conf.js
12 months ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago