Gói
Phát triển cục bộ
Sao chép trang
Xây dựng ứng dụng của bạn trong trình duyệt máy tính để bàn với mockLia(), một Lia giả tạo trả lời mọi cuộc gọi bằng một người chơi kiểm thử. Thay đổi câu trả lời của nó, gửi sự kiện và gỡ lỗi mọi thông điệp.
Ngoài ứng dụng Lia có'không có cầu nối khung, vì vậy mọi cuộc gọi đều thất bại với not_in_lia. mockLia() đặt một Lia giả mạo vào vị trí của nó: nó trả lời mọi cuộc gọi theo cách mà Lia sẽ làm, với một người chơi thử nghiệm ở chế độ thử nghiệm, vì vậy toàn bộ ứng dụng của bạn chạy trong trình duyệt máy tính để bàn hoặc trong các bài kiểm tra.
#Bật nó lên
Gọi nó trước cuộc gọi SDK đầu tiên của bạn, và chỉ bên ngoài Lia:
import { init, isLia, mockLia } from '@lia-labs/sdk';
if (!isLia()) mockLia();
const me = await init(); // { player: { name: 'tester' }, mode: 'test', ... }Với một gói khung nó'mà cùng một import, từ gói đó. Giữ nó ngoài các bản dựng sản xuất với trình đóng gói của bạn'cờ dev của bạn nếu bạn muốn (if (import.meta.env.DEV && !isLia())).
#Cái gì nó trả lời
| Gọi | Các câu trả lời mô phỏng |
|---|---|
init | Một người chơi thử nghiệm (tester), chế độ thử nghiệm, tiếng Anh, chế độ ánh sáng, một bảng điều khiển, thông báo có sẵn |
pay | Một giao dịch thanh toán, ch_mock0001 và lên |
showAd và các tiện ích nhanh | Một video đã xem (ad_mock), hoặc một quảng cáo trung gian |
confirm, showPopup | Vâng, nút đầu tiên |
requestNotifications, inviteFriend | Được phép, được mời |
submitScore, leaderboard | Giữ điểm số tốt nhất của bạn và xếp bạn đầu tiên |
| Lưu trữ | Được giữ trong bộ nhớ cho trang'cuộc sống |
biometric | Face ID có sẵn, đã xác thực |
| Tất cả những điều còn lại | Cái gì Lia trả lời khi hoạt động |
#Thay đổi câu trả lời của nó
Đi qua init để thay đổi ai và cách nào, và onMethod để tự quyết định câu trả lời. Trả về một giá trị để trả lời, ném { code } để thất bại, hoặc gọi next() cho bản mô phỏng'trả lời riêng của họ:
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();
},
});#Gửi sự kiện
Mô phỏng có thể gửi bất kỳ cái nào trong Lia'sự kiện, để thử xem ứng dụng của bạn phản ứng thế nào:
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 liệt kê mọi cuộc gọi mà trang của bạn đã thực hiện, và mock.restore() xóa mô phỏng.
#Trong các thử nghiệm
Cùng một mô phỏng làm cho các bài kiểm tra đơn giản (ở đây với Vitest và 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();
});#Xem mọi thông báo
setDebug(true) ghi lại mọi cuộc gọi, câu trả lời và sự kiện vào bảng điều khiển, ngay cả trong Lia nữa:
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' } }Truyền một đối số thứ hai để gửi họ đến bộ ghi của bạn, giúp bên trong Lia nơi có'không có trình kiểm tra web: setDebug(true, { log: send, warn: send, error: send }).
#Máy chủ của bạn
Mô phỏng'phiên làm việc (lias_mock) không'một Lia đã ký, vì vậy /session/verify nói rằng nó không'không hợp lệ. Hãy đưa máy chủ của bạn một con đường phát triển, hoặc thử các luồng máy chủ bên trong Lia như một người kiểm thử. Xem Kiểm tra ứng dụng của bạn.
Được dịch tự động. Tiếng Anh là nguồn tin cậy. Đọc bằng tiếng Anh