This commit is contained in:
sylvestre
2023-03-26 02:42:16 +00:00
parent cec37d2ae7
commit f8e2417be5
18 changed files with 139 additions and 29 deletions
+37 -3
View File
@@ -207,6 +207,23 @@
<a href="#207" id="207">207</a>
<a href="#208" id="208">208</a>
<a href="#209" id="209">209</a>
<a href="#210" id="210">210</a>
<a href="#211" id="211">211</a>
<a href="#212" id="212">212</a>
<a href="#213" id="213">213</a>
<a href="#214" id="214">214</a>
<a href="#215" id="215">215</a>
<a href="#216" id="216">216</a>
<a href="#217" id="217">217</a>
<a href="#218" id="218">218</a>
<a href="#219" id="219">219</a>
<a href="#220" id="220">220</a>
<a href="#221" id="221">221</a>
<a href="#222" id="222">222</a>
<a href="#223" id="223">223</a>
<a href="#224" id="224">224</a>
<a href="#225" id="225">225</a>
<a href="#226" id="226">226</a>
</pre><pre class="rust"><code><span class="comment">// * This file is part of the uutils coreutils package.
// *
// * (c) 2020 nicoo &lt;nicoo@debian.org&gt;
@@ -321,7 +338,6 @@
</span><span class="kw">mod </span>tests {
<span class="kw">use super</span>::<span class="kw-2">*</span>;
<span class="kw">use </span><span class="kw">crate</span>::numeric::{traits::DoubleInt, Arithmetic, Montgomery};
<span class="kw">use </span><span class="kw">crate</span>::parametrized_check;
<span class="kw">use </span>quickcheck::quickcheck;
<span class="kw">use </span>std::iter;
<span class="kw">const </span>LARGEST_U64_PRIME: u64 = <span class="number">0xFFFFFFFFFFFFFFC5</span>;
@@ -366,7 +382,16 @@
</span>);
}
}
<span class="macro">parametrized_check!</span>(first_primes);
<span class="attr">#[test]
</span><span class="kw">fn </span>first_primes_u32() {
first_primes::&lt;u32&gt;();
}
<span class="attr">#[test]
</span><span class="kw">fn </span>first_primes_u64() {
first_primes::&lt;u64&gt;();
}
<span class="attr">#[test]
</span><span class="kw">fn </span>one() {
@@ -404,7 +429,16 @@
}
}
}
<span class="macro">parametrized_check!</span>(small_semiprimes);
<span class="attr">#[test]
</span><span class="kw">fn </span>small_semiprimes_u32() {
small_semiprimes::&lt;u32&gt;();
}
<span class="attr">#[test]
</span><span class="kw">fn </span>small_semiprimes_u64() {
small_semiprimes::&lt;u64&gt;();
}
<span class="macro">quickcheck! </span>{
<span class="kw">fn </span>composites(i: u64, j: u64) -&gt; bool {
@@ -77,6 +77,14 @@
<a href="#77" id="77">77</a>
<a href="#78" id="78">78</a>
<a href="#79" id="79">79</a>
<a href="#80" id="80">80</a>
<a href="#81" id="81">81</a>
<a href="#82" id="82">82</a>
<a href="#83" id="83">83</a>
<a href="#84" id="84">84</a>
<a href="#85" id="85">85</a>
<a href="#86" id="86">86</a>
<a href="#87" id="87">87</a>
</pre><pre class="rust"><code><span class="comment">// * This file is part of the uutils coreutils package.
// *
// * (c) 2015 Wiktor Kuropatwa &lt;wiktor.kuropatwa@gmail.com&gt;
@@ -125,7 +133,6 @@
<span class="attr">#[cfg(test)]
</span><span class="kw">mod </span>tests {
<span class="kw">use super</span>::{<span class="kw">super</span>::traits::Int, <span class="kw-2">*</span>};
<span class="kw">use </span><span class="kw">crate</span>::parametrized_check;
<span class="kw">use </span>quickcheck::quickcheck;
<span class="kw">fn </span>small_values&lt;T: Int&gt;() {
@@ -138,7 +145,16 @@
<span class="macro">assert!</span>(test_values.all(|x| x.wrapping_mul(<span class="kw-2">&amp;</span>modular_inverse(x)) == one));
}
<span class="macro">parametrized_check!</span>(small_values);
<span class="attr">#[test]
</span><span class="kw">fn </span>small_values_u32() {
small_values::&lt;u32&gt;();
}
<span class="attr">#[test]
</span><span class="kw">fn </span>small_values_u64() {
small_values::&lt;u64&gt;();
}
<span class="macro">quickcheck! </span>{
<span class="kw">fn </span>random_values_u32(n: u32) -&gt; bool {
+55 -5
View File
@@ -227,6 +227,31 @@
<a href="#227" id="227">227</a>
<a href="#228" id="228">228</a>
<a href="#229" id="229">229</a>
<a href="#230" id="230">230</a>
<a href="#231" id="231">231</a>
<a href="#232" id="232">232</a>
<a href="#233" id="233">233</a>
<a href="#234" id="234">234</a>
<a href="#235" id="235">235</a>
<a href="#236" id="236">236</a>
<a href="#237" id="237">237</a>
<a href="#238" id="238">238</a>
<a href="#239" id="239">239</a>
<a href="#240" id="240">240</a>
<a href="#241" id="241">241</a>
<a href="#242" id="242">242</a>
<a href="#243" id="243">243</a>
<a href="#244" id="244">244</a>
<a href="#245" id="245">245</a>
<a href="#246" id="246">246</a>
<a href="#247" id="247">247</a>
<a href="#248" id="248">248</a>
<a href="#249" id="249">249</a>
<a href="#250" id="250">250</a>
<a href="#251" id="251">251</a>
<a href="#252" id="252">252</a>
<a href="#253" id="253">253</a>
<a href="#254" id="254">254</a>
</pre><pre class="rust"><code><span class="comment">// * This file is part of the uutils coreutils package.
// *
// * (c) 2020 Alex Lyon &lt;arcterus@mail.com&gt;
@@ -411,8 +436,6 @@
<span class="attr">#[cfg(test)]
</span><span class="kw">mod </span>tests {
<span class="kw">use super</span>::<span class="kw-2">*</span>;
<span class="kw">use </span><span class="kw">crate</span>::parametrized_check;
<span class="kw">fn </span>test_add&lt;A: DoubleInt&gt;() {
<span class="kw">for </span>n <span class="kw">in </span><span class="number">0</span>..<span class="number">100 </span>{
<span class="kw">let </span>n = <span class="number">2 </span>* n + <span class="number">1</span>;
@@ -427,7 +450,16 @@
}
}
}
<span class="macro">parametrized_check!</span>(test_add);
<span class="attr">#[test]
</span><span class="kw">fn </span>add_u32() {
test_add::&lt;u32&gt;();
}
<span class="attr">#[test]
</span><span class="kw">fn </span>add_u64() {
test_add::&lt;u64&gt;();
}
<span class="kw">fn </span>test_multiplication&lt;A: DoubleInt&gt;() {
<span class="kw">for </span>n <span class="kw">in </span><span class="number">0</span>..<span class="number">100 </span>{
@@ -442,7 +474,16 @@
}
}
}
<span class="macro">parametrized_check!</span>(test_multiplication);
<span class="attr">#[test]
</span><span class="kw">fn </span>multiplication_u32() {
test_multiplication::&lt;u32&gt;();
}
<span class="attr">#[test]
</span><span class="kw">fn </span>multiplication_u64() {
test_multiplication::&lt;u64&gt;();
}
<span class="kw">fn </span>test_roundtrip&lt;A: DoubleInt&gt;() {
<span class="kw">for </span>n <span class="kw">in </span><span class="number">0</span>..<span class="number">100 </span>{
@@ -454,7 +495,16 @@
}
}
}
<span class="macro">parametrized_check!</span>(test_roundtrip);
<span class="attr">#[test]
</span><span class="kw">fn </span>roundtrip_u32() {
test_roundtrip::&lt;u32&gt;();
}
<span class="attr">#[test]
</span><span class="kw">fn </span>roundtrip_u64() {
test_roundtrip::&lt;u64&gt;();
}
}
</code></pre></div>
</section></main><div id="rustdoc-vars" data-root-path="../../../" data-static-root-path="../../../static.files/" data-current-crate="uu_factor" data-themes="" data-resource-suffix="" data-rustdoc-version="1.68.1 (8460ca823 2023-03-20)" data-search-js="search-98d53477a794af0b.js" data-settings-js="settings-c3c521c753752a1a.js" data-settings-css="settings-08ddfdda51b8ee2e.css" ></div></body></html>
+15 -5
View File
@@ -434,6 +434,11 @@
<a href="#434" id="434">434</a>
<a href="#435" id="435">435</a>
<a href="#436" id="436">436</a>
<a href="#437" id="437">437</a>
<a href="#438" id="438">438</a>
<a href="#439" id="439">439</a>
<a href="#440" id="440">440</a>
<a href="#441" id="441">441</a>
</pre><pre class="rust"><code><span class="comment">// * This file is part of the uutils coreutils package.
// *
// * (c) Chirag B Jadwani &lt;chirag.jadwani@gmail.com&gt;
@@ -446,7 +451,6 @@
<span class="kw">use </span>std::io::{<span class="self">self</span>, stdin, stdout, BufRead, BufReader, BufWriter, Read, Write};
<span class="kw">use </span>std::path::Path;
<span class="kw">use </span>std::str::FromStr;
<span class="kw">use </span>strum_macros::{AsRefStr, EnumString};
<span class="kw">use </span>uucore::display::Quotable;
<span class="kw">use </span>uucore::error::{FromIo, UResult, USimpleError, UUsageError};
<span class="kw">use </span>uucore::format_usage;
@@ -474,8 +478,7 @@
<span class="kw">static </span>ARG_FILES: <span class="kw-2">&amp;</span>str = <span class="string">&quot;files&quot;</span>;
<span class="attr">#[derive(PartialEq, Clone, Copy, AsRefStr, EnumString)]
#[strum(serialize_all = <span class="string">&quot;snake_case&quot;</span>)]
<span class="attr">#[derive(PartialEq, Clone, Copy)]
</span><span class="kw">enum </span>Delimiters {
Append,
Prepend,
@@ -839,8 +842,15 @@
.get_one::&lt;String&gt;(options::ALL_REPEATED)
.or_else(|| matches.get_one::&lt;String&gt;(options::GROUP));
<span class="kw">if let </span><span class="prelude-val">Some</span>(delimiter_arg) = value {
Delimiters::from_str(delimiter_arg).unwrap() <span class="comment">// All possible values for ALL_REPEATED are Delimiters (of type `&amp;str`)
</span>} <span class="kw">else if </span>matches.contains_id(options::GROUP) {
<span class="kw">match </span>delimiter_arg.as_ref() {
<span class="string">&quot;append&quot; </span>=&gt; Delimiters::Append,
<span class="string">&quot;prepend&quot; </span>=&gt; Delimiters::Prepend,
<span class="string">&quot;separate&quot; </span>=&gt; Delimiters::Separate,
<span class="string">&quot;both&quot; </span>=&gt; Delimiters::Both,
<span class="string">&quot;none&quot; </span>=&gt; Delimiters::None,
<span class="kw">_ </span>=&gt; <span class="macro">unreachable!</span>(<span class="string">&quot;Should have been caught by possible values in clap&quot;</span>),
}
} <span class="kw">else if </span>matches.contains_id(options::GROUP) {
Delimiters::Separate
} <span class="kw">else </span>{
Delimiters::None
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long