Feladat letöltése

Az Exercism CLI segítségével töltsd le azt a feladatot, amelyen dolgozni szeretnél.

exercism download --track=rescript --exercise=hello-world

Ezután lépj be a feladat könyvtárába.

cd /path/to/exercism/rescript/hello-world

Függőségek telepítése

Mielőtt futtatnád a teszteket, telepítsd a feladat függőségeit.

npm install

A tesztek futtatása

Fordítsd le és futtasd a mellékelt tesztcsomagot az exercism test vagy az npm run test paranccsal.

A teszteredmények megértése

A tesztfuttató minden tesztet sikeres vagy sikertelen állapottal jelenít meg.

1/3: no name given
  PASS - no name given
2/3: a name given
  FAIL - a name given
    ---
    operator: equal
    left:  One for you, one for me.
    right: One for Alice, one for me.
    ...
3/3: another name given
  FAIL - another name given
    ---
    operator: equal
    left:  One for you, one for me.
    right: One for Bob, one for me.
    ...

# Ran 3 tests (3 assertions)
# 1 passed
# 2 failed

A left az, amit a kódod visszaadott. A right az, amit a teszt elvárt.

A feladat felépítésének megértése

two-fer/
├── src/
│   ├── TwoFer.res   // your solution goes here
│   └── TwoFer.resi  // the optional interface file containing signatures
├── tests/
│   └── TwoFer_test.res // your test suite
├── package.json // used to install project dependencies
└── ...

A TwoFer.resi itt egy opcionális interfészfájl. Ha jelen van, meghatározza azokat a függvényszignatúrákat, amelyeknek a megoldásodnak meg kell felelnie, és támpontot adhat ahhoz, mit érdemes megvalósítanod.

Például ha az interfész ezt deklarálja:

let hello: unit => string

A megvalósításodnak ezt kell definiálnia:

let hello = () => "Hello, World!"

Fordítóhibák

Ha a kódod nem fordul le, a ReScript fordítója részletes hibaüzeneteket ad a pontos hellyel és a várt típusokkal.

  We've found a bug for you!

  1 │ let x: string = 42

  This has type: int
  But it's expected to have type: string

  You can convert int to string with Int.toString.

Olvasd el figyelmesen a hibaüzenetet, mert általában egyenesen a problémára mutat.