From: Roy7Kim Date: Thu, 4 May 2023 07:01:20 +0000 (+0900) Subject: Add unittest X-Git-Tag: accepted/tizen/rust/20231016.022154^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a971bbabbdebdbc75f131bf9811a389dba9580c6;p=platform%2Fupstream%2Frust-url.git Add unittest [ 50s] + for unit_test in '${unit_test_list}' [ 50s] + ./unit [ 51s] [ 51s] running 55 tests [ 51s] test append_empty_segment_then_mutate ... ok [ 51s] test append_trailing_slash ... ok [ 51s] test extend_query_pairs_then_mutate ... ok [ 51s] test form_urlencoded_encoding_override ... ok [ 51s] test from_str ... ok [ 51s] test issue_124 ... ok [ 51s] test issue_241 ... ok [ 51s] test host_serialization ... ok [ 51s] test issue_61 ... ok [ 51s] test issue_197 ... ok [ 51s] test new_directory_paths ... ok [ 51s] test new_file_paths ... ok [ 51s] test new_path_bad_utf8 ... ok [ 51s] test host ... ok [ 51s] test new_path_windows_fun ... ok [ 51s] test no_panic ... ok [ 51s] test parse_with_params ... ok [ 51s] test path_backslash_fun ... ok [ 51s] test pop_if_empty_in_bounds ... ok [ 51s] test size ... ok [ 51s] test test_domain ... ok [ 51s] test test_domain_encoding_quirks ... ok [ 51s] test test_equality ... ok [ 51s] test test_form_serialize ... ok [ 51s] test test_fragment ... ok [ 51s] test test_form_urlencoded ... ok [ 51s] test test_idna ... ok [ 51s] test test_leading_dots ... ok [ 51s] test test_no_base_url ... ok [ 51s] test test_non_special_path ... ok [ 51s] test test_make_relative ... ok [ 51s] test test_non_special_path2 ... ok [ 51s] test test_non_special_path3 ... ok [ 51s] test test_options_reuse ... ok [ 51s] test test_origin_blob_equality ... ok [ 51s] test test_origin_opaque ... ok [ 51s] test test_origin_hash ... ok [ 51s] test test_origin_unicode_serialization ... ok [ 51s] test test_query ... ok [ 51s] test test_relative ... ok [ 51s] test test_relative_empty ... ok [ 51s] test test_serialization ... ok [ 51s] test test_set_empty_host ... ok [ 51s] test test_set_empty_hostname ... ok [ 51s] test test_set_href ... ok [ 51s] test test_set_host ... ok [ 51s] test test_set_ip_host ... ok [ 51s] test test_set_scheme_to_file_with_host ... ok [ 51s] test test_slicing ... ok [ 51s] test test_syntax_violation_callback ... ok [ 51s] test test_syntax_violation_callback_lifetimes ... ok [ 51s] test test_syntax_violation_callback_types ... ok [ 51s] test test_windows_unc_path ... ok [ 51s] test test_url_from_file_path ... ok [ 51s] test test_socket_addrs ... ok [ 51s] [ 51s] test result: ok. 55 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [ 51s] [ 51s] + for unit_test in '${unit_test_list}' [ 51s] + ./data [ 51s] [ 51s] running 2 tests [ 51s] test setters_tests ... ok [ 51s] test urltestdata ... ok [ 51s] [ 51s] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [ 51s] [ 51s] + for unit_test in '${unit_test_list}' [ 51s] + ./debugger_visualizer [ 51s] [ 51s] running 1 test [ 51s] test test_url_visualizer__cdb ... ignored, test only runs on windows platforms. [ 51s] [ 51s] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s --- diff --git a/packaging/rust-url.spec b/packaging/rust-url.spec index 7e557aa..cdd4c1f 100644 --- a/packaging/rust-url.spec +++ b/packaging/rust-url.spec @@ -32,10 +32,12 @@ Requires: rust-percent-encoding # ========================================================== # dev-dependencies # ========================================================== +%if 0%{?run_tests} # BuildRequires: rust-bencher -# BuildRequires: rust-debugger_test -# BuildRequires: rust-debugger_test_parser -# BuildRequires: rust-serde_json +BuildRequires: rust-debugger_test +BuildRequires: rust-debugger_test_parser +BuildRequires: rust-serde_json +%endif %description @@ -65,6 +67,31 @@ cp %{SOURCE1} . install -d -m 0755 %{buildroot}%{_rust_dylibdir} install -m 0644 lib%{real_crate_name}.so %{buildroot}/%{_rust_dylibdir}/lib%{real_crate_name}.so +%check +%if 0%{?run_tests} + +export unit_test_list="unit data debugger_visualizer" +for unit_test in ${unit_test_list} +do +%{rustc_std_build} --test --crate-type=dylib \ + --crate-name=${unit_test} \ + %{?rustc_edition:--edition=%{rustc_edition}} \ + --extern %{real_crate_name}=./lib%{real_crate_name}.so \ + --extern idna=%{_rust_dylibdir}/libidna.so \ + --extern form_urlencoded=%{_rust_dylibdir}/libform_urlencoded.so \ + --extern percent_encoding=%{_rust_dylibdir}/libpercent_encoding.so \ + %rust_dylib_extern serde_json \ + %rust_dylib_extern debugger_test \ + %rust_dylib_extern debugger_test_parser \ + ./tests/${unit_test}.rs +done + +for unit_test in ${unit_test_list} +do +./${unit_test} +done +%endif + %clean %post -p /sbin/ldconfig