javascript-typescript-jest
द्वारा github
जावास्क्रिप्ट और टाइपस्क्रिप्ट प्रोजेक्ट्स के लिए मॉकिंग, एसिंक हैंडलिंग और रिएक्ट पैटर्न के साथ जेस्ट टेस्टिंग के सर्वोत्तम अभ्यास। नेस्टेड डिस्क्राइब ब्लॉक्स में वर्णनात्मक नामों के साथ टेस्ट व्यवस्थित करें, स्रोत कोड के साथ या __tests__ डायरेक्टरीज़ में .test.ts / .test.js फ़ाइलों का उपयोग करें। jest.mock(), jest.spyOn() और mockImplementation() के साथ बाहरी निर्भरताओं को मॉक करें, टेस्ट के बीच स्थिति के रिसाव को रोकने के ल
npx skills add https://github.com/github/awesome-copilot --skill javascript-typescript-jestTest Structure
- Name test files with
.test.tsor.test.jssuffix - Place test files next to the code they test or in a dedicated
__tests__directory - Use descriptive test names that explain the expected behavior
- Use nested describe blocks to organize related tests
- Follow the pattern:
describe('Component/Function/Class', () => { it('should do something', () => {}) })
Effective Mocking
- Mock external dependencies (APIs, databases, etc.) to isolate your tests
- Use
jest.mock()for module-level mocks - Use
jest.spyOn()for specific function mocks - Use
mockImplementation()ormockReturnValue()to define mock behavior - Reset mocks between tests with
jest.resetAllMocks()inafterEach
Testing Async Code
- Always return promises or use async/await syntax in tests
- Use
resolves/rejectsmatchers for promises - Set appropriate timeouts for slow tests with
jest.setTimeout()
Snapshot Testing
- Use snapshot tests for UI components or complex objects that change infrequently
- Keep snapshots small and focused
- Review snapshot changes carefully before committing
Testing React Components
- Use React Testing Library over Enzyme for testing components
- Test user behavior and component accessibility
- Query elements by accessibility roles, labels, or text content
- Use
userEventoverfireEventfor more realistic user interactions
Common Jest Matchers
- Basic:
expect(value).toBe(expected),expect(value).toEqual(expected) - Truthiness:
expect(value).toBeTruthy(),expect(value).toBeFalsy() - Numbers:
expect(value).toBeGreaterThan(3),expect(value).toBeLessThanOrEqual(3) - Strings:
expect(value).toMatch(/pattern/),expect(value).toContain('substring') - Arrays:
expect(array).toContain(item),expect(array).toHaveLength(3) - Objects:
expect(object).toHaveProperty('key', value) - Exceptions:
expect(fn).toThrow(),expect(fn).toThrow(Error) - Mock functions:
expect(mockFn).toHaveBeenCalled(),expect(mockFn).toHaveBeenCalledWith(arg1, arg2)
github की और Skills
console-rendering
github
Go में struct टैग-आधारित कंसोल रेंडरिंग सिस्टम का उपयोग करने के निर्देश
official
acquire-codebase-knowledge
github
इस कौशल का उपयोग तब करें जब उपयोगकर्ता स्पष्ट रूप से किसी मौजूदा कोडबेस का मानचित्रण, दस्तावेज़ीकरण या उसमें शामिल होने का अनुरोध करे। "इस कोडबेस का मानचित्रण करें", "दस्तावेज़ीकरण करें..." जैसे संकेतों के लिए ट्रिगर करें।
official
acreadiness-assess
github
Run the AgentRC readiness assessment on the current repository and produce a static HTML dashboard at reports/index.html. Wraps `npx github:microsoft/agentrc…
official
acreadiness-generate-instructions
github
एजेंटआरसी निर्देश कमांड के माध्यम से अनुकूलित AI एजेंट निर्देश फ़ाइलें उत्पन्न करता है। .github/copilot-instructions.md (डिफ़ॉल्ट, VS में Copilot के लिए अनुशंसित) उत्पन्न करता है…
official
acreadiness-policy
github
उपयोगकर्ता को AgentRC नीति चुनने, लिखने या लागू करने में सहायता करें। नीतियाँ अप्रासंगिक जाँचों को अक्षम करके, प्रभाव/स्तर को ओवरराइड करके, सेट करके तत्परता स्कोरिंग को अनुकूलित करती हैं…
official
add-educational-comments
github
कोड फ़ाइलों में शैक्षिक टिप्पणियाँ जोड़कर उन्हें प्रभावी शिक्षण संसाधनों में बदलें। व्याख्या की गहराई और लहज़े को तीन कॉन्फ़िगरेबल ज्ञान स्तरों के अनुसार अनुकूलित करता है: शुरुआती, मध्यवर्ती और उन्नत। यदि कोई फ़ाइल प्रदान नहीं की गई है तो स्वचालित रूप से एक फ़ाइल का अनुरोध करता है, त्वरित चयन के लिए क्रमांकित सूची मिलान के साथ। केवल शैक्षिक टिप्पणियों का उपयोग करके फ़ाइलों को 125% तक विस्तारित कर
official
adobe-illustrator-scripting
github
एक्सटेंडस्क्रिप्ट (जावास्क्रिप्ट/JSX) का उपयोग करके Adobe Illustrator ऑटोमेशन स्क्रिप्ट लिखें, डीबग करें और ऑप्टिमाइज़ करें। उन स्क्रिप्ट को बनाने या संशोधित करने के लिए उपयोग करें जो…
official
agent-governance
github
एजेंट टूल एक्सेस और व्यवहार को नियंत्रित करने के लिए घोषणात्मक नीतियां, इरादा वर्गीकरण और ऑडिट ट्रेल्स। कंपोजेबल गवर्नेंस नीतियां अनुमत/अवरुद्ध टूल, सामग्री फ़िल्टर, दर सीमाएं और अनुमोदन आवश्यकताओं को परिभाषित करती हैं — कॉन्फ़िगरेशन के रूप में संग्रहीत, कोड नहीं। सिमैंटिक इरादा वर्गीकरण टूल निष्पादन से पहले पैटर्न-आधारित संकेतों का उपयोग करके खतरनाक प्रॉम्प्ट
official