DUNE-TEST(1) Dune Manual DUNE-TEST(1)

dune-test - نام مستعار برای runtest

dune test [OPTION]… [TEST]…

دستور dune test یک نام مستعار برای dune runtest است.

برای جزئیات بیشتر به راهنمای dune runtest --help مراجعه کنید.

--action-stderr-on-success=VAL
همانند --action-stdout-on-success، اما برای خطای استاندارد به جای خروجی استاندارد. یک مقدار پیش‌فرض مناسب برای مخازن بزرگ یکپارچه (monorepo)، گزینه --action-stdout-on-success=swallow --action-stderr-on-success=must-be-empty است. این گزینه تضمین می‌کند که یک ساخت موفق دارای خروجی «تمیز» و خالی باشد.
--action-stdout-on-success=VAL
تعیین نحوه برخورد با خروجی استاندارد اقدامات هنگام موفقیت آن‌ها. مقادیر ممکن عبارتند از: print برای چاپ مستقیم آن در خروجی Dune، گزینه swallow برای نادیده گرفتن کامل آن، و must-be-empty برای الزام به اینکه اقدام هیچ چیزی چاپ نکرده باشد. با مقدار must-be-empty، اگر اقدامی چیزی در خروجی استاندارد خود بنویسد، Dune آن را به منزله شکست تلقی خواهد کرد. مقدار پیش‌فرض print است.
--build-info
نمایش اطلاعات ساخت.
--display-separate-messages
جداسازی پیام‌های خطا با یک خط خالی.
--error-reporting=VAL (absent=deterministic)
کنترل زمان گزارش خطاهای ساخت. مقدار early خطاها را به محض کشف گزارش می‌دهد. مقدار deterministic خطاها را در پایان ساخت با ترتیبی معین گزارش می‌کند. مقدار twice هر خطا را دو بار گزارش می‌دهد: یک بار به محض کشف و بار دیگر در پایان ساخت با ترتیبی معین.
-f, --force
اجرای مجدد اجباری اقدامات مرتبط با نام‌های مستعار، حتی اگر وابستگی‌های آن‌ها تغییر نکرده باشد.
--file-watcher=VAL (absent=automatic)
سازوکار شناسایی تغییرات در فایل‌های منبع. مقدار automatic باعث می‌شود dune یک برنامه خارجی را برای شناسایی تغییرات اجرا کند. مقدار manual برای اطلاع‌رسانی دستی تغییرات فایل‌ها به dune است.
--passive-watch-mode
مشابه [--watch]، اما ساخت تنها زمانی آغاز می‌شود که از خارج توسط یک RPC درخواست داده شود.
--sandbox=VAL (absent DUNE_SANDBOX env)
تنظیم حالت جعبه شنی (sandbox). برخی اقدامات به حالت خاصی از جعبه شنی نیاز دارند، بنابراین این تنظیم را نادیده می‌گیرند. مقادیر مجاز عبارتند از: none، symlink، copy، hardlink.
--stop-on-first-error
توقف فرایند ساخت به محض مواجهه با نخستین خطا.
-w, --watch
به جای پایان دادن به فرایند ساخت پس از اتمام، به طور مداوم منتظر تغییرات فایل‌ها می‌ماند.
--wait-for-filesystem-clock
برنامه Dune برای بهبود عملکرد افزایشی، خلاصه‌ای از محتوای فایل‌ها تهیه می‌کند. این خلاصه‌ها ذخیره می‌شوند. در برخی موارد، Dune برای اطمینان‌پذیری نیاز دارد برخی از ورودی‌های حافظه پنهان خلاصه را حذف کند. این گزینه باعث می‌شود Dune منتظر پیشرفت ساعت سیستم فایل بماند تا نیازی به حذف چیزی نداشته باشد. شما احتمالاً نیازی به این گزینه نخواهید داشت؛ این سوییچ بیشتر برای توسعه‌دهندگان Dune جهت تکرارپذیرتر کردن آزمون‌های حافظه پنهان خلاصه مفید است.

این گزینه‌ها میان همه دستورها مشترک هستند.

--always-show-command-line
همیشه خط فرمان کامل برنامه‌های اجراشده توسط dune نمایش داده شود.
--auto-promote
ارتقای خودکار فایل‌ها. این گزینه مشابه اجرای dune promote پس از پایان ساخت است.
--build-dir=FILE (absent DUNE_BUILD_DIR env)
دایرکتوری ساخت مشخص‌شده. در صورت مشخص نشدن، مقدار پیش‌فرض _build است.
--cache=VAL (absent DUNE_CACHE env)
فعال یا غیرفعال کردن حافظه پنهان Dune (یکی از مقادیر disabled، enabled-except-user-rules یا enabled). پیش‌فرض `enabled-except-user-rules' است.
--cache-check-probability=VAL (absent DUNE_CACHE_CHECK_PROBABILITY env)
بررسی تکرارپذیری ساخت با اجرای مجدد قواعد انتخاب‌شده به صورت تصادفی و مقایسه نتایج آن‌ها با موارد ذخیره‌شده در حافظه پنهان Dune. نکته: با افزایش احتمال این بررسی‌ها، سرعت ساخت کاهش می‌یابد. احتمال پیش‌فرض صفر است، یعنی هیچ قاعده‌ای بررسی نمی‌شود.
--cache-storage-mode=VAL (absent DUNE_CACHE_STORAGE_MODE env)
حالت ذخیره‌سازی حافظه پنهان Dune (یکی از مقادیر auto، hardlink یا copy). پیش‌فرض `hardlink' است.
--config-file=FILE
بارگذاری این فایل پیکربندی به جای فایل پیش‌فرض.
--debug-backtraces
ردیابی به عقب (backtrace) استثناها همیشه چاپ شود.
--debug-dependency-path
در صورت بروز خطا، مسیر وابستگی از هدف‌های مشخص‌شده در خط فرمان تا قاعده‌ای که ناموفق بوده است چاپ شود.
--debug-package-logs (absent DUNE_DEBUG_PACKAGE_LOGS env)
چاپ همیشگی لاگ‌های استاندارد هنگام ساخت بسته‌ها.
--default-target=TARGET (absent=@@default)
تنظیم هدف پیش‌فرضی که در صورت مشخص نشدن هیچ هدفی برای dune build استفاده می‌شود.
--diff-command=VAL (absent DUNE_DIFF_COMMAND env)
دستور پوسته برای مقایسه فایل‌ها. برای غیرفعال کردن چاپ تفاوت‌ها از - استفاده کنید.
--disable-promotion (absent DUNE_DISABLE_PROMOTION env)
غیرفعال کردن تمام قواعد ارتقا (promotion).
--display=MODE
کنترل حالت نمایش Dune. برای جزئیات بیشتر به dune-config(5) مراجعه کنید. مقادیر معتبر برای این گزینه عبارتند از: progress، verbose، short، quiet یا tui.
--dump-gc-stats=FILE
تخلیه آمار بازیافت حافظه (garbage collector) در یک فایل پس از تکمیل ساخت.
--help[=FMT] (default=auto)
نمایش این راهنما در قالب FMT. مقدار FMT باید یکی از auto، pager، groff یا plain باشد. با مقدار auto، هرگاه متغیر محیطی TERM برابر dumb باشد یا تعریف نشده باشد، قالب به صورت pager یا plain خواهد بود.
--ignore-promoted-rules
نادیده گرفتن قواعد با (mode promote)، به جز مواردی که دارای (only ...) هستند. متغیر %{ignoring_promoted_rules} در فایل‌های dune نشان می‌دهد که این گزینه ارسال شده است یا خیر.
--instrument-with=BACKENDS (absent DUNE_INSTRUMENT_WITH env)
فعال‌سازی ابزارسازی (instrumentation) توسط BACKENDS. مقدار BACKENDS فهرستی از نام‌های کتابخانه است که با کاما از هم جدا شده‌اند، و هر کدام باید یک بک‌اند ابزارسازی را اعلان کنند.
-j JOBS (absent DUNE_JOBS env)
اجرای حداکثر JOBS دستور به صورت هم‌زمان. مقدار JOBS باید یک عدد صحیح مثبت یا auto برای تشخیص خودکار تعداد هسته‌ها (پیش‌فرض) باشد.
--no-buffer
خروجی دستورات اجراشده توسط dune در بافر ذخیره نشود. به طور پیش‌فرض dune خروجی زیردستورها را بافر می‌کند تا از تداخل آن‌ها هنگام اجرای موازی چندین دستور جلوگیری شود. با این حال، این امر می‌تواند هنگام اشکال‌زدایی آزمون‌های طولانی مشکل‌ساز شود. با گزینه --no-buffer، دستورها دسترسی مستقیم به ترمینال دارند. توجه داشته باشید که در نتیجه، خروجی آن‌ها در فایل لاگ ثبت نخواهد شد. برای جلوگیری از تداخل، باید از این گزینه همراه با -j 1 استفاده کنید. علاوه بر این، باید از --verbose نیز استفاده کنید تا مطمئن شوید که دستورها پیش از اجرا چاپ می‌شوند.
--no-config
عدم بارگذاری فایل پیکربندی.
--no-print-directory
پیام‌های «ورود به دایرکتوری» نمایش داده نشوند.
--only-packages=PACKAGES
نادیده گرفتن بندهایی (stanza) که به بسته‌ای ارجاع می‌دهند که در PACKAGES نیست. مقدار PACKAGES فهرستی از نام‌های بسته است که با کاما از هم جدا شده‌اند. توجه داشته باشید که این کار تأثیری مشابه با حذف بندهای مربوطه از فایل‌های dune دارد. این سوییچ بیشتر برای انتشار نسخه‌ها در نظر گرفته شده است. در طول توسعه، احتمالاً آنچه می‌خواهید ساخت یک هدف خاص <package>.install است.
-p PACKAGES, --for-release-of-packages=PACKAGES (required)
کوتاه‌نوشتی برای --release --pkg=disabled --only-packages PACKAGE. برای اینکه فقط موارد ضروری هنگام وجود چندین بسته در پروژه ساخته شود و همچنین ساخت‌های تکرارپذیر به دست آید، باید از این گزینه در فایل‌های <package>.opam خود استفاده کنید.
--pkg=VAL
فعال یا غیرفعال کردن مدیریت بسته. رفتار پیش‌فرض بستگی به این دارد که آیا یک دایرکتوری قفل وجود دارد یا خیر.
--profile=VAL (absent DUNE_PROFILE env)
انتخاب نمایه (پروفایل) ساخت، برای مثال dev یا release. مقدار پیش‌فرض dev است.
--promote-install-files[=VAL] (default=true)
ارتقای هر فایل تولیدشده <package>.install به درخت منبع.
--release
قرار دادن dune در یک حالت انتشار (release) تکرارپذیر. کوتاه‌نوشتی برای --root . --ignore-promoted-rules --no-config --profile release --always-show-command-line --promote-install-files --require-dune-project-file --default-target @install. شما باید از این گزینه برای ساخت‌های انتشار استفاده کنید. به عنوان مثال، باید از این گزینه در فایل‌های <package>.opam خود استفاده نمایید. مگر اینکه از قبل از -p استفاده کرده باشید، زیرا -p این گزینه را در بر دارد.
--require-dune-project-file[=VAL] (default=true)
در صورت نبود فایل dune-project ناموفق شو.
--root=DIR (absent DUNE_ROOT env)
استفاده از این دایرکتوری به عنوان ریشه فضای کاری به جای حدس زدن آن. توجه داشته باشید که این گزینه تفسیر هدف‌های داده‌شده در خط فرمان را تغییر نمی‌دهد. این سوییچ فقط برای اسکریپت‌ها در نظر گرفته شده است.
--store-orig-source-dir (absent DUNE_STORE_ORIG_SOURCE_DIR env)
ذخیره مکان اصلی منبع در فراداده‌های dune-package.
--target-exec=TOOLCHAIN=CMD (absent DUNE_TARGET_EXEC env)
دستور پوششی برای اجرای باینری‌های هدف هنگام کامپایل متقاطع. قالب: TOOLCHAIN=CMD (به عنوان مثال، 'windows=wine').
--terminal-persistence=MODE
تغییر نحوه نمایش لاگ نتایج ساخت در کنسول بین بازسازی‌ها در حالت --watch. حالت‌های پشتیبانی‌شده: preserve، clear-on-rebuild، clear-on-rebuild-and-flush-history.
--trace-file=FILE
خروجی داده‌های ردیابی در قالب catapult (سازگار با chrome://tracing).
--verbose
همانند --display verbose
--version
نمایش اطلاعات نسخه.
--watch-exclusions=REGEX
افزودن یک عبارت باقاعده POSIX که دایرکتوری‌های منطبق را از `dune build --watch` مستثنی می‌کند. گزینه --watch-exclusions می‌تواند برای افزودن چندین مورد استثنا تکرار شود. همچنین می‌توان از نقطه-ویرگول به عنوان جداکننده استفاده کرد. اگر هیچ استثنایی ارائه نشود، مجموعه‌ای استاندارد از استثناها استفاده می‌شود؛ اما اگر یک یا چند گزینه --watch-exclusions استفاده شود، هیچ‌یک از استثناهای استاندارد استفاده نمی‌شوند. استثناهای استاندارد عبارتند از: ^_opam /_opam ^_esy /_esy ^\.#.* /\.#.* ~$ ^#[^#]*#$ /#[^#]*#$ ^4913$ /4913$ /.git /.hg :/windows
--workspace=FILE (absent DUNE_WORKSPACE env)
استفاده از این فایل مشخص فضای کاری به جای جستجوی آن.
-x VAL (absent DUNE_CROSS_TARGET env)
کامپایل متقاطع با استفاده از این زنجیره ابزار.

برای دریافت راهنما در مورد یک دستور خاص، از `dune COMMAND --help' استفاده کنید.

دستور dune test با یکی از وضعیت‌های زیر خارج می‌شود:

0
در صورت موفقیت.
1
در صورت بروز خطا.
130
در صورتی که با یک سیگنال متوقف شده باشد.

این متغیرهای محیطی بر اجرای test تأثیر می‌گذارند:

دایرکتوری ساخت مشخص‌شده. در صورت مشخص نشدن، مقدار پیش‌فرض _build است.
فعال یا غیرفعال کردن حافظه پنهان Dune (یکی از مقادیر disabled، enabled-except-user-rules یا enabled). مقدار پیش‌فرض `enabled-except-user-rules' است.
بررسی تکرارپذیری ساخت با اجرای مجدد قواعد انتخاب‌شده به صورت تصادفی و مقایسه نتایج آن‌ها با موارد ذخیره‌شده در حافظه پنهان Dune. نکته: با افزایش احتمال این بررسی‌ها، سرعت ساخت کاهش می‌یابد. احتمال پیش‌فرض صفر است، یعنی هیچ قاعده‌ای بررسی نمی‌شود.
حالت ذخیره‌سازی حافظه پنهان Dune (یکی از مقادیر auto، hardlink یا copy). مقدار پیش‌فرض `hardlink' است.
کامپایل متقاطع با استفاده از این زنجیره ابزار.
چاپ همیشگی لاگ‌های استاندارد هنگام ساخت بسته‌ها.
دستور پوسته برای مقایسه فایل‌ها. برای غیرفعال کردن چاپ تفاوت‌ها، از - استفاده کنید.
غیرفعال کردن تمام قواعد ارتقا (promotion).
فعال‌سازی ابزارسازی با BACKENDS. مقدار BACKENDS فهرستی از نام‌های کتابخانه جداشده با کاما است، که هر یک باید یک بک‌اند ابزارسازی را اعلان کنند.
اجرای حداکثر JOBS دستور به طور هم‌زمان. مقدار JOBS باید یک عدد صحیح مثبت یا auto برای تشخیص خودکار تعداد هسته‌ها (پیش‌فرض) باشد.
نمایه ساخت. در صورت مشخص نشدن dev یا در صورت تنظیم بودن -p مقدار release خواهد بود.
استفاده از این دایرکتوری به عنوان ریشه فضای کاری به جای حدس زدن آن. توجه داشته باشید که این گزینه تفسیر هدف‌های داده‌شده در خط فرمان را تغییر نمی‌دهد. این متغیر تنها برای اسکریپت‌ها در نظر گرفته شده است.
حالت جعبه شنی مورد استفاده به صورت پیش‌فرض. (رجوع کنید به --sandbox)
ذخیره مکان اصلی منبع در فراداده‌های dune-package.
دستور پوششی برای اجرای باینری‌های هدف هنگام کامپایل متقاطع. قالب: TOOLCHAIN=CMD (مانند 'windows=wine').
استفاده از این فایل مشخص فضای کاری به جای جستجوی آن.

گزارش‌های باگ را در https://github.com/ocaml/dune/issues ثبت کنید.

dune(1)

Dune 3.24.2