summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul J. Davis <paul.joseph.davis@gmail.com>2018-01-26 14:31:47 -0600
committerPaul J. Davis <paul.joseph.davis@gmail.com>2018-01-26 14:54:21 -0600
commitd15d0e7dbf4faf16c6fbcd6607de42d0eea7db18 (patch)
treeeaf5d1f7c41c5ebc2f259567736d59c2e663a2d2
parentd35fea2d35db3e33f0feb3b418ca20c47b329977 (diff)
downloadcouchdb-d15d0e7dbf4faf16c6fbcd6607de42d0eea7db18.tar.gz
Allow tests to set config values dynamically
-rw-r--r--test/elixir/test/test_helper.exs22
1 files changed, 13 insertions, 9 deletions
diff --git a/test/elixir/test/test_helper.exs b/test/elixir/test/test_helper.exs
index cb01fc286..9baf20432 100644
--- a/test/elixir/test/test_helper.exs
+++ b/test/elixir/test/test_helper.exs
@@ -66,15 +66,7 @@ defmodule CouchTestCase do
end
def set_config({section, key, value}) do
- resp = Couch.get("/_membership")
- existing = Enum.map(resp.body["all_nodes"], fn node ->
- url = "/_node/#{node}/_config/#{section}/#{key}"
- headers = ["X-Couch-Persist": "false"]
- body = :jiffy.encode(value)
- resp = Couch.put(url, headers: headers, body: body)
- assert resp.status_code == 200
- {node, resp.body}
- end)
+ existing = set_config_raw(section, key, value)
on_exit(fn ->
Enum.each(existing, fn {node, prev_value} ->
if prev_value != "" do
@@ -93,6 +85,18 @@ defmodule CouchTestCase do
end)
end
+ def set_config_raw(section, key, value) do
+ resp = Couch.get("/_membership")
+ Enum.map(resp.body["all_nodes"], fn node ->
+ url = "/_node/#{node}/_config/#{section}/#{key}"
+ headers = ["X-Couch-Persist": "false"]
+ body = :jiffy.encode(value)
+ resp = Couch.put(url, headers: headers, body: body)
+ assert resp.status_code == 200
+ {node, resp.body}
+ end)
+ end
+
def create_db(db_name) do
resp = Couch.put("/#{db_name}")
assert resp.status_code == 201