diff options
author | Klaus Aehlig <klaus.aehlig@huawei.com> | 2024-06-27 12:25:35 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-27 12:25:35 +0200 |
commit | 05b2d6fc51146fe07340a58bc87fbbd99e788143 (patch) | |
tree | 2c607815866fdb7887dc5486255d2a7729f23578 /test/rust/cargo | |
parent | 7dc9a7b9107b2607e9870d7fc92fb2d40505f7ef (diff) | |
parent | c6b35f8f2e83621b4e53ab999e5b5bf146a73aa0 (diff) | |
download | hello-nix-05b2d6fc51146fe07340a58bc87fbbd99e788143.tar.gz |
Merge pull request #3 from aehlig/cargo-example
Add example on how to use cargo
Diffstat (limited to 'test/rust/cargo')
-rw-r--r-- | test/rust/cargo/TARGETS | 8 | ||||
-rw-r--r-- | test/rust/cargo/circle/TARGETS | 13 | ||||
-rw-r--r-- | test/rust/cargo/circle/test_circle_sampling.sh | 8 | ||||
-rw-r--r-- | test/rust/cargo/circle/verify.py | 16 |
4 files changed, 45 insertions, 0 deletions
diff --git a/test/rust/cargo/TARGETS b/test/rust/cargo/TARGETS new file mode 100644 index 0000000..1552a32 --- /dev/null +++ b/test/rust/cargo/TARGETS @@ -0,0 +1,8 @@ +{ "": + { "type": "install" + , "tainted": ["test"] + , "dirs": + [ [["./", "circle", ""], "circle"] + ] + } +} diff --git a/test/rust/cargo/circle/TARGETS b/test/rust/cargo/circle/TARGETS new file mode 100644 index 0000000..565bb37 --- /dev/null +++ b/test/rust/cargo/circle/TARGETS @@ -0,0 +1,13 @@ +{ "": {"type": "install", "tainted": ["test"], "deps": ["test-sampling"]} +, "test-sampling": + { "type": ["@", "rules", "shell/test", "script"] + , "name": ["sampling"] + , "test": ["test_circle_sampling.sh"] + , "deps": ["sample", "verify.py"] + , "keep": ["sampled"] + } +, "sample": + { "type": "install" + , "files": {"bin/sample": ["@", "cargo/circle", "", "circle_sampling"]} + } +} diff --git a/test/rust/cargo/circle/test_circle_sampling.sh b/test/rust/cargo/circle/test_circle_sampling.sh new file mode 100644 index 0000000..c22109a --- /dev/null +++ b/test/rust/cargo/circle/test_circle_sampling.sh @@ -0,0 +1,8 @@ +set -e + +for _ in `seq 1 100` +do + ./bin/sample >> sampled +done + +python3 verify.py sampled diff --git a/test/rust/cargo/circle/verify.py b/test/rust/cargo/circle/verify.py new file mode 100644 index 0000000..09dccee --- /dev/null +++ b/test/rust/cargo/circle/verify.py @@ -0,0 +1,16 @@ +#!/usr/bin/env python3 + +import math +import sys + +with open(sys.argv[1]) as f: + samples = f.read() + +for line in samples.splitlines(): + xs, ys = line.split() + x = int(xs) + y = int(ys) + radius = math.sqrt(x*x + y*y) + print ("(%+3d,%+3d) -> %4.1f" % (x,y,radius)) + if radius > 100.0: + sys.exit(1) |