Emery Hemingway
55c093e0c5
Update Nixpkgs to use the updateAutotoolsGnuConfigScript hook everywhere for Genode target platforms. Tweak Coreutils and Bash to compile, make some tests.
100 lines
4.0 KiB
Plaintext
100 lines
4.0 KiB
Plaintext
-- SPDX-License-Identifier: CC0-1.0
|
|
|
|
let Test = ./test.dhall ? env:DHALL_GENODE_TEST
|
|
|
|
let Genode = Test.Genode
|
|
|
|
let Prelude = Genode.Prelude
|
|
|
|
let XML = Prelude.XML
|
|
|
|
let Child = Genode.Init.Child
|
|
|
|
let toChild =
|
|
λ(binary : Text)
|
|
→ λ(args : List Text)
|
|
→ { mapKey = binary
|
|
, mapValue =
|
|
Child.flat
|
|
Child.Attributes::{
|
|
, binary = binary
|
|
, exitPropagate = True
|
|
, resources = Genode.Init.Resources::{
|
|
, caps = 256
|
|
, ram = Genode.units.MiB 4
|
|
}
|
|
, config = Genode.Init.Config::{
|
|
, content =
|
|
[ Prelude.XML.text
|
|
''
|
|
<libc stdin="/dev/null" stdout="/dev/log" stderr="/dev/log" rtc="/dev/rtc"/>
|
|
<vfs>
|
|
<dir name="dev"> <log/> <null/> <rtc/> </dir>
|
|
<dir name="testdir">
|
|
<inline name="testfile">
|
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
|
|
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad
|
|
minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip
|
|
ex ea commodo consequat. Duis aute irure dolor in reprehenderit in
|
|
voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur
|
|
sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt
|
|
mollit anim id est laborum.
|
|
|
|
Curabitur pretium tincidunt lacus. Nulla gravida orci a odio. Nullam
|
|
varius, turpis et commodo pharetra, est eros bibendum elit, nec luctus
|
|
magna felis sollicitudin mauris. Integer in mauris eu nibh euismod
|
|
gravida. Duis ac tellus et risus vulputate vehicula. Donec lobortis
|
|
risus a elit. Etiam tempor. Ut ullamcorper, ligula eu tempor congue,
|
|
eros est euismod turpis, id tincidunt sapien risus a quam. Maecenas
|
|
fermentum consequat mi. Donec fermentum. Pellentesque malesuada nulla a
|
|
mi. Duis sapien sem, aliquet nec, commodo eget, consequat quis, neque.
|
|
Aliquam faucibus, elit ut dictum aliquet, felis nisl adipiscing sapien,
|
|
sed malesuada diam lacus eget erat. Cras mollis scelerisque nunc. Nullam
|
|
arcu. Aliquam consequat. Curabitur augue lorem, dapibus quis, laoreet
|
|
et, pretium ac, nisi. Aenean magna nisl, mollis quis, molestie eu,
|
|
feugiat in, orci. In hac habitasse platea dictumst.
|
|
</inline>
|
|
</dir>
|
|
<dir name="tmp"><ram/></dir>
|
|
</vfs>
|
|
''
|
|
]
|
|
# Prelude.List.map
|
|
Text
|
|
XML.Type
|
|
( λ(x : Text)
|
|
→ XML.leaf
|
|
{ name = "arg", attributes = toMap { value = x } }
|
|
)
|
|
([ binary ] # args)
|
|
}
|
|
}
|
|
}
|
|
|
|
let f = λ(binary : Text) → toChild binary ([] : List Text)
|
|
|
|
let g = toChild
|
|
|
|
in Test::{
|
|
, children =
|
|
[ g "hello" [ "--version" ]
|
|
, g "b2sum" [ "testdir/testfile" ]
|
|
, f "date"
|
|
, f "dir"
|
|
, f "env"
|
|
, g "factor" [ "1337" ]
|
|
, g "head" [ "-n", "4", "testdir/testfile" ]
|
|
, f "id"
|
|
, g "ln" [ "-sv", "testdir/testfile", "tmp/testfile" ]
|
|
, g "ls" [ "-l", "-a", "-R" ]
|
|
, f "mktemp"
|
|
, f "mktemp"
|
|
, f "mktemp"
|
|
, f "pwd"
|
|
, g "seq" [ "3" ]
|
|
, g "tail" [ "-n", "4", "testdir/testfile" ]
|
|
, g "wc" [ "testdir/testfile" ]
|
|
, f "whoami"
|
|
]
|
|
}
|