aboutsummaryrefslogtreecommitdiff
path: root/src/integration/tests.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/integration/tests.rs')
-rw-r--r--src/integration/tests.rs77
1 files changed, 77 insertions, 0 deletions
diff --git a/src/integration/tests.rs b/src/integration/tests.rs
index 41a4e027..eb310637 100644
--- a/src/integration/tests.rs
+++ b/src/integration/tests.rs
@@ -2704,6 +2704,59 @@ fn install_hermes_converts_flow_plugin_list_to_block_list() {
}
#[test]
+fn install_hermes_converts_inline_enabled_list_to_block_list() {
+ let config = update_hermes_enabled_plugin("plugins:\n enabled: [example-plugin]\n", true);
+ assert_eq!(
+ config,
+ "plugins:\n enabled:\n - herdr-agent-state\n - example-plugin\n"
+ );
+}
+
+#[test]
+fn install_hermes_preserves_quoted_inline_enabled_items() {
+ let config =
+ update_hermes_enabled_plugin("plugins:\n enabled: [\"null\", 'foo: bar']\n", true);
+ assert_eq!(
+ config,
+ "plugins:\n enabled:\n - herdr-agent-state\n - \"null\"\n - 'foo: bar'\n"
+ );
+}
+
+#[test]
+fn install_hermes_preserves_inline_enabled_comment() {
+ let config = update_hermes_enabled_plugin(
+ "plugins:\n enabled: [example-plugin] # managed locally\n",
+ true,
+ );
+ assert_eq!(
+ config,
+ "plugins:\n enabled: # managed locally\n - herdr-agent-state\n - example-plugin\n"
+ );
+}
+
+#[test]
+fn install_hermes_preserves_inline_plugins_comment() {
+ let config =
+ update_hermes_enabled_plugin("plugins: [platforms/discord] # managed locally\n", true);
+ assert_eq!(
+ config,
+ "plugins: # managed locally\n - herdr-agent-state\n - platforms/discord\n"
+ );
+}
+
+#[test]
+fn install_hermes_is_idempotent_for_inline_enabled_list_entry() {
+ let config = update_hermes_enabled_plugin(
+ "plugins:\n enabled: [herdr-agent-state, example-plugin]\n",
+ true,
+ );
+ assert_eq!(
+ config,
+ "plugins:\n enabled: [herdr-agent-state, example-plugin]\n"
+ );
+}
+
+#[test]
fn install_hermes_is_idempotent_for_quoted_flat_plugin_entry() {
let _lock = integration_env_lock();
let base = unique_base();
@@ -2825,6 +2878,30 @@ fn uninstall_hermes_removes_flow_plugin_list_entry() {
}
#[test]
+fn uninstall_hermes_removes_inline_enabled_list_entry() {
+ let config = update_hermes_enabled_plugin(
+ "plugins:\n enabled: [example-plugin, herdr-agent-state]\n",
+ false,
+ );
+ assert_eq!(config, "plugins:\n enabled:\n - example-plugin\n");
+}
+
+#[test]
+fn uninstall_hermes_preserves_quoted_inline_enabled_items() {
+ let config = update_hermes_enabled_plugin(
+ "plugins:\n enabled: ['foo: bar', herdr-agent-state]\n",
+ false,
+ );
+ assert_eq!(config, "plugins:\n enabled:\n - 'foo: bar'\n");
+}
+
+#[test]
+fn uninstall_hermes_converts_single_inline_enabled_entry_to_empty_list() {
+ let config = update_hermes_enabled_plugin("plugins:\n enabled: [herdr-agent-state]\n", false);
+ assert_eq!(config, "plugins:\n enabled: []\n");
+}
+
+#[test]
fn uninstall_hermes_removes_commented_flat_plugin_entry() {
let _lock = integration_env_lock();
let base = unique_base();