Projekt został wygenerowany przy użyciu Angular CLI.
- Zainstaluj NodeJS
- Zainstaluj Angualar CLI
npm install -g @angular/cli
Wykonaj npm install
aby zainstalować potrzebne biblioteki
Wykonaj ng serve
aby uruchomić aplikację lokalną.
Otwórz http://localhost:4200/
. Aplikacja automatycznie się odświeży po zmianie plików.
Możesz też wykonać komendę ng serve --open
aby aplikacja otworzyła się automatycznie w oknie przeglądarki
Komenda ng build
buduje projekt. Artefakty build'u przechowywane są w dist/
. Flaga --prod
powinna być wykorzystana aby wykonać build produkcyjny.
Uruchom ng lint
aby uruchomić linter TypeScriptu TSLint
Uruchom ng test
aby wykonać testy jednostkowe z wykorzystaniem Karma.
Kod testów jednostkowych znajduje się w /src/app/app.component.spec.ts
.
Uruchom ng e2e
aby wykonać testy end to end z wykorzystaniem Protractor.
Kod testów e2e znajduje się w /e2e/src/app.e2e-spec.ts
- Stwórz forka repozytorium
- Sklonuj sforkowane repozytorium (pracujemy na swoich repozytoriach)
- Uruchom aplikację lokalnie
- Uruchom linter
- Napraw wszystkie błędy lintera (plik
/src/app/app.component.ts
) - Uruchom testy jednostkowe
- Napraw testy jednostkowe
- Uruchom testy End-to-End
- Napraw test End-to-End
- Uruchom testy jednostkowe z flagą --code-coverage
- Zweryfikuj raport html pokrycia kodu w pliku .coverage\pesel\index.html dopisz przypadki testowe, które zwiększa pokrycie - zignoruj przypadki dla funkcji onSubmit()
- Zaloguj się w TravisCI z wykorzystaniem swojego GithubID
- Jeśli już masz konto, zastosuj "sync account"
- Uruchom CI dla repozytorium PESEL
- Utwórz nowy plik .travis.yml
- W pliku dodaj wstępną konfigurację CI
language: node_js
node_js:
- "10"
dist: trusty
sudo: required
addons:
chrome: stable
branches:
only:
- master
before_script:
- npm install -g @angular/cli
script:
- ng build --prod --base-href https://bamanczak.github.io/pesel/
-
git commit
orazgit push
- sprawdź czy Travis uruchomił Build - rozszerz konfigurację CI o linter oraz testy jednostkowe (Uwaga: nie dodawaj na razie testów E2E, tymi zajmiemy się na następnych zajęciach), sprawdź czy wszystko działa na serwerze CI
- w pliku z konfiguracją travisa dodaj
deploy:
provider: pages
skip_cleanup: true
github_token: $GITHUB_TOKEN
local_dir: dist/pesel
on:
branch: master
- Wygeneruj Token dla Githuba
- Dodaj token jako zmienną środowiskową w konfiguracji Builda w travisie: otwórz projekt w Travisie, kliknij prawym przyciskiem na "More options: Settings". Znajdź sekcję "Environment Variables", dodaj tam wygenerowany przed chwilą token z nazwą GITHUB_TOKEN (lub inną, zmień wtedy konfigurację .travis.yml)
-
git commit
orazgit push
- sprawdź czy Travis uruchomił Build - Wejdź w ustawienia swojego repozytorium, włącz GitHub Pages (wybierz branch gh-pages)
- W swoim repozytorium stwórz dodatkowy branch
valid
- Wprowadź nieistotną zmianę na branchu
valid
-
git commit
orazgit push
- stwórz Pull Request z
valid
domaster
- W swoim repozytorium stwórz dodatkowy branch
invalid
- Wprowadź na branchu
invalid
zmianę, która spowoduje, że któryś z testów nie przejdzie u -
git commit
orazgit push
- stwórz Pull Request z
invalid
domaster
- Co najmniej 1 rodzaj nieprawidłowego numeru PESEL jest oznaczany przez walidator jako prawidłowy. Jesteś w stanie go znaleźć?
- Jesteś w stanie go naprawić?