From cc32835e87453dd75ccc8c69c30f71a202627e49 Mon Sep 17 00:00:00 2001 From: Mouaad Aallam Date: Tue, 3 Aug 2021 11:41:45 +0200 Subject: [PATCH] refact(search): `replaceExistingSynonyms` to `clearExistingSynonyms` (#610) --- src/main/scala/algolia/AlgoliaDsl.scala | 6 ++++++ .../algolia/definitions/SynonymsDefinition.scala | 13 +++++++++++-- src/test/scala/algolia/dsl/SynonymsTest.scala | 7 ++++--- 3 files changed, 21 insertions(+), 5 deletions(-) diff --git a/src/main/scala/algolia/AlgoliaDsl.scala b/src/main/scala/algolia/AlgoliaDsl.scala index d119d39d..decc8916 100644 --- a/src/main/scala/algolia/AlgoliaDsl.scala +++ b/src/main/scala/algolia/AlgoliaDsl.scala @@ -106,8 +106,11 @@ object AlgoliaDsl extends AlgoliaDsl { sealed trait ClearExistingRules + @deprecated("Use ClearExistingSynonyms instead") sealed trait ReplaceExistingSynonyms + sealed trait ClearExistingSynonyms + sealed trait Of sealed trait In @@ -418,8 +421,11 @@ object AlgoliaDsl extends AlgoliaDsl { case object forwardToReplicas extends ForwardToReplicas + @deprecated("Use clearExistingSynonyms instead") case object replaceExistingSynonyms extends ReplaceExistingSynonyms + case object clearExistingSynonyms extends ClearExistingSynonyms + case object clearExistingRules extends ClearExistingRules case object of extends Of diff --git a/src/main/scala/algolia/definitions/SynonymsDefinition.scala b/src/main/scala/algolia/definitions/SynonymsDefinition.scala index 3e422835..464c28a1 100644 --- a/src/main/scala/algolia/definitions/SynonymsDefinition.scala +++ b/src/main/scala/algolia/definitions/SynonymsDefinition.scala @@ -25,7 +25,12 @@ package algolia.definitions -import algolia.AlgoliaDsl.{ForwardToReplicas, ReplaceExistingSynonyms} +import algolia.AlgoliaDsl.{ + ClearExistingSynonyms, + ForwardToReplicas, + ReplaceExistingSynonyms, + clearExistingSynonyms +} import algolia.http._ import algolia.objects.{AbstractSynonym, QuerySynonyms, RequestOptions} import org.json4s.Formats @@ -174,7 +179,7 @@ case class BatchSynonymsDefinition( synonyms: Iterable[AbstractSynonym], index: Option[String] = None, forward: Option[ForwardToReplicas] = None, - replace: Option[ReplaceExistingSynonyms] = None, + replace: Option[ClearExistingSynonyms] = None, requestOptions: Option[RequestOptions] = None )(implicit val formats: Formats) extends Definition { @@ -187,7 +192,11 @@ case class BatchSynonymsDefinition( def and(forward: ForwardToReplicas): BatchSynonymsDefinition = copy(forward = Some(forward)) + @deprecated("Use ClearExistingSynonyms instead") def and(replace: ReplaceExistingSynonyms): BatchSynonymsDefinition = + and(clearExistingSynonyms) + + def and(replace: ClearExistingSynonyms): BatchSynonymsDefinition = copy(replace = Some(replace)) override def options( diff --git a/src/test/scala/algolia/dsl/SynonymsTest.scala b/src/test/scala/algolia/dsl/SynonymsTest.scala index 9faef8f8..2193a817 100644 --- a/src/test/scala/algolia/dsl/SynonymsTest.scala +++ b/src/test/scala/algolia/dsl/SynonymsTest.scala @@ -26,6 +26,7 @@ package algolia.dsl import algolia.AlgoliaDsl._ +import algolia.definitions.BatchSynonymsDefinition import algolia.http._ import algolia.objects.Synonym.Placeholder import algolia.objects.{QuerySynonyms, SynonymType} @@ -159,12 +160,12 @@ class SynonymsTest extends AlgoliaTest { describe("batch") { it("should save batches synonyms of an index") { - save synonyms Seq(Placeholder("oid", "1", Seq("2", "3"))) inIndex "toto" and forwardToSlaves and replaceExistingSynonyms - save synonyms Seq(Placeholder("oid", "1", Seq("2", "3"))) inIndex "toto" and forwardToReplicas and replaceExistingSynonyms + save synonyms Seq(Placeholder("oid", "1", Seq("2", "3"))) inIndex "toto" and forwardToSlaves and clearExistingSynonyms + save synonyms Seq(Placeholder("oid", "1", Seq("2", "3"))) inIndex "toto" and forwardToReplicas and clearExistingSynonyms } it("should call API") { - (save synonyms Seq(Placeholder("oid", "1", Seq("2", "3"))) inIndex "toto" and forwardToReplicas and replaceExistingSynonyms) + (save synonyms Seq(Placeholder("oid", "1", Seq("2", "3"))) inIndex "toto" and forwardToReplicas and clearExistingSynonyms) .build() should be( HttpPayload( POST,