# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= kyua VERSION= 0.13 KEYWORDS= devel VARIANTS= standard SDESC[standard]= Testing framework for infrastructure software HOMEPAGE= https://github.com/jmmv CONTACT= nobody DOWNLOAD_GROUPS= main SITES[main]= https://github.com/jmmv/kyua/releases/download/kyua-0.13/ DISTFILE[1]= kyua-0.13.tar.gz:main DF_INDEX= 1 SPKGS[standard]= single OPTIONS_AVAILABLE= none OPTIONS_STANDARD= none BUILDRUN_DEPENDS= lutok:primary:standard atf:single:standard USERS= tests GROUPS= rpnobody USERGROUP_SPKG= single USES= lua pkgconfig sqlite LICENSE= BSD3CLAUSE:single LICENSE_FILE= BSD3CLAUSE:{{WRKSRC}}/LICENSE LICENSE_SCHEME= solo FPC_EQUIVALENT= devel/kyua MUST_CONFIGURE= gnu CONFIGURE_ARGS= --with-atf --without-doxygen --docdir={{STD_DOCDIR}} MAKE_ARGS= examplesdir={{STD_EXAMPLESDIR}} post-install: ${MKDIR} ${STAGEDIR}${PREFIX}/etc/kyua/ ${INSTALL_DATA} ${FILESDIR}/kyua.conf \ ${STAGEDIR}${PREFIX}/etc/kyua/kyua.conf.sample ${RM} -r ${STAGEDIR}${STD_DOCDIR} ${RM} -r ${STAGEDIR}${STD_EXAMPLESDIR} [FILE:867:descriptions/desc.single] Kyua is a testing framework for infrastructure software, originally designed to equip BSD-based operating systems with a test suite. This means that Kyua is lightweight and simple, and that Kyua integrates well with various build systems and continuous integration frameworks. Kyua features an expressive test suite definition language, a safe runtime engine for test suites and a powerful report generation engine. Kyua is for both developers and users, from the developer applying a simple fix to a library to the system administrator deploying a new release on a production machine. Kyua is able to execute test programs written with a plethora of testing libraries and languages. The library of choice is ATF, for which Kyua was originally designed, but simple, framework-less test programs and TAP-compliant test programs can also be executed through Kyua. [FILE:95:distinfo] db6e5d341d5cf7e49e50aa361243e19087a00ba33742b0855d2685c0b8e721d6 663776 kyua-0.13.tar.gz [FILE:3296:manifests/plist.single] @sample etc/kyua/kyua.conf.sample bin/kyua share/kyua/misc/ context.html index.html report.css test_result.html share/kyua/store/ migrate_v1_v2.sql migrate_v2_v3.sql schema_v3.sql share/man/man1/ kyua-about.1.gz kyua-config.1.gz kyua-db-exec.1.gz kyua-db-migrate.1.gz kyua-debug.1.gz kyua-help.1.gz kyua-list.1.gz kyua-report-html.1.gz kyua-report-junit.1.gz kyua-report.1.gz kyua-test.1.gz kyua.1.gz share/man/man5/ kyua.conf.5.gz kyuafile.5.gz tests/kyua/Kyuafile tests/kyua/bootstrap/ Kyuafile atf_helpers plain_helpers testsuite tests/kyua/cli/ Kyuafile cmd_about_test cmd_config_test cmd_db_exec_test cmd_debug_test cmd_help_test cmd_list_test cmd_test_test common_test config_test main_test tests/kyua/drivers/ Kyuafile list_tests_helpers list_tests_test report_junit_test scan_results_test tests/kyua/engine/ Kyuafile atf_helpers atf_list_test atf_result_test atf_test config_test exceptions_test filters_test kyuafile_test plain_helpers plain_test requirements_test scanner_test scheduler_test tap_helpers tap_parser_test tap_test tests/kyua/examples/ Kyuafile syntax_test tests/kyua/integration/ Kyuafile cmd_about_test cmd_config_test cmd_db_exec_test cmd_db_migrate_test cmd_debug_test cmd_help_test cmd_list_test cmd_report_html_test cmd_report_junit_test cmd_report_test cmd_test_test global_test tests/kyua/integration/helpers/ bad_test_program bogus_test_cases config dump_env expect_all_pass expect_some_fail interrupts metadata race simple_all_pass simple_some_fail tests/kyua/model/ Kyuafile context_test exceptions_test metadata_test test_case_test test_program_test test_result_test tests/kyua/store/ Kyuafile dbtypes_test exceptions_test layout_test metadata_test migrate_test read_backend_test read_transaction_test schema_inttest schema_v1.sql schema_v2.sql testdata_v1.sql testdata_v2.sql testdata_v3_1.sql testdata_v3_2.sql testdata_v3_3.sql testdata_v3_4.sql transaction_test write_backend_test write_transaction_test tests/kyua/utils/ Kyuafile auto_array_test datetime_test env_test memory_test optional_test passwd_test sanity_test stacktrace_helper stacktrace_test stream_test units_test tests/kyua/utils/cmdline/ Kyuafile base_command_test commands_map_test exceptions_test globals_test options_test parser_test ui_test tests/kyua/utils/config/ Kyuafile exceptions_test keys_test lua_module_test nodes_test parser_test tree_test tests/kyua/utils/format/ Kyuafile containers_test exceptions_test formatter_test tests/kyua/utils/fs/ Kyuafile auto_cleaners_test directory_test exceptions_test lua_module_test operations_test path_test tests/kyua/utils/logging/ Kyuafile macros_test operations_test tests/kyua/utils/process/ Kyuafile child_test deadline_killer_test exceptions_test executor_test fdstream_test helpers isolation_test operations_test status_test systembuf_test tests/kyua/utils/signals/ Kyuafile exceptions_test interrupts_test misc_test programmer_test timer_test tests/kyua/utils/sqlite/ Kyuafile c_gate_test database_test exceptions_test statement_test transaction_test tests/kyua/utils/text/ Kyuafile exceptions_test operations_test regex_test table_test templates_test [FILE:762:patches/patch-utils_datetime.cpp] --- utils/datetime.cpp.orig +++ utils/datetime.cpp @@ -590,11 +590,12 @@ datetime::delta datetime::timestamp::operator-(const datetime::timestamp& other) const { - if ((*this) < other) { - throw std::runtime_error( - F("Cannot subtract %s from %s as it would result in a negative " - "datetime::delta, which are not supported") % other % (*this)); - } + /* + * XXX-BD: gettimeofday isn't necessicarily monotonic so return the + * smallest non-zero delta if time went backwards. + */ + if ((*this) < other) + return datetime::delta::from_microseconds(1); return datetime::delta::from_microseconds(to_microseconds() - other.to_microseconds()); } [FILE:656:patches/patch-utils_datetime__test.cpp] --- utils/datetime_test.cpp.orig 2017-04-08 05:25:26 UTC +++ utils/datetime_test.cpp @@ -532,11 +532,11 @@ ATF_TEST_CASE_BODY(timestamp__subtractio ATF_REQUIRE_EQ(datetime::delta(100, 0), ts3 - ts1); ATF_REQUIRE_EQ(datetime::delta(99, 999988), ts3 - ts2); - ATF_REQUIRE_THROW_RE( - std::runtime_error, - "Cannot subtract 1291970850123456us from 1291970750123468us " - ".*negative datetime::delta.*not supported", - ts2 - ts3); + /* + * NOTE (ngie): behavior change for + * https://github.com/jmmv/kyua/issues/155 . + */ + ATF_REQUIRE_EQ(datetime::delta::from_microseconds(1), ts2 - ts3); } [FILE:371:files/kyua.conf] -- -- System-wide configuration file for kyua(1). See kyua.conf(5) for details -- on the syntax. -- syntax(2) -- User to drop privileges to when invoking kyua(1) as root and a test case -- requests to be run with non-root permissions. unprivileged_user = 'tests' -- An example to set a configuration property specific to FreeBSD. --test_suites.FreeBSD.fstype = 'ffs'