Paketan
Pengembangan lokal
Salin halaman
Bangun aplikasi Anda di browser desktop dengan mockLia(), sebuah Lia palsu yang menjawab setiap panggilan dengan pemain uji. Ubah jawabannya, kirim peristiwa, dan debug setiap pesan.
Di luar aplikasi Lia itu'tidak ada jembatan frame, sehingga setiap panggilan gagal dengan not_in_lia. mockLia() menempatkan Lia palsu di tempatnya: itu menjawab setiap panggilan dengan cara yang sama seperti Lia, dengan pemain uji dalam mode uji, sehingga seluruh aplikasi Anda berjalan di browser desktop atau dalam pengujian.
#Nyalakan
Panggil sebelum panggilan SDK pertama Anda, dan hanya di luar Lia:
import { init, isLia, mockLia } from '@lia-labs/sdk';
if (!isLia()) mockLia();
const me = await init(); // { player: { name: 'tester' }, mode: 'test', ... }Dengan paket kerangka kerja itu'dari yang sama impor, dari paket tersebut. Keluarkan dari build produksi dengan bundler Anda'flag pengembang jika Anda suka (if (import.meta.env.DEV && !isLia())).
#Apa yang dijawab
| Panggil | Jawaban pengujian |
|---|---|
init | Seorang pemain uji (tester) mode uji coba, bahasa Inggris, cahaya, sebuah lembar, notifikasi tersedia |
pay | Sebuah pembayaran yang telah selesai, ch_mock0001 dan ke atas |
showAd dan pintasannya | Sebuah video yang ditonton (ad_mock), atau iklan interstisial yang ditampilkan |
confirm, showPopup | Ya, dan tombol pertama |
requestNotifications, inviteFriend | Diperbolehkan, diundang |
submitScore, leaderboard | Mempertahankan skor terbaik Anda dan menjadikan Anda nomor satu. |
| Penyimpanan | Ditahan di memori untuk halaman tersebut'kehidupan |
biometric | Face ID yang tersedia, terotentikasi |
| Semua yang lain | Apa yang Lia jawab ketika berjalan |
#Ubah jawabannya
Lewati init untuk mengubah siapa dan bagaimana, dan onMethod untuk memutuskan jawaban apa pun sendiri. Kembalikan nilai untuk menjawab, lemparkan { code } untuk gagal, atau panggil next() untuk mock'jawaban miliknya:
mockLia({
init: { language: 'ar', rtl: true, theme: 'dark', startParam: 'room-k3x9' },
latency: 300, // ms before each answer, to see your loading states
onMethod: (call, next) => {
if (call.method === 'pay' && call.params.productId === 'gold-pack') throw { code: 'cancelled' };
if (call.method === 'showAd') return { watched: false, shown: false, reason: 'no_ad' };
return next();
},
});#Kirim peristiwa
Pengujian dapat mengirim salah satu dari Lia'acara, untuk mencoba bagaimana aplikasi Anda bereaksi:
const mock = mockLia();
mock.event('theme', { colorScheme: 'dark', theme: { bg_color: '#09090B', text_color: '#F5F5F7' } });
mock.event('soundChanged', { on: false });
mock.event('startParam', { startParam: 'room-a81c' });
mock.event('mainButtonClicked');
mock.event('pause');mock.calls mencantumkan setiap panggilan yang dilakukan halaman Anda, dan mock.restore() menghapus mock.
#Dalam uji
Kunci yang sama membuat pengujian sederhana (di sini dengan Vitest dan jsdom):
import { afterEach, expect, it } from 'vitest';
import { init, mainButton, mockLia, resetForTests, resetStateForTests } from '@lia-labs/sdk';
afterEach(() => {
resetForTests();
resetStateForTests();
});
it('shows Buy once the player is in', async () => {
const mock = mockLia();
await init();
mainButton.setParams({ text: 'Buy', isVisible: true });
await Promise.resolve();
expect(mock.calls.at(-1)).toMatchObject({ method: 'bottomButton', params: { text: 'Buy', visible: true } });
mock.restore();
});#Lihat setiap pesan
setDebug(true) mencatat setiap panggilan, jawaban, dan peristiwa ke konsol, termasuk di dalam Lia juga:
import { setDebug } from '@lia-labs/sdk';
setDebug(true);
// [lia] call pay { productId: 'extra-lives' }
// [lia] event pause undefined
// [lia] answer pay { id: 7, ok: true, result: { chargeId: 'ch_…', productId: 'extra-lives' } }Lewati argumen kedua untuk mengirimkannya ke logger Anda sendiri, yang membantu di dalam Lia di mana ada'tidak ada inspector web: setDebug(true, { log: send, warn: send, error: send }).
#Server Anda
Pengujian'sesi (lias_mock) tidak'tidak satu Lia yang ditandatangani, jadi /session/verify katakan itu tidak'sah. Beri jalur pengembangan ke server Anda, atau coba alur server di dalam Lia sebagai penguji. Lihat Menguji aplikasi Anda.
Diterjemahkan otomatis. Bahasa Inggris adalah sumber kebenaran. Baca dalam Bahasa Inggris