From 8ed4d645967c5abf60e114be4956b211e107131c Mon Sep 17 00:00:00 2001 From: marcin2121 <13873718+marcin2121@users.noreply.github.com> Date: Tue, 31 Mar 2026 19:31:48 +0000 Subject: [PATCH] test: Add test for askCrystalBall response generation Added a test file `__tests__/lib/magic.test.ts` to verify that the `askCrystalBall` function returns a response from its predefined array of jokes. The test leverages the built-in Node.js `node:test` framework and `node:assert`, consistent with the project's setup. Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> --- __tests__/lib/magic.test.ts | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 __tests__/lib/magic.test.ts diff --git a/__tests__/lib/magic.test.ts b/__tests__/lib/magic.test.ts new file mode 100644 index 0000000..c575975 --- /dev/null +++ b/__tests__/lib/magic.test.ts @@ -0,0 +1,22 @@ +import { describe, it } from 'node:test'; +import assert from 'node:assert'; +import { askCrystalBall } from '../../lib/magic.ts'; + +describe('askCrystalBall', () => { + it('should return one of the predefined jokes', async () => { + const response = await askCrystalBall('Test Product'); + const jokes = [ + `Wróżki z działu kreatywnego mówią zdecydowane "MOŻE". Najlepiej wpadnij do nas na Reymonta 38A, to potraktujemy to jako misję poszukiwawczą!`, + `Kryształowa kula pokazuje, że szef rano używał tego jako podstawki pod kawę... Ale czy to było to, czy tylko coś podobnego? Musisz zadzwonić i zapytać!`, + `Krasnoludki magazynowe podobno widziały to gdzieś za szafą, ale szansa na znalezienie wynosi równe 50/50. Bez telefonu do szefa się nie dowiesz.`, + `Moja wizja ulatuje... Ktoś chyba przywiązał tę informację do balonów z helem i poleciała pod sufit! Najlepiej wpaść i sprawdzić na własne oczy.`, + `Układ gwiazd wskazuje, że wyprzedało się to w 1998 roku, ale szef twierdzi inaczej. Ja tam mu nie ufam, lepiej samemu sprawdzić na półkach.`, + `Próbowałem to dojrzeć w kuli, ale drogę zablokowała mi ogromna wieża z LEGO. Szef jest jedynym, który zna bezpieczne przejście przez magazyn, żeby to sprawdzić!`, + `Duchy sklepu nałożyły na mnie zaklęcie "Brak Danych". Widzę tylko mgłę i uśmiechnięte pluszaki. Musisz dopytać obsługę z krwi i kości!`, + `Magik, który tu wczoraj był, sprawił, że cała moja wiedza o tym produkcie zniknęła. Szef wciąż szuka go po Białobrzegach, żeby odczarował system!`, + `Wygląda na to, że zabawki zorganizowały strajk i schowały informacje o stanach magazynowych. Przyjdź do sklepu i pomóż nam negocjować!`, + `Kula zrobiła się mętna... Jeśli to w ogóle u nas jest, to pewnie służy teraz jako podpórka do kiwającego się stołu na zapleczu. Kto wie? Tylko szef wie!` + ]; + assert.ok(jokes.includes(response), `Response should be one of the predefined jokes, got: ${response}`); + }); +});