You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by ja...@apache.org on 2023/02/16 04:17:57 UTC

[couchdb] branch main updated: Move elixir search tests to be with other elixir tests

This is an automated email from the ASF dual-hosted git repository.

jaydoane pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/couchdb.git


The following commit(s) were added to refs/heads/main by this push:
     new 395c08302 Move elixir search tests to be with other elixir tests
395c08302 is described below

commit 395c083026f9735a2a34cda3012151ef94466136
Author: Jay Doane <ja...@apache.org>
AuthorDate: Tue Feb 14 14:51:20 2023 -0800

    Move elixir search tests to be with other elixir tests
    
    Now that dreyfus is integrated into CouchDB, its elixir tests can be
    moved to be with the other elixir integration tests. As a bonus,
    remove some unnecessary configuration.
---
 Makefile                                           | 16 ++++-------
 Makefile.win                                       | 18 +++++-------
 src/dreyfus/test/elixir/mix.exs                    | 30 --------------------
 src/dreyfus/test/elixir/mix.lock                   |  5 ----
 .../test/elixir/test/config/test-config.ini        |  2 --
 src/dreyfus/test/elixir/test/test_helper.exs       |  6 ----
 test/elixir/test/config/search.elixir              | 32 ++++++++++++++++++++++
 test/elixir/test/config/test-config.ini            |  3 ++
 .../elixir/test/partition_search_test.exs          |  0
 .../test => test}/elixir/test/search_test.exs      |  0
 10 files changed, 48 insertions(+), 64 deletions(-)

diff --git a/Makefile b/Makefile
index cdaaeadad..0c5671d99 100644
--- a/Makefile
+++ b/Makefile
@@ -18,7 +18,6 @@ include version.mk
 
 REBAR?=$(shell echo `pwd`/bin/rebar)
 ERLFMT?=$(shell echo `pwd`/bin/erlfmt)
-ROOT=$(shell pwd)
 
 # Handle the following scenarios:
 #   1. When building from a tarball, use version.mk.
@@ -271,16 +270,13 @@ elixir-suite: elixir-init devclean
 		--erlang-config rel/files/eunit.config \
 		--no-eval 'mix test --trace --include test/elixir/test/config/suite.elixir --exclude test/elixir/test/config/skip.elixir'
 
-src/dreyfus/test/elixir/deps:
-	@cd src/dreyfus/test/elixir && mix deps.get
-
-.PHONY: dreyfus-test
-# target: dreyfus-test - Run Dreyfus tests, requires a running Clouseau instance
-dreyfus-test: export MIX_ENV=integration
-dreyfus-test: elixir-init devclean src/dreyfus/test/elixir/deps
-	@cd src/dreyfus/test/elixir && $(ROOT)/dev/run -n 1 -q -a adm:pass \
+.PHONY: elixir-search
+# target: elixir-search - Run search tests, requires a running Clouseau instance
+elixir-search: export MIX_ENV=integration
+elixir-search: elixir-init devclean
+	@dev/run -n 1 -q -a adm:pass \
 		--locald-config test/config/test-config.ini \
-		--no-eval 'mix test --trace $(EXUNIT_OPTS)'
+		--no-eval 'mix test --trace --include test/elixir/test/config/search.elixir'
 
 .PHONY: elixir-source-checks
 elixir-source-checks: export MIX_ENV=integration
diff --git a/Makefile.win b/Makefile.win
index 4432276ad..08b373286 100644
--- a/Makefile.win
+++ b/Makefile.win
@@ -22,7 +22,6 @@ PYTHON=python.exe
 ERLFMT?=$(CURDIR)\bin\erlfmt.cmd
 MAKE=make -f Makefile.win
 # REBAR?=$(shell where rebar.cmd)
-ROOT=$(CURDIR)
 
 # Handle the following scenarios:
 #   1. When building from a tarball, use version.mk.
@@ -242,16 +241,13 @@ elixir-suite: elixir-init elixir-check-formatted elixir-credo devclean
 		--erlang-config rel/files/eunit.config \
 		--no-eval 'mix test --trace --include test\elixir\test\config\suite.elixir --exclude test\elixir\test\config\skip.elixir'
 
-src\dreyfus\test\elixir\deps:
-	@cd src\dreyfus\test\elixir && mix deps.get
-
-.PHONY: dreyfus-test
-# target: dreyfus-test - Run Dreyfus tests, requires a running Clouseau instance
-dreyfus-test: export MIX_ENV=integration
-dreyfus-test: elixir-init devclean src\dreyfus\test\elixir\deps
-	@cd src\dreyfus\test\elixir && $(ROOT)\dev\run -n 1 -q -a adm:pass \
-		--locald-config test\config\test-config.ini \
-		--no-eval 'mix test --trace $(EXUNIT_OPTS)'
+.PHONY: elixir-search
+# target: elixir-search - Run search tests, requires a running Clouseau instance
+elixir-search: export MIX_ENV=integration
+elixir-search: elixir-init devclean
+	@dev\run -n 1 -q -a adm:pass \
+		--locald-config test/config/test-config.ini \
+		--no-eval 'mix test --trace --include test/elixir/test/config/search.elixir'
 
 .PHONY: elixir-check-formatted
 elixir-check-formatted: elixir-init
diff --git a/src/dreyfus/test/elixir/mix.exs b/src/dreyfus/test/elixir/mix.exs
deleted file mode 100644
index f77d9d6a3..000000000
--- a/src/dreyfus/test/elixir/mix.exs
+++ /dev/null
@@ -1,30 +0,0 @@
-defmodule Foo.Mixfile do
-  use Mix.Project
-
-  def project do
-    [
-      app: :foo,
-      version: "0.1.0",
-      elixir: "~> 1.5",
-      start_permanent: Mix.env == :prod,
-      deps: deps()
-    ]
-  end
-
-  # Run "mix help compile.app" to learn about applications.
-  def application do
-    [
-      extra_applications: [:logger]
-    ]
-  end
-
-  # Run "mix help deps" to learn about dependencies.
-  defp deps do
-    [
-      # {:dep_from_hexpm, "~> 0.3.0"},
-      {:httpotion, "~> 3.0"},
-      {:jiffy, path: Path.expand("../../../jiffy", __DIR__)}
-      # {:dep_from_git, git: "https://github.com/elixir-lang/my_dep.git", tag: "0.1.0"},
-    ]
-  end
-end
diff --git a/src/dreyfus/test/elixir/mix.lock b/src/dreyfus/test/elixir/mix.lock
deleted file mode 100644
index 51d765b15..000000000
--- a/src/dreyfus/test/elixir/mix.lock
+++ /dev/null
@@ -1,5 +0,0 @@
-%{
-  "httpotion": {:hex, :httpotion, "3.1.0", "14d20d9b0ce4e86e253eb91e4af79e469ad949f57a5d23c0a51b2f86559f6589", [:mix], [{:ibrowse, "~> 4.4", [hex: :ibrowse, repo: "hexpm", optional: false]}], "hexpm", "2e1f3da5398258f67be9522793c2ccef157d3c9f7a4f69ec8e87184393efe9e0"},
-  "ibrowse": {:hex, :ibrowse, "4.4.1", "2b7d0637b0f8b9b4182de4bd0f2e826a4da2c9b04898b6e15659ba921a8d6ec2", [:rebar3], [], "hexpm", "1e86c591dbc6d270632625534986beca30813af7ce784e742e5fc38e342c29b3"},
-  "jiffy": {:hex, :jiffy, "0.14.13", "225a9a35e26417832c611526567194b4d3adc4f0dfa5f2f7008f4684076f2a01", [:rebar3], [], "hexpm", "be5f0b124d03284b79fa90e07c3cf7a04be1a6111e97e0c9059e3cc0c7aac11a"},
-}
diff --git a/src/dreyfus/test/elixir/test/config/test-config.ini b/src/dreyfus/test/elixir/test/config/test-config.ini
deleted file mode 100644
index 8ceff6fd1..000000000
--- a/src/dreyfus/test/elixir/test/config/test-config.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[dreyfus]
-name = clouseau@127.0.0.1
diff --git a/src/dreyfus/test/elixir/test/test_helper.exs b/src/dreyfus/test/elixir/test/test_helper.exs
deleted file mode 100644
index 81083e910..000000000
--- a/src/dreyfus/test/elixir/test/test_helper.exs
+++ /dev/null
@@ -1,6 +0,0 @@
-Code.require_file "../../../../../test/elixir/lib/couch.ex", __DIR__
-Code.require_file "../../../../../test/elixir/lib/couch/dbtest.ex", __DIR__
-Code.require_file "../../../../../test/elixir/test/support/couch_test_case.ex", __DIR__
-Code.require_file "../../../../../test/elixir/lib/suite.ex", __DIR__
-Code.require_file "../../../../../test/elixir/test/test_helper.exs", __DIR__
-Couch.Test.Suite.start()
diff --git a/test/elixir/test/config/search.elixir b/test/elixir/test/config/search.elixir
new file mode 100644
index 000000000..12450865d
--- /dev/null
+++ b/test/elixir/test/config/search.elixir
@@ -0,0 +1,32 @@
+%{
+  "PartitionSearchTest": [
+    "Cannot do global query with partition view",
+    "Cannot do partition query with global search ddoc",
+    "Only returns docs in partition not those in shard",
+    "Simple query returns partitioned search results",
+    "Works with bookmarks and limit",
+    "Works with limit using POST for on non-partitioned db",
+    "Works with limit using POST for partitioned db",
+    "normal search on non-partitioned dbs still work",
+    "normal search on non-partitioned dbs with limit",
+    "normal search on non-partitioned dbs with over limit",
+    "normal search on non-partitioned dbs without limit",
+    "rejects conflicting partition values",
+    "restricted parameters are not allowed in query or body"
+  ],
+  "SearchTest": [
+    "clean up search index with invalid design document",
+    "drilldown multiple keys multiple values for POST",
+    "drilldown multiple keys single values for GET",
+    "drilldown multiple keys single values for POST",
+    "drilldown multiple query definitions for GET",
+    "drilldown multiple query definitions for POST",
+    "drilldown single key multiple values for GET",
+    "drilldown single key multiple values for POST",
+    "drilldown single key single value for GET",
+    "drilldown single key single value for POST",
+    "drilldown three keys single values for POST",
+    "search returns all items for GET",
+    "search returns all items for POST"
+  ]
+}
diff --git a/test/elixir/test/config/test-config.ini b/test/elixir/test/config/test-config.ini
index 1980139d1..190067643 100644
--- a/test/elixir/test/config/test-config.ini
+++ b/test/elixir/test/config/test-config.ini
@@ -1,2 +1,5 @@
 [chttpd]
 authentication_handlers = {chttpd_auth, jwt_authentication_handler}, {chttpd_auth, proxy_authentication_handler}, {chttpd_auth, cookie_authentication_handler}, {chttpd_auth, default_authentication_handler}
+
+[dreyfus]
+name = clouseau@127.0.0.1
diff --git a/src/dreyfus/test/elixir/test/partition_search_test.exs b/test/elixir/test/partition_search_test.exs
similarity index 100%
rename from src/dreyfus/test/elixir/test/partition_search_test.exs
rename to test/elixir/test/partition_search_test.exs
diff --git a/src/dreyfus/test/elixir/test/search_test.exs b/test/elixir/test/search_test.exs
similarity index 100%
rename from src/dreyfus/test/elixir/test/search_test.exs
rename to test/elixir/test/search_test.exs