Robolectric 4.9.1+: Android runtime ڈاؤن لوڈز کے لیے پراکسی ترتیبات
Robolectric کی آرٹی فیکٹ ڈاؤن لوڈ پراکسی خصوصیات کو اس ٹیسٹ JVM تک پہنچائیں جو Android runtime انحصارات حاصل کرتا ہے۔
Robolectric ٹیسٹ چلنے کے دوران Android runtime آرٹی فیکٹس ڈاؤن لوڈ کر سکتا ہے۔ بلڈ ٹول کا منصوبے کے معمول کے انحصارات کامیابی سے حل کر لینا یہ ثابت نہیں کرتا کہ ٹیسٹ کے دوران یہ ڈاؤن لوڈ وہی پراکسی استعمال کرتا ہے۔
Robolectric 4.9.1 اور بعد کے ورژن اس ڈاؤن لوڈر کے لیے درج ذیل سسٹم خصوصیات کی دستاویز کرتے ہیں:
robolectric.dependency.proxy.host=proxy.example
robolectric.dependency.proxy.port=8080انہیں ٹیسٹ چلانے والے JVM کو دیں۔ بغیر تصدیق کے HTTP واسطے کے ذریعے اجازت شدہ عوامی آرٹی فیکٹ ڈاؤن لوڈز کے لیے ان ہوسٹ اور پورٹ خصوصیات میں HTTP پراکسی فہرست سے کوئی پتہ استعمال کریں۔ Gradle کے Groovy DSL استعمال کرنے والے Android منصوبے کے لیے متعلقہ کنفیگریشن یہ ہو سکتی ہے:
android {
testOptions {
unitTests.all {
systemProperty 'robolectric.dependency.proxy.host', 'proxy.example'
systemProperty 'robolectric.dependency.proxy.port', '8080'
}
}
}اسے منصوبے کی موجودہ ٹیسٹ کنفیگریشن کے ساتھ رکھیں۔ صرف Gradle لانچر کو دی گئی خصوصیت اس بات کا ثبوت نہیں کہ کسی فورک شدہ ٹیسٹ JVM نے اسے حاصل کیا۔
دانستہ طور پر منقطع ٹیسٹ ماحول کے لیے Robolectric robolectric.offline اور robolectric.dependency.dir بھی دستاویز کرتا ہے۔ اس ترتیب کے لیے ضروری ہے کہ درست runtime آرٹی فیکٹس مخصوص ڈائریکٹری میں رکھے جائیں۔ Gradle کا اپنا آف لائن کیش Robolectric کے آف لائن حل کنندہ کی متوقع ڈائریکٹری کا متبادل نہیں ہے۔