منصوبے کے بارے میں
یوگا ایک قابلِ انضمام لے آؤٹ انجن ہے جو ویب معیارات کے مطابق فلیکس باکس سیمینٹکس کو نافذ کرتا ہے۔ اس کی بنیادی پیاده سازی C++20 میں لکھی گئی ہے اور CMake کے ساتھ بنائی جاتی ہے، اور یہ متعدد پروگرامنگ زبانوں کے لیے بائنڈنگز کے ساتھ آتا ہے، جس سے یہ مختلف پلیٹ فارمز اور رن ٹائمز پر قابلِ استعمال ہے۔
پروجیکٹ مین لائبریری بنانے اور یونٹ ٹیسٹس چلانے کے لیے ایک وراپر اسکرپٹ فراہم کرتا ہے:
```sh
./unit_tests <Debug|Release>
```
اگر ninja انسٹال ہے، تو اسکرپٹ تیز بلڈز کے لیے اس کا استعمال کرتا ہے۔ یوگا vcpkg پورٹ کے طور پر بھی دستیاب ہے جو مائیکروسافٹ اور کمیونٹی کے شراکت داروں کی جانب سے برقرار رکھا جاتا ہے؛ صارفین vcpkg ریپوزٹری کے ذریعے اپڈیٹس کی درخواست کر سکتے ہیں۔
ٹیسٹنگ زیادہ تر خودکار ہے۔ ٹیسٹس HTML فکسچرز سے جنریٹ کیے جاتے ہیں جو نوڈ کی ساخت کی وضاحت کرتے ہیں، جنہیں Chrome میں رینڈر کر کے متوقع لے آؤٹ نتائج حاصل کیے جاتے ہیں۔ نئے فکسچرز `gentest/fixtures` میں جائیں، مثال کے طور پر:
```html
<div id="my_test" style="width: 100px; height: 100px; align-items: center;">
<div style="width: 50px; height: 50px;"></div>
</div>
```
نئے فکسچرز سے ٹیسٹ جنریٹ کرنے کے لیے، yarn classic انسٹال کریں، `yarn install` چلائیں تاکہ ٹیسٹ جنریٹر کے انحصارات حاصل ہوں، پھر yoga ڈائریکٹری میں `yarn gentest` چلائیں۔
ڈی بگنگ کے لیے، یوگا میں VSCode لانچ کنفیگریشن شامل ہے جو "Debug C++ Unit tests (lldb)" یا ونڈوز پر "Debug C++ Unit tests (vsdbg)" کے ذریعے بریک پوائنٹس کے ساتھ یونٹ ٹیسٹس کی ڈی بگنگ کی حمایت کرتی ہے۔
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.