Libelektra: gopts، quickdump، specload: الاختبارات فشلت

تم إنشاؤها على ٤ أغسطس ٢٠١٩  ·  28تعليقات  ·  مصدر: ElektraInitiative/libelektra

خطوات إعادة إظهار المشكلة

قم بتجميع وتثبيت Elektra ، وإزالة (أو إعادة تسمية) دليل المصدر / البناء. ثم قم بتشغيل kdb run_all

نتيجة متوقعة

يجب تشغيل جميع حالات الاختبار بنجاح.

نتيجة فعلية

Running testmod_gopts

GOPTS     TESTS
==================

test empty
GOPTS     TESTS
==================

test empty
/home/jenkins/workspace/libelektra_master-Q2SIBK3KE2NBEMJ4WVGJXAXCSCB77DUBUULVLZDKHQEV3WNDXBMA/libelektra/src/plugins/gopts/testmod_gopts.c:78: error in run_test: child process test failed
test singleopt
/home/jenkins/workspace/libelektra_master-Q2SIBK3KE2NBEMJ4WVGJXAXCSCB77DUBUULVLZDKHQEV3WNDXBMA/libelektra/tests/cframework/tests.c:523: error in clean_temp_home: Could not delete TMPHOME via nftw
GOPTS     TESTS
==================
Running testmod_quickdump
QUICKDUMP     TESTS
==================

test varint
test basics
/home/jenkins/workspace/libelektra_master-Q2SIBK3KE2NBEMJ4WVGJXAXCSCB77DUBUULVLZDKHQEV3WNDXBMA/libelektra/src/plugins/quickdump/testmod_quickdump.c:111: error in test_basics: call to kdbSet was not successful

Program received signal SIGSEGV, Segmentation fault.
_IO_getc (fp=0x0) at getc.c:37
37      getc.c: Datei oder Verzeichnis nicht gefunden.
(gdb) bt
#0  _IO_getc (fp=0x0) at getc.c:37
#1  0x0000555555556bb7 in compare_binary_files (filename1=<optimized out>, filename2=<optimized out>) at ./src/plugins/quickdump/testmod_quickdump.c:31
#2  0x0000555555556f9a in test_basics () at ./src/plugins/quickdump/testmod_quickdump.c:113
#3  0x0000555555556807 in main (argc=1, argv=0x7fffffffe278) at ./src/plugins/quickdump/testmod_quickdump.c:332
Running testmod_specload

SPECLOAD     TESTS
==================

test basics
/home/jenkins/workspace/libelektra_master-Q2SIBK3KE2NBEMJ4WVGJXAXCSCB77DUBUULVLZDKHQEV3WNDXBMA/libelektra/src/plugins/specload/testmod_specload.c:63: error in test_basics: call to checkConfig was not successful
There are 1 warnings
buffer is: warnings/#00
number: C01330
description: Plugin Misbehavior
module: kdb
file: /home/jenkins/workspace/libelektra_master-Q2SIBK3KE2NBEMJ4WVGJXAXCSCB77DUBUULVLZDKHQEV3WNDXBMA/libelektra/src/libs/elektra/plugin.c
line: 302
reason: Open of plugin returned unsuccessfully: specload. Reason contains plugin, see other warnings for details
reason: 
reason: 
/home/jenkins/workspace/libelektra_master-Q2SIBK3KE2NBEMJ4WVGJXAXCSCB77DUBUULVLZDKHQEV3WNDXBMA/libelektra/src/plugins/specload/testmod_specload.c:65: error in test_basics: warnings in kdbOpen for plugin specload
number: C01100
description: : Resource
module: : specload
at: /home/jenkins/workspace/libelektra_master-Q2SIBK3KE2NBEMJ4WVGJXAXCSCB77DUBUULVLZDKHQEV3WNDXBMA/libelektra/src/plugins/specload/specload.c:372
reason: : App '/home/jenkins/workspace/libelektra_master-Q2SIBK3KE2NBEMJ4WVGJXAXCSCB77DUBUULVLZDKHQEV3WNDXBMA/libelektra/obj-x86_64-linux-gnu/bin/elektra-specload-testapp' doesn't exist or is not executable
mountpoint: : 
configfile: : 
/home/jenkins/workspace/libelektra_master-Q2SIBK3KE2NBEMJ4WVGJXAXCSCB77DUBUULVLZDKHQEV3WNDXBMA/libelektra/src/plugins/specload/testmod_specload.c:65: error in test_basics: error in kdbOpen for plugin specload
/home/jenkins/workspace/libelektra_master-Q2SIBK3KE2NBEMJ4WVGJXAXCSCB77DUBUULVLZDKHQEV3WNDXBMA/libelektra/src/plugins/specload/testmod_specload.c:65: fatal in test_basics: could not open specload plugin
error: testmod_specload

معلومات النظام

  • نسخة إليكترا: سيد

مزيد من المعلومات

يرجى أيضًا إضافة اختبار إلى خادم الإنشاء الذي يقوم بإجراء الاختبارات بعد إزالة أدلة المصدر / الإنشاء.

ال 28 كومينتر

فشل الاختبار specload واضح جدًا:

reason: : App '/home/jenkins/workspace/libelektra_master-Q2SIBK3KE2NBEMJ4WVGJXAXCSCB77DUBUULVLZDKHQEV3WNDXBMA/libelektra/obj-x86_64-linux-gnu/bin/elektra-specload-testapp' doesn't exist or is not executable

بالنسبة إلى quickdump لا أستطيع أن أقول بالضبط ما هو الخطأ ، لكنه فشل في مكان ما في elektraQuickdumpSet . يجب أن يكون هناك خطأ معين في setKey ، لكن أعتقد أنه لم يتم تسجيله (يجب تغيير ذلك على الأرجح).

لا فكرة ، لماذا فشل gopts . نظرًا لعدم طباعة أي رسالة خطأ ، أظن أنه لا يمكن تنفيذ testapp elektra-gopts-testapp (إنها الحالة الوحيدة التي لن تتم طباعة أي رسالة خطأ فيها). سيكون أيضًا متوافقًا مع الخطأ specload .

فشل اختبار تحميل المواصفات واضح جدًا:

نعم ، ولكن من الخطأ توقع وجود ثنائيات في دليل الإنشاء بعد تثبيت التطبيق. يجب تثبيت الثنائيات والبحث فيها في دليل الإنشاء أو التثبيت.

فشل اختبار تحميل المواصفات واضح جدًا:

نعم ، ولكن من الخطأ توقع وجود ثنائيات في دليل الإنشاء بعد تثبيت التطبيق. يجب تثبيت الثنائيات والبحث فيها في دليل الإنشاء أو التثبيت.

أوه ، فاتني أنك قمت بتثبيت Elektra. ومع ذلك ، هذا لا يفسر فشل quickdump ، حيث تم تثبيت بيانات الاختبار الخاصة به بشكل صحيح.

أنا أيضًا لست متأكدًا من كيفية حل هذه المشكلة. بالطبع يمكننا تثبيت الملفات التنفيذية لتطبيقات الاختبار ، ولكن يجب تعديل ملفات الاختبار التنفيذية الفعلية أثناء وقت التثبيت لتغيير المكان الذي يبحثون فيه عن تطبيق الاختبار.

إن البحث عن الثنائيات (في البناء أو dir المثبت) يتطلب الكثير من العمل ، ويمكننا أيضًا استبعاد الاختبارات من التثبيت.

يمكننا ببساطة استخدام مسار نسبي والتأكد من بقائه كما هو أثناء التثبيت ، على سبيل المثال ، وجود كلا الثنائيين في نفس الدليل.

نعم فكرة جيدة.

سيكون الحل الأكثر عمومية هو إذا كان لدينا kdb <command> متاحًا أيضًا في دليل الإنشاء (يعمل حاليًا فقط إذا تم تثبيت Elektra). سيكون بعض العمل إلى حد ما لأن KDB_EXEC_PATH يدعم مسارًا واحدًا فقط ولكن الثنائيات مبعثرة في أجزاء مختلفة من دليل البناء.

لدينا دينار كويتيمتاح أيضًا في دليل البناء

يمكن تنفيذ الاختبارات بسهولة عبر ctest و / أو make . بالنسبة للأوامر الأخرى ، فإن معظمها منطقي فقط لنسخة مثبتة من Elektra على أي حال.

يمكننا ببساطة استخدام مسار نسبي والتأكد من بقائه كما هو أثناء التثبيت ، على سبيل المثال ، وجود كلا الثنائيين في نفس الدليل.

تبين أن هذا أصعب مما كان متوقعا. سيتعامل stdlib مع المسار النسبي بالنسبة إلى دليل العمل الحالي ، وهو أمر غير مفيد ولا يمكن حل المسار المتعلق بمسار الملف التنفيذي الحالي بطريقة مستقلة عن النظام الأساسي.

وبالتالي فإن الطريقة kdb <command> ستكون جذابة للغاية.

للتثبيت يكفي تثبيته على TARGET_TOOL_EXEC_FOLDER

فقط أثناء وقت الإنشاء ، نحتاج إلى طريقة ما للجمع بين build_dir / bin build_dir / scripts source_dir / scripts والمجلدات الحالية (ربما أيضًا بناء + مصدر).

kodebach هذا لا يزال مفتوحا؟ هل يمكن أن نكتشف هذا الموقف كثيرين ونترك الاختبارات لا تعمل في هذه الحالة؟

أو نصلحها: يسمح KDB_EXEC_PATH الآن بمسارات متعددة ، حتى نتمكن من إضافة أي مجلدات نحتاجها من دليل البناء / المصدر. ثم ترك ببساطة kdb يقوم بمهمة العثور على الملف القابل للتنفيذ.

AFAIK هذا لا يزال مفتوحا ، نعم.

لدينا بالفعل الوظيفة srcdir_file للاختبارات. يمكننا تقديم bindir_file مشابه. سيكون bindir افتراضيًا هو ${CMAKE_INSTALL_PREFIX}/${TARGET_TOOL_EXEC_FOLDER} ، لكن سيكون هناك طريقة ما لتجاوزه. سيتم إعداد CTest (عبر add_test الخاص بـ CMake) بحيث يتم تعيين bindir على ${CMAKE_BINARY_DIR}/bin عند استخدام ctest .

وببساطة إضافة bindir إلى KDB_EXEC_PATH واستخدام kdb <bin> لا يعمل؟

لا ، لعدة أسباب:

  1. هذه اختبارات testmod_ ، يجب ألا تعتمد على kdb .
  2. كيف سنجد kdb إذن؟ تنفيذ الاختبارات باستخدام make run_all يجب ألا يستخدم kdb ، لكن الاختبار الموجود في ${CMAKE_BINARY_DIR}/bin .
  3. سيظل KDB_EXEC_PATH يحتوي على المجلد ${CMAKE_BINARY_DIR}/bin ، بعد تثبيت kdb ، والذي قد يسبب مشاكل مختلفة.

هذه اختبارات testmod_ ، لا ينبغي أن تعتمد على kdb.

نعم اوافق. إنه لأمر جيد إذا كانوا يعملون بشكل مستقل.

فكيف سنجد دينار كويتي إذن؟ تنفيذ الاختبارات باستخدام make run_all لا يجب أن يستخدم kdb المثبت ، ولكن الاختبار الموجود في $ {CMAKE_BINARY_DIR} / bin.

تستخدم اختبارات Shellrecorder بالفعل kdb ، وهي تعمل مع كل من Elektra المثبت ومن دليل الإنشاء (حتى إذا تم تثبيت Elektra).

سيظل KDB_EXEC_PATH يحتوي على المجلد $ {CMAKE_BINARY_DIR} / bin ، بعد تثبيت kdb ، والذي قد يسبب مشاكل مختلفة.

لا ، لم يتم تعيين KDB_EXEC_PATH على كيلو ديسيبل مثبت (إلا إذا قام المستخدم بتعيينه)

تستخدم اختبارات Shellrecorder بالفعل kdb ، وهي تعمل مع كل من Elektra المثبت ومن دليل الإنشاء (حتى إذا تم تثبيت Elektra).

يعمل هذا لأن اختبارات الصدفة تنفذ دائمًا "$KDB" ولا تنفذ أبدًا kdb . وأيضًا لأن make run_all و ctest يستخدمان على سبيل المثال نصوص testscr_check_meta.sh ، بينما يستخدم kdb مثل check_meta.sh . في الأول قمنا بتعيين $KDB إلى ${CMAKE_BINARY_DIR}/bin/kdb في الثانية ، تم تعيينه ببساطة على kdb (وبالتالي تم حله عبر $PATH ).

لا ، لم يتم تعيين KDB_EXEC_PATH على كيلو ديسيبل مثبت (إلا إذا قام المستخدم بتعيينه)

لقد أخذت الإصدار الرئيسي من Elektra وقمت بتثبيته. يحتوي الملف /usr/local/lib/elektra/tool_exec/check_meta على السطر:

export KDB_EXEC_PATH="/home/klemens/libelektra/build/bin:$KDB_EXEC_PATH"

بالطبع لا يؤثر هذا على اختبارات testmod_* ، لكنه خطأ مع ذلك. سوف أقوم بإنشاء عدد جديد.

@ petermax2kodebach ما هو وضع هذه القضية؟ هل تم إصلاح # 3246 الآن (عبر # 3409) ، بقية هذه المشكلة فقط مشاكل التعبئة والتغليف أم هناك شيء متبقي ليتم تنفيذه؟

AFAIK المشكلة الأصلية مع specload لا تزال موجودة. TBH لست متأكدًا من سبب وجوب اختيار تثبيت اختبارات testmod_ . لا معنى له. هذه اختبارات قائمة بذاتها تختبر مكونًا إضافيًا واحدًا على حدة. إذا تم تشغيلها بالفعل ، فستكون نتائجها هي نفسها بغض النظر عما إذا تم تنفيذها في دليل الإنشاء أو دليل التثبيت.

TBH لست متأكدًا من سبب وجوب خيار تثبيت اختبارات testmod_.

في الوقت الحالي ، ليس لدينا خيار لتعطيل تثبيت الاختبارات ولكن يمكننا إجراء تجاوز محلي لجعل اختبارات add_plugintest غير مثبتة (مثل INSTALL_TESTING ولكن للفرد add_plugintest ).

لا معنى له. هذه اختبارات قائمة بذاتها تختبر مكونًا إضافيًا واحدًا على حدة. إذا تم تشغيلها بالفعل ، فستكون نتائجها هي نفسها بغض النظر عما إذا تم تنفيذها في دليل الإنشاء أو دليل التثبيت.

: wink: ، هناك الكثير من الاختلافات ، لكن معظمها كان مرتبطًا بنظام البرنامج المساعد نفسه (نأمل أن يتم إصلاحها جميعًا الآن). ولكن لا يزال هناك مجموعة كبيرة من مشكلات التبعية المحتملة ومشكلات التثبيت ، لذا فإن إجراء اختبارات testmod في الحالة المثبتة أفضل بكثير من عدم تشغيل أي شيء. لكنك محق في أنه إذا كان هناك اختبار shellrecorder ، فإن اختبار testmod يكون عديم الفائدة.

  • [X] لذلك من الواضح بالنسبة للتفريغ السريع ، أن اختبار testmod لا يحتاج إلى التثبيت.
  • [] بالنسبة إلى specload ، هناك اختبار لكنه يبدو ضئيلًا للغاية ، ربما يكون جيدًا ولكن من الأفضل أن تتحقق مرة أخرى.
  • [] بالنسبة إلى gopts ، يمكننا السماح بتشغيل برامج المثال في doc / tutorials / command-line-options.md؟

kodebach هل يمكنك التحقق مما إذا كان يمكن استبعاد هذه الاختبارات بأمان؟

robaerd هل يمكنك استبعادهم في أحد CI PRs؟ (قبل أو حيث تضيف اختبار الحزم.)

@ markus2330 هل ما زالت مشكلة التفريغ السريع تحدث لك؟ AFAIK لم نكتشف أبدًا ما هو الخطأ هناك. أنا أيضا لا أستطيع إعادة إنتاجه.

للحصول على gopts و specload انظر # 3618

نعم ، مازال يحدث:

kdb testmod_quickdump                                                                                                                                                                                                                    
QUICKDUMP     TESTS
==================

test varint
test basics
/home/jenkins/workspace/libelektra_master/libelektra/src/plugins/quickdump/testmod_quickdump.c:111: error in test_basics: call to kdbSet was not successful
zsh: segmentation fault (core dumped)  noglob kdb testmod_quickdump

أو عندما أسميها من المصدر:

"الاختبارات السريعة

اختبار varint
أساسيات الاختبار
/home/markus/Projekte/Elektra/current/src/plugins/quickdump/testmod_quickdump.c:92: خطأ في test_basics: استدعاء kdbGet لم يكن ناجحًا
/home/markus/Projekte/Elektra/current/src/plugins/quickdump/testmod_quickdump.c:93: خطأ في test_basics: الحجم الحقيقي لـ mmks2 كان 0
/home/markus/Projekte/Elektra/current/src/plugins/quickdump/testmod_quickdump.c:93: خطأ في test_basics: فشل مقارنة مجموعة المفاتيح ، حجم مجموعات المفاتيح لا يساوي الحجم (mmks1): 8 ، الحجم (mmks2): 0
mmks1:
0x55a9efd438d0 المفتاح: dir: / الاختبارات / مقاعد البدلاء / __ 112 ، السلسلة: gQHLlzB36CqIFlf ، meta: / meta / _35: O6xNya6srhNhMFC ، meta: / meta / _39: ublVuvyh1DgfOKU ، meta: / meta2 / _58H ZK2xlaRMfobquxp ، meta: / meta / _90: 0kCcc1pK7hOgY3F
0x55a9efd44250 المفتاح: dir: / الاختبارات / مقاعد البدلاء / __ 114 ، السلسلة: ، ميتا: / ثنائي:
0x55a9efd441a0 المفتاح: dir: / الاختبارات / مقاعد البدلاء / __ 333 ، السلسلة: SxTUAjM6OIpUV6s
0x55a9efd440f0 المفتاح: dir: / الاختبارات / مقاعد البدلاء / __ 506 ، السلسلة: cGqEvmXxUayNCf8
0x55a9efd44040 مفتاح: dir: / tests / مقاعد البدلاء / __ 859 ، السلسلة: rOI5aVFGlnjPLYJ
0x55a9efd43f90 المفتاح: dir: / الاختبارات / مقاعد البدلاء / __ 863 ، السلسلة: 8IBjbd5pzYBehrs
0x55a9efd43f20 المفتاح: dir: / الاختبارات / مقاعد البدلاء / __ 868 ، السلسلة: UVM0OPTf68yNXij
0x55a9efd43d90 key: dir: /
mmks2:
/home/markus/Projekte/Elektra/current/src/plugins/quickdump/testmod_quickdump.c:111: خطأ في test_basics: استدعاء kdbSet لم يكن ناجحًا
zsh: خطأ تجزئة (تم تفريغ النواة) LD_LIBRARY_PATH = lib bin / testmod_quickdump

Stacktrace:

0 0x00007fa7c770ed74 في _IO_getc (fp = 0x0) في getc.c: 37

1 0x000055a9ede54c58 في ملف Compar_binary_files (filename2 = 0x55a9efd42a30 "/usr/local/share/elektra/test_data/quickdump/test.quickdump.out" ، filename1 = 0x55a9efd429e0 "/usr/local/test_data/quickdump/test.quickdump.out" )

at /home/markus/Projekte/Elektra/current/src/plugins/quickdump/testmod_quickdump.c:31

2 test_basics () في /home/markus/Projekte/Elektra/current/src/plugins/quickdump/testmod_quickdump.c:113

3 0x000055a9ede545d7 في main (argc = 1، argv = 0x7ffff28085f8) في /home/markus/Projekte/Elektra/current/src/plugins/quickdump/testmod_quickdump.c:278


0 0x00007fa7c770ed74 في _IO_getc (fp = 0x0) في getc.c: 37

37 getc.c: Datei أو Verzeichnis nicht gefunden.
(gdb) bt

0 0x00007fa7c770ed74 في _IO_getc (fp = 0x0) في getc.c: 37

1 0x000055a9ede54c58 في ملف Compar_binary_files (filename2 = 0x55a9efd42a30 "/usr/local/share/elektra/test_data/quickdump/test.quickdump.out" ، filename1 = 0x55a9efd429e0 "/usr/local/test_data/quickdump/test.quickdump.out" )

at /home/markus/Projekte/Elektra/current/src/plugins/quickdump/testmod_quickdump.c:31

2 test_basics () في /home/markus/Projekte/Elektra/current/src/plugins/quickdump/testmod_quickdump.c:113

3 0x000055a9ede545d7 في main (argc = 1، argv = 0x7ffff28085f8) في /home/markus/Projekte/Elektra/current/src/plugins/quickdump/testmod_quickdump.c:278

(gdb) bt ممتلئ

0 0x00007fa7c770ed74 في _IO_getc (fp = 0x0) في getc.c: 37

    result = <optimized out>

1 0x000055a9ede54c58 في ملف Compar_binary_files (filename2 = 0x55a9efd42a30 "/usr/local/share/elektra/test_data/quickdump/test.quickdump.out" ، filename1 = 0x55a9efd429e0 "/usr/local/test_data/quickdump/test.quickdump.out" )

at /home/markus/Projekte/Elektra/current/src/plugins/quickdump/testmod_quickdump.c:31
    f2 = 0x0
    c1 = <optimized out>
    f1 = 0x0
    result = 0
    c2 = <optimized out>
    f1 = <optimized out>
    f2 = <optimized out>
    result = <optimized out>
    c1 = <optimized out>
    c2 = <optimized out>
    end1 = <optimized out>
    end2 = <optimized out>

2 test_basics () في /home/markus/Projekte/Elektra/current/src/plugins/quickdump/testmod_quickdump.c:113

    conf = <optimized out>
    modules = 0x55a9efd43a00
    setKey = 0x55a9efd42bb0
    errorKey = <optimized out>
    plugin = 0x55a9efd43b00
    ks = <optimized out>
    infile = 0x55a9efd429e0 "/usr/local/share/elektra/test_data/quickdump/test.quickdump"
    outfile = 0x55a9efd42a30 "/usr/local/share/elektra/test_data/quickdump/test.quickdump.out"
    __func__ = "test_basics"

3 0x000055a9ede545d7 في main (argc = 1، argv = 0x7ffff28085f8) في /home/markus/Projekte/Elektra/current/src/plugins/quickdump/testmod_quickdump.c:27

""

أو عندما أسميها من المصدر:

عند إجراء الاختبارات مباشرةً ، يرجى استخدام ctest (على سبيل المثال ، ctest -R testmod_quickdump --ouptut-on-failure ) للتأكد من أن البيئة و Args وما إلى ذلك قد تم ضبطها بشكل صحيح.

في هذه الحالة ، أعتقد أن LD_LIBRARY_PATH=lib bin/testmod_quickdump ../src/plugins/quickdump هو ما تحتاجه (إذا كنت تريد التصحيح باستخدام مثل gdb ).


هل /usr/local/share/elektra/test_data/quickdump/test.quickdump موجود على نظامك وهل للعملية الحق في الكتابة إلى /usr/local/share/elektra/test_data/quickdump/test.quickdump.out ؟ (ربما تحتاج sudo kdb testmod_quickdump )

إذا كان الأمر كذلك ، يرجى الإضافة

output_error (setKey);
output_warnings (setKey);

testmod_quickdump.c:112 وقم بترحيل الناتج.

فشل elektraQuickdumpSet ، لذا فإن حقيقة أن فشل compare_binary_files أمر متوقع تمامًا. (يمكن أن تكون رسالة الخطأ أفضل بالطبع ويمكن تجنب segfault ، ولكنه اختبار _ فاشل_ لذا لا يهم كثيرًا حقًا)

نعم ، المشكلة أن حالات الاختبار تحاول إنشاء ملفات مؤقتة في مجلد غير مناسب لذلك. sudo kdb testmod_quickdump يعمل بدون مشاكل. لذلك يجب أن يكفي استخدام وظائفنا لإنشاء ملفات مؤقتة بدلاً من استخدام "test_data / quickdump / test.quickdump.out"

يمكننا تغيير ذلك بنعم ، لكن العديد من الاختبارات لا يتم إجراؤها بدون sudo أي حال ، لذا لا أرى أن هذا يمثل مشكلة

ما هي الاختبارات التي تتحدث عنها؟ أقوم دائمًا بتشغيل المجموعة بأكملها بدون sudo (ولكن مع أذونات الكتابة إلى مسار Elektra). testmod_quickdump هو الاختبار الوحيد لهذه المشكلة.

ولكن مع أذونات الكتابة إلى مسار Elektra

حسنًا ، هذا يعمل أيضًا ، ولكن في النظام القياسي ، فإن هذه المسارات هي الوصول إلى الجذر فقط.

ما زلت أعتقد أن المفهوم الكامل لتشغيل اختبارات الوحدة في إصدار مثبت من Elektra غريب وأن مشكلة Quickdump هي مجرد مشكلة تتعلق بحقوق المستخدم وليست خطأ ، لكنني سأغير المسار في # 3618.

لقد قمت الآن بتحديث الكود في # 3618. لقد وجدت أيضًا رمزًا مشابهًا في testmod_dump وقمت بتغيير ذلك بشكل جيد. لا فكرة ، لماذا لم يفشل ذلك بالنسبة لك. قد يكون لدى testmod_xmltool مشكلة مماثلة (على الرغم من اختلاف الكود لذا لم أغيره).

testmod_quickdump كان لواحد فقط من أولئك الذين استخدموا الملفات الثنائية وبالتالي لم يستخدم compare_line_files . لذلك لن يخطئ الآخرون ، لكن الاختبارات يجب أن تفشل.

و أن مشكلة التفريغ السريع هي مشكلة تتعلق بحقوق المستخدم فقط وليست خطأ ،

إنه انتهاك لـ FHS ، ليس من المفترض أن تكتب التطبيقات إلى / usr ، بل قد تكون للقراءة فقط.

للكتابة ، يجب أن نستخدم الملفات المؤقتة فقط ويجب علينا أيضًا تنظيفها بعد انتهاء الاختبارات.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات