{
    "app": {
        "name": "testing",
        "description": "Use when writing tests, debugging test failures, running the test suite, or setting up test infrastructure. Covers self-test, package tests, and modern E2E tests.",
        "mode": "advanced-chat",
        "model_config": {
            "provider": "deepseek",
            "model": "deepseek-chat",
            "parameters": {
                "temperature": 0.7,
                "max_tokens": 4096
            }
        }
    },
    "instructions": "name testing description Use when writing tests, debugging test failures, running the test suite, or setting up test infrastructure. Covers self-test, package tests, and modern E2E tests. Testing Test patterns, commands, and utilities for the Meteor codebase. Test Commands # CLI self-tests ./meteor self-test # Run all CLI tests ./meteor self-test \"test name\" # Run specific test ./meteor self-test --list # List available tests ./meteor self-test --exclude \"^[a-b]\" # Exclude tests by regex ./meteor self-test --retries 0 # Skip retries in development # Package tests (TinyTest — view results at http://localhost:3000) ./meteor test-packages # Test all core packages ./meteor test-packages mongo # Test specific package TINYTEST_FILTER= \"collection\" ./meteor test-packages # Filter specific tests # Package tests in console (headless via Puppeteer — prints results to terminal) # Use this for automation or when you need terminal output without a browser. PUPPETEER_DOWNLOAD_PATH=~/.npm/chromium ./packages/test-in-console/run.sh ./packages/test-in-console/run.sh # Test all core packages ./packages/test-in-console/run.sh \"mongo\" # Test specific package # E2E tests (Jest + Playwright) npm run install:e2e # Install dependencies npm run test :e2e # Run all E2E tests npm run test :e2e -- -t= \"React\" # Run specific test # Native mobile smoke tests (Maestro) npm run install:native # Install deps, verify Maestro CLI on PATH npm run test :native:android # Run Android smoke flow npm run test :native:ios # Run iOS smoke flow E2E Tests ( tools/e2e-tests/ ) Jest + Playwright suite for verifying bundler integrations (rspack). Tests cover framework skeletons, command modes, routing, top-level await, and build/watch regressions. Test apps: tools/e2e-tests/apps/ . Use dev/modern-tools/rspack/E2E_COVERAGE.md as the authoritative app-to-feature coverage map instead of inferring coverage from fixture names. Native mobile smoke tests ( tools/native-tests/ ) Plain Node orchestrator + Maestro YAML flows. Builds a minimal Meteor app for Cordova, installs it on an iOS Simulator or Android emulator, and checks the initial runtime plus a live hot-code-push update. Coverage includes rendering, styles, Cordova APIs and asset paths, DDP, route reloads, and HCP. Runs nightly in CI plus on PRs labeled mobile . Local prerequisites: Maestro CLI ( curl -fsSL https://get.maestro.mobile.dev | bash ), Xcode (iOS), Android SDK + emulator (Android). See tools/native-tests/README.md for current Node and Android SDK minimums. Tests: flows/launch.yaml and flows/hcp-updated.yaml against apps/smoke/ . Test Helpers Package ( packages/test-helpers ) Comprehensive testing utilities for Meteor applications. Async Testing import { testAsyncMulti, simplePoll, waitUntil } from 'meteor/test-helpers' ; // Wait for condition await waitUntil ( () => someCondition, { timeout : 5000 , interval : 100 }); // Poll until ready simplePoll ( () => isReady (), successCallback, failCallback); DOM/UI Testing import { clickElement, simulateEvent, canonicalizeHtml, renderToDiv } from 'meteor/test-helpers' ; clickElement (button); simulateEvent (input, 'keydown' , { keyCode : 13 }); const normalized = canonicalizeHtml (html); Connection Testing import { makeTestConnection, captureConnectionMessages } from 'meteor/test-helpers' ; const conn = makeTestConnection (clientId); const messages = captureConnectionMessages (server); Utilities Function Description SeededRandom Predictable random for deterministic tests try_all_permutations() Test all permutations of inputs withCallbackLogger() Track callback invocations mockBehaviours() Behavior mocking Tinytest ( packages/tinytest ) Meteor's built-in test framework. Tinytest . add ( 'my test' , function ( test ) { test. equal ( 1 + 1 , 2 ); test. isTrue ( true ); test. throws ( function ( ) { throw new Error (); }); }); Tinytest . addAsync ( 'async test' , async function ( test ) { const result = await asyncOperation (); test. equal (result, expected); }); Environment Variables Variable Description TEST_METADATA Test configuration JSON METEOR_TEST_PACKAGES Packages to test Debug Commands # Verbose build output METEOR_DEBUG_BUILD=1 ./meteor run # Profile build performance METEOR_PROFILE=1 ./meteor build # Force rebuild ./meteor reset && ./meteor run # Debug Meteor tool with Chrome inspector TOOL_NODE_FLAGS= \"--inspect-brk\" ./meteor Writing Package Tests In package.js : Package . onTest ( function ( api ) { api. use ([ 'tinytest' , 'test-helpers' , 'my-package' ]); api. addFiles ( 'my-package-tests.js' ); }); In my-package-tests.js : import { MyPackage } from 'meteor/my-package' ; Tinytest . add ( 'MyPackage - basic functionality' , function ( test ) { const result = MyPackage . doSomething (); test. equal (result, expected); });",
    "variables": [],
    "opening_statement": "你好，我是 testing，Use when writing tests, debugging test failures, r...",
    "suggested_questions": [],
    "source": "DeepseekModel",
    "source_url": "https://deepseekmodel.com/skill?id=meteor-meteor-github-skills-testing-skill-md"
}