Page MenuHomeSealhub

Jak ustawić linting i unit testy zintegrowane z Sealhubem
Updated 1,196 Days AgoPublic

Version 20 of 36: You are viewing an older version of this document, as it appeared on Jan 24 2021, 03:11.

Ten artykuł zawiera instrukcje stawiania lintowania za pomocą ESLinta, testów funkcjonalnych i integracji obydwu tych procesów z arcanistem i phabricatorem.

Zakładamy, że repozytorium, w którym wdrażane jest lintowanie, korzysta z Typescripta.

1. Instalacja arcanista

Jeśli masz Arch Linuxa możesz spróbować pobrać pluginy z AUR i przejść do kroku #3

yay -S arcanist arcanist-linters-git arc-unit-mocha-sealcode-git

Jeżeli masz zainstalowanego arcanista za pomocą Twojego managera paczek, to odinstaluj go i zainstaluj ponownie wg kroków poniżej. Jest to niestety konieczne z uwagi na ten dziwny problem.

Jeżeli instalowałeś arcanista po prostu klonując jego repo, przejdź do kroku #2

cd ~
mkdir bin
cd bin
git clone 'https://github.com/phacility/arcanist.git'
git clone 'https://github.com/phacility/libphutil.git'

Następnie dodaj ścieżkę ~/bin do zmiennej PATH:

echo 'export PATH=~/bin/arcanist/bin:$PATH' >> ~/.profile

Wyloguj się z systemu i zaloguj ponownie.

2. Instalacja pluginów do arcanista

Odnajdź katalog, do którego sklonowane są arcanist i libphutil. Na potrzeby tego tutoriala założymy, że jest to ~/bin.

Następnie wewnątrz tego katalogu sklonuj następujące repozytoria:

cd ~/bin
git clone 'https://github.com/pinterest/arcanist-linters.git'
git clone 'https://github.com/sealcode/arc-unit-mocha.git'

Te repozytoria muszą pozostać na Twoim dysku, aby działały. W celu ich aktualizacji wystarczy zrobić git pull w każdym z nich

3. Lintowanie za pomocą ESLint

Zainstaluj yeoman, jeżeli jeszcze go nie masz:

npm install -global yo generator-sealcode

Następnie w katalogu z Twoim repo odpal:
(Jeżeli sklonowałeś repo w którym już trwa development najprawdopodobniej możesz pominąć ten krok)

yo sealcode:lint

Od teraz możesz sprawdzić wynik lintowania za pomocą:

arc lint

Dodatkowo, wyniki lintowania będą się wyświetlały w diffie, ułatwiając zadnaie recenzentom i autorom diffów

Last Author
fraunos
Last Edited
Jan 24 2021, 03:11

Event Timeline

kuba-orlik created this object.
kuba-orlik edited the content of this document. (Show Details)
piotr-ptaszynski edited the content of this document. (Show Details)
piotr-ptaszynski edited the content of this document. (Show Details)
kuba-orlik edited the content of this document. (Show Details)
kuba-orlik edited the content of this document. (Show Details)

Dodałem te pluginy do AUR, więc jak ktoś korzysta z Archa to może sobie je pobrać.

Więc w moim przypadku instrukcja wygląda następująco

yay -S arcanist arcanist-linters-git arc-unit-mocha-git

a aktualizacja jest normalnie przez

yay

@kuba-orlik

@fraunos najs! 💪 Dodasz to do treści powyższego artykułu, aby nie umknęło?

kuba-orlik edited the content of this document. (Show Details)
kuba-orlik edited the content of this document. (Show Details)
kuba-orlik edited the content of this document. (Show Details)
kuba-orlik edited the content of this document. (Show Details)
kuba-orlik edited the content of this document. (Show Details)
kuba-orlik edited the content of this document. (Show Details)
kuba-orlik edited the content of this document. (Show Details)