Skip to content

Commit

Permalink
Add more specific tests
Browse files Browse the repository at this point in the history
  • Loading branch information
jvia committed Jan 12, 2024
1 parent 45dd6e1 commit b46e068
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 33 deletions.
4 changes: 2 additions & 2 deletions src/com/nytimes/querqy/context.clj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
(ns com.nytimes.querqy.context
(:import
(java.util Optional)
(querqy.rewrite RewriteLoggingConfig SearchEngineRequestAdapter)))
(java.util Optional)
(querqy.rewrite RewriteLoggingConfig SearchEngineRequestAdapter)))

(defn optional
([] (Optional/empty))
Expand Down
54 changes: 26 additions & 28 deletions src/com/nytimes/querqy/model.clj
Original file line number Diff line number Diff line change
Expand Up @@ -111,34 +111,34 @@
(extend-protocol cp/Datafiable
BooleanQuery
(datafy [^BooleanQuery q]
{:type BooleanQuery
:occur (occur->kw (.getOccur q))
:clauses (mapv datafy (.getClauses q))})
(-> (group-by (comp occur->kw get-occur) (.getClauses q))
(update-keys (fn [k] (keyword "bool" (name k))))
(update-vals (partial mapv datafy))))

BoostQuery
(datafy [^BoostQuery q]
{:type BoostQuery
:boost (.getBoost q)
:query (datafy (.getQuery q))})
{:boost/amount (.getBoost q)
:boost/query (datafy (.getQuery q))})

RawQuery
(datafy [^RawQuery q]
{:type RawQuery
:query (.-query q)})
{:raw/query (.-query q)})

DisjunctionMaxQuery
(datafy [^DisjunctionMaxQuery q]
{:type DisjunctionMaxQuery
:occur (occur->kw (.getOccur q))
:clauses (mapv datafy (.getClauses q))})
{:dismax/clauses (mapv datafy (.getClauses q))})

ExpandedQuery
(datafy [^ExpandedQuery q]
{:type ExpandedQuery
:user-query (datafy (.getUserQuery q))
:boost-up (mapv datafy (.getBoostUpQueries q))
:boost-down (mapv datafy (.getBoostDownQueries q))
:filter (mapv datafy (.getFilterQueries q))})
(cond-> {:expanded/query (datafy (.getUserQuery q))}
(.getBoostUpQueries q)
(assoc :expanded/boost-up (mapv datafy (.getBoostUpQueries q)))

(.getBoostDownQueries q)
(assoc :expanded/boost-down (mapv datafy (.getBoostDownQueries q)))

(.getFilterQueries q)
(assoc :expanded/filter (mapv datafy (.getFilterQueries q)))))

Input$SimpleInput
(datafy [^Input$SimpleInput i]
Expand All @@ -149,24 +149,22 @@

MatchAllQuery
(datafy [^MatchAllQuery _q]
{:type MatchAllQuery
:match_all {}})
{:match_all {}})

Query
(datafy [^Query q]
{:type Query
:occur (occur->kw (.getOccur q))
:clauses (mapv datafy (.getClauses q))})
(-> (group-by (comp occur->kw get-occur) (.getClauses q))
(update-keys (fn [k] (keyword "query" (name k))))
(update-vals (partial mapv datafy))))

BoostedTerm
(datafy [^BoostedTerm t]
{:type BoostedTerm
:field (.getField t)
:boost (.getBoost t)
:value (str (.getValue t))})
{:boost/field (.getField t)
:boost/amount (.getBoost t)
:boost/value (str (.getValue t))})

Term
(datafy [^Term t]
{:type Term
:field (.getField t)
:value (str (.getValue t))}))
(cond-> {:term/value (str (.getValue t))}
(.getField t)
(assoc :term/field (.getField t)))))
6 changes: 3 additions & 3 deletions src/com/nytimes/querqy/protocols.clj
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
(ns com.nytimes.querqy.protocols
(:require
[com.nytimes.querqy.context :as context])
[com.nytimes.querqy.context :as context])
(:import
(querqy.model ExpandedQuery Query)
(querqy.rewrite QueryRewriter RewriteChain RewriterFactory SearchEngineRequestAdapter)))
(querqy.model ExpandedQuery Query)
(querqy.rewrite QueryRewriter RewriteChain RewriterFactory SearchEngineRequestAdapter)))

(defprotocol Parser
(parse ^Query [this ^String string]
Expand Down
7 changes: 7 additions & 0 deletions test/com/nytimes/querqy/commonrules_test.clj
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,13 @@
(datafy (querqy/rewrite rw string)))

(deftest rewriter-test
(facts "A1"
(rewrite resource-rewriter "A1")
=> {}

(rewrite dsl-rewriter "A1")
=> {})

(facts "DSL & Resource Rewriters have the same output"
(rewrite dsl-rewriter "A1") => (rewrite resource-rewriter "A1")
(rewrite dsl-rewriter "A2 B2") => (rewrite resource-rewriter "A2 B2")
Expand Down

0 comments on commit b46e068

Please sign in to comment.