Liaविकासकर्ता

पैकेज

अपने एप्लिकेशन को डेस्कटॉप ब्राउज़र में mockLia() के साथ बनाएं, एक झूठा Lia जो हर कॉल का उत्तर एक परीक्षण खिलाड़ी के साथ देता है। इसके उत्तरों को बदलें, घटनाएं भेजें, और हर संदेश का डीबग करें।

एप्स के बाहर Lia एप्स में'कोई फ्रेम ब्रिज नहीं, इसलिए प्रत्येक कॉल विफल हो जाता है not_in_lia. mockLia() इसके स्थान पर एक झूठा Lia रखता है: यह Lia के तरह ही हर कॉल का जवाब देता है, एक परीक्षण खिलाड़ी के साथ परीक्षण मोड में, ताकि आपका पूरा एप डेस्कटॉप ब्राउज़र में या परीक्षण में चले।

#इसे चालू करें

अपने पहले SDK कॉल से पहले इसे कॉल करें, और केवल Lia के बाहर:

import { init, isLia, mockLia } from '@lia-labs/sdk';

if (!isLia()) mockLia();

const me = await init(); // { player: { name: 'tester' }, mode: 'test', ... }

एक फ्रेमवर्क पैकेज के साथ यह'राज्य, उस पैकेज से एक ही आयात। अपने बंडलर के साथ उत्पादन बिल्ड्स से बचें'के डेव फ्लैग अगर आपको पसंद है (if (import.meta.env.DEV && !isLia())).

#क्या यह उत्तर देता है

कॉलमॉक उत्तर
initएक परीक्षण खिलाड़ी (testerया टेस्ट मोड, अंग्रेजी, हल्का, एक शीट, सूचनाएं उपलब्ध
payएक भुगतान किया गया शुल्क, ch_mock0001 और ऊपर
showAd और इसके शॉर्टकटएक देखा गया वीडियो (ad_mockया एक दिखाई देने वाला अंतर्गत
confirm, showPopupहां, और पहला बटन
requestNotifications, inviteFriendअनुमति, आमंत्रित
submitScore, leaderboardआपके सबसे अच्छे स्कोर को बरकरार रखता है और आपको पहला रैंक देता है
भंडारणपृष्ठ के लिए मेमोरी में रखा गया है'जीवन
biometricउपलब्ध फेस ID, प्रमाणित
अन्य सभीक्या Lia काम करता है जब यह काम करता है

#इसके उत्तर बदलें

पास init किसके बारे में बदलें और कैसे, और onMethod के लिए कोई भी उत्तर खुद निर्णय लें। उत्तर के लिए कोई मान वापस करें, फेल करें { code } के लिए विफल हो जाए, या कॉल करें next() मॉक के लिए'अपना उत्तर:

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();
  },
});

#घटनाएं भेजें

मॉक किसी भी Lia भेज सकता है'के घटनाएं, अपने एप्स के प्रतिक्रिया के बारे में देखने के लिए:

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 आपके पेज द्वारा की गई सभी कॉल की सूची, और mock.restore() मॉक को हटा देता है।

#परीक्षण में

एक ही मॉक टेस्ट सरल बनाता है (यहां Vitest और 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();
});

#सभी संदेश देखें

setDebug(true) सभी कॉल, उत्तर और घटना को कंसोल में लॉग करता है, Lia में भी:

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' } }

उन्हें अपने स्वयं के लॉगर में भेजने के लिए दूसरा आर्गुमेंट पास करें, जो Lia में मदद करता है जहां वे हैं'कोई वेब इंस्पेक्टर: setDebug(true, { log: send, warn: send, error: send }).

#आपका सर्वर

मॉक'के सत्र (lias_mockया नहीं है'एक Lia हस्ताक्षरित नहीं है, इसलिए /session/verify कहता है कि यह नहीं है'तेज वैध। अपने सर्वर के लिए एक विकास मार्ग प्रदान करें, या Lia में सर्वर फ्लो के साथ परीक्षक के रूप में देखें। देखें आपके एप्प का परीक्षण.

स्वचालित अनुवाद। अंग्रेजी सत्य का स्रोत है। अंग्रेजी में पढ़ें

किसी भी पृष्ठ, विधि और एंडपॉइंट के लिए खोजने के लिए प्रकार।