Sharp.Augeas/Sharp.Augeas.Test/lens/tests/test_modprobe.aug

148 lines
4.1 KiB
Plaintext
Raw Normal View History

2022-11-08 20:57:02 +03:00
module Test_modprobe =
(* Based on 04config.sh from module-init-tools *)
let conf = "# Various aliases
alias alias_to_foo foo
alias alias_to_bar bar
alias alias_to_export_dep-$BITNESS export_dep-$BITNESS
# Various options, including options to aliases.
options alias_to_export_dep-$BITNESS I am alias to export_dep
options alias_to_noexport_nodep-$BITNESS_with_tabbed_options index=0 id=\"Thinkpad\" isapnp=0 \\
\tport=0x530 cport=0x538 fm_port=0x388 \\
\tmpu_port=-1 mpu_irq=-1 \\
\tirq=9 dma1=1 dma2=3 \\
\tenable=1 isapnp=0
# Blacklist
blacklist watchdog_drivers \t
# Install commands
install bar echo Installing bar
install foo echo Installing foo
install export_nodep-$BITNESS echo Installing export_nodep
# Remove commands
remove bar echo Removing bar
remove foo echo Removing foo
remove export_nodep-$BITNESS echo Removing export_nodep
# Softdep
softdep uhci-hcd post: foo
softdep uhci-hcd pre: ehci-hcd foo
softdep uhci-hcd pre: ehci-hcd foo post: foo
"
test Modprobe.lns get conf =
{ "#comment" = "Various aliases" }
{ "alias" = "alias_to_foo"
{ "modulename" = "foo" }
}
{ "alias" = "alias_to_bar"
{ "modulename" = "bar" }
}
{ "alias" = "alias_to_export_dep-$BITNESS"
{ "modulename" = "export_dep-$BITNESS" }
}
{ }
{ "#comment" = "Various options, including options to aliases." }
{ "options" = "alias_to_export_dep-$BITNESS"
{ "I" }
{ "am" }
{ "alias" }
{ "to" }
{ "export_dep" }
}
{ "options" = "alias_to_noexport_nodep-$BITNESS_with_tabbed_options"
{ "index" = "0" }
{ "id" = "\"Thinkpad\"" }
{ "isapnp" = "0" }
{ "port" = "0x530" }
{ "cport" = "0x538" }
{ "fm_port" = "0x388" }
{ "mpu_port" = "-1" }
{ "mpu_irq" = "-1" }
{ "irq" = "9" }
{ "dma1" = "1" }
{ "dma2" = "3" }
{ "enable" = "1" }
{ "isapnp" = "0" }
}
{ }
{ "#comment" = "Blacklist" }
{ "blacklist" = "watchdog_drivers" }
{ }
{ "#comment" = "Install commands" }
{ "install" = "bar"
{ "command" = "echo Installing bar" }
}
{ "install" = "foo"
{ "command" = "echo Installing foo" }
}
{ "install" = "export_nodep-$BITNESS"
{ "command" = "echo Installing export_nodep" }
}
{ }
{ "#comment" = "Remove commands" }
{ "remove" = "bar"
{ "command" = "echo Removing bar" }
}
{ "remove" = "foo"
{ "command" = "echo Removing foo" }
}
{ "remove" = "export_nodep-$BITNESS"
{ "command" = "echo Removing export_nodep" }
}
{ }
{ "#comment" = "Softdep" }
{ "softdep" = "uhci-hcd"
{ "post" = "foo" }
}
{ "softdep" = "uhci-hcd"
{ "pre" = "ehci-hcd" }
{ "pre" = "foo" }
}
{ "softdep" = "uhci-hcd"
{ "pre" = "ehci-hcd" }
{ "pre" = "foo" }
{ "post" = "foo" }
}
(* eol-comments *)
test Modprobe.lns get "blacklist brokenmodule # never worked\n" =
{ "blacklist" = "brokenmodule"
{ "#comment" = "never worked" } }
(* Ticket 108 *)
let options_space_quote = "options name attr1=\"val\" attr2=\"val2 val3\"\n"
test Modprobe.entry get options_space_quote =
{ "options" = "name"
{ "attr1" = "\"val\"" }
{ "attr2" = "\"val2 val3\"" }
}
(* Allow spaces around the '=', BZ 826752 *)
test Modprobe.entry get "options ipv6 disable = 1\n" =
{ "options" = "ipv6"
{ "disable" = "1" } }
(* Support multiline split commands, Ubuntu bug #1054306 *)
test Modprobe.lns get "# /etc/modprobe.d/iwlwifi.conf
# iwlwifi will dyamically load either iwldvm or iwlmvm depending on the
# microcode file installed on the system. When removing iwlwifi, first
# remove the iwl?vm module and then iwlwifi.
remove iwlwifi \
(/sbin/lsmod | grep -o -e ^iwlmvm -e ^iwldvm -e ^iwlwifi | xargs /sbin/rmmod) \
&& /sbin/modprobe -r mac80211\n" =
{ "#comment" = "/etc/modprobe.d/iwlwifi.conf" }
{ "#comment" = "iwlwifi will dyamically load either iwldvm or iwlmvm depending on the" }
{ "#comment" = "microcode file installed on the system. When removing iwlwifi, first" }
{ "#comment" = "remove the iwl?vm module and then iwlwifi." }
{ "remove" = "iwlwifi"
{ "command" = "(/sbin/lsmod | grep -o -e ^iwlmvm -e ^iwldvm -e ^iwlwifi | xargs /sbin/rmmod) \\\n&& /sbin/modprobe -r mac80211" }
}