From nobody Sun Feb 2 19:53:49 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4YmL0s40kMz5mqYr; Sun, 02 Feb 2025 19:53:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4YmL0s3L1Tz3QnN; Sun, 02 Feb 2025 19:53:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1738526029; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oleLuKBsHSZYNgps2xmDdEcBEr9njVcfAr3Dfin/BqU=; b=u9J70hset8dBMCj2D7+dXRAQ4bIgTmbIJyW/GYq2aU1sm7aiebz6lP6RNj2iiPmph0AIaM +uhOCmfvjqBmXhbPXiMcB+c525cTesnb163lgimGVF6NBF/IEeqByZ1+B338BQEwEEoCa+ 6La3jw3GIn7kgMC2I7ZlVmKubVH3AETgFgKUsASV2/M33zWvR9gAxvpWNa1q1JehTLSiXj guNKjBzFzgK2jz7T4hyPu+/zs/FC7EtDXhvYftWzz0hLGoUJiECs5Ap5YGnp9+Ot8VJ/nf 4SU2A0kNPXCaWtnoji++Vy1+LTVI7nyHyhWi4zOumcbPLRWYlLRLl1aQUFs0qQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1738526029; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oleLuKBsHSZYNgps2xmDdEcBEr9njVcfAr3Dfin/BqU=; b=Vc4Qnom93BCD26tJrbWa5Kc6034/kACRpK1Aa10kR0ZYX3ESl//wW69EbkxWGB2pFfdktw CFAEpsBNca9cRKdslR4pnBrF+8BhH+7FI9oG83HzVdoVUOPHEzEGArtMApfcuH7wp8WDL2 3mQ6bvny0rnzzWB+iTYfDjKDXnEQquQpA3K2zEvhpI1rmLTmXwa+ZDqb7Zf38aaYS9zoEL yvKNdKTxcDeKo21L/q47kdOEK+masELAVQBlPTVNo/V7Qc75yn1J4E87KqA0is3ujjrSpM cEDTatGxLQbYnICPghP2oS05E0Qs4RYI5HJgrVgL9afisIWq+0ASKPp/3Tde/w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1738526029; a=rsa-sha256; cv=none; b=gRqCEXE66a+B9D4ovYeu/OwyV7FH/gbrXRQiN16Aawi62lJJil7ygewjqniGWn6q+2A//t 5Trsvon63Py0lCIv8JpI9Ww4tj3U5irRcxtxeM0l9zjAgTCEro5V0+p49mfL8Tq7gv6e92 c0bSOZOlVLrz8CSJhTBWZrKm3MfaBkaFXaJmQ6bZts2/hpzdRYctGya48awWqrE35uxPin CL4Hmhs3ojuFyqGuZ2K8tw3J0jySWDyR6OHfDmi3tlw4y5WR4NhWaGLXSr2CzXuW+6e9px PQdJYzGjlISAKlXuzpRqgOhWcC/fModAqIWOnezF4YYr8TCZet0NexUvhEQmtQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4YmL0s2pDGz13P6; Sun, 02 Feb 2025 19:53:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 512JrnmQ048725; Sun, 2 Feb 2025 19:53:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 512Jrn3Y048722; Sun, 2 Feb 2025 19:53:49 GMT (envelope-from git) Date: Sun, 2 Feb 2025 19:53:49 GMT Message-Id: <202502021953.512Jrn3Y048722@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Igor Ostapenko Subject: git: 6befd3511105 - main - kyua: Support require.diskspace ATF metadata List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: igoro X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6befd3511105a17decdafbf9d3f55324c83aaea1 Auto-Submitted: auto-generated The branch main has been updated by igoro: URL: https://cgit.FreeBSD.org/src/commit/?id=6befd3511105a17decdafbf9d3f55324c83aaea1 commit 6befd3511105a17decdafbf9d3f55324c83aaea1 Author: Igor Ostapenko AuthorDate: 2025-02-02 19:14:55 +0000 Commit: Igor Ostapenko CommitDate: 2025-02-02 19:14:55 +0000 kyua: Support require.diskspace ATF metadata Reviewed by: ngie MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D48333 --- contrib/kyua/doc/kyuafile.5.in | 3 ++- contrib/kyua/engine/atf_list.cpp | 2 ++ contrib/kyua/engine/atf_list_test.cpp | 23 +++++++++++++++++++++++ 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/contrib/kyua/doc/kyuafile.5.in b/contrib/kyua/doc/kyuafile.5.in index 4fe5f12fd9b1..ae1e4fe40e32 100644 --- a/contrib/kyua/doc/kyuafile.5.in +++ b/contrib/kyua/doc/kyuafile.5.in @@ -282,7 +282,8 @@ ATF: .It Va required_disk_space Amount of available disk space that the test needs to run successfully. .Pp -ATF: not mapped +ATF: +.Va require.diskspace .It Va required_files Whitespace-separated list of paths that the test requires to exist before it can run. diff --git a/contrib/kyua/engine/atf_list.cpp b/contrib/kyua/engine/atf_list.cpp index c4f348ada2f6..f6ec20d7709a 100644 --- a/contrib/kyua/engine/atf_list.cpp +++ b/contrib/kyua/engine/atf_list.cpp @@ -129,6 +129,8 @@ engine::parse_atf_metadata(const model::properties_map& props) mdbuilder.set_string("is_exclusive", value); } else if (name == "require.config") { mdbuilder.set_string("required_configs", value); + } else if (name == "require.diskspace") { + mdbuilder.set_string("required_disk_space", value); } else if (name == "require.files") { mdbuilder.set_string("required_files", value); } else if (name == "require.machine") { diff --git a/contrib/kyua/engine/atf_list_test.cpp b/contrib/kyua/engine/atf_list_test.cpp index 7648ee2c6a80..f3a36ab864f7 100644 --- a/contrib/kyua/engine/atf_list_test.cpp +++ b/contrib/kyua/engine/atf_list_test.cpp @@ -67,6 +67,7 @@ ATF_TEST_CASE_BODY(parse_atf_metadata__override_all) properties["is.exclusive"] = "true"; properties["require.arch"] = "i386 x86_64"; properties["require.config"] = "var1 var2 var3"; + properties["require.diskspace"] = "10g"; properties["require.files"] = "/file1 /dir/file2"; properties["require.machine"] = "amd64"; properties["require.memory"] = "1m"; @@ -95,6 +96,7 @@ ATF_TEST_CASE_BODY(parse_atf_metadata__override_all) .set_description("Some text") .set_has_cleanup(true) .set_is_exclusive(true) + .set_required_disk_space(units::bytes::parse("10g")) .set_required_memory(units::bytes::parse("1m")) .set_required_user("root") .set_timeout(datetime::delta(123, 0)) @@ -293,6 +295,26 @@ ATF_TEST_CASE_BODY(parse_atf_list__is_exclusive_support) } +ATF_TEST_CASE_WITHOUT_HEAD(parse_atf_list__disk_space_support); +ATF_TEST_CASE_BODY(parse_atf_list__disk_space_support) +{ + const std::string text = + "Content-Type: application/X-atf-tp; version=\"1\"\n" + "\n" + "ident: first\n" + "require.diskspace: 123M\n"; + std::istringstream input(text); + const model::test_cases_map tests = engine::parse_atf_list(input); + + const model::test_cases_map exp_tests = model::test_cases_map_builder() + .add("first", model::metadata_builder() + .set_required_disk_space(units::bytes::parse("123M")) + .build()) + .build(); + ATF_REQUIRE_EQ(exp_tests, tests); +} + + ATF_INIT_TEST_CASES(tcs) { ATF_ADD_TEST_CASE(tcs, parse_atf_metadata__defaults); @@ -308,4 +330,5 @@ ATF_INIT_TEST_CASES(tcs) ATF_ADD_TEST_CASE(tcs, parse_atf_list__one_test_case_invalid_properties); ATF_ADD_TEST_CASE(tcs, parse_atf_list__many_test_cases); ATF_ADD_TEST_CASE(tcs, parse_atf_list__is_exclusive_support); + ATF_ADD_TEST_CASE(tcs, parse_atf_list__disk_space_support); }