@@ -840,6 +840,58 @@ class RewriteTest extends FunSuite {
840840 runApplyUpdate(update, original, expected)
841841 }
842842
843+ test(" issue-2877: sbt using same version in a val and a literal using a Seq addition" ) {
844+ val update = (" org.scalatest" .g % Nel .of(
845+ " scalatest" .a,
846+ " scalactic" .a
847+ ) % " 3.2.13" %> " 3.2.14" ).group
848+ val original = Map (
849+ " build.sbt" ->
850+ """
851+ |val ScalaTestVersion = "3.2.13"
852+ |libraryDependencies ++= Seq(
853+ | "org.scalatest" %% "scalatest" % ScalaTestVersion,
854+ | "org.scalatest" %% "scalactic" % "3.2.13"
855+ |)
856+ |""" .stripMargin
857+ )
858+ val expected = Map (
859+ " build.sbt" ->
860+ """
861+ |val ScalaTestVersion = "3.2.14"
862+ |libraryDependencies ++= Seq(
863+ | "org.scalatest" %% "scalatest" % ScalaTestVersion,
864+ | "org.scalatest" %% "scalactic" % "3.2.14"
865+ |)
866+ |""" .stripMargin
867+ )
868+ runApplyUpdate(update, original, expected)
869+ }
870+
871+ test(" issue-2877: sbt using same version in a val and a literal using individual additions" ) {
872+ val update = (" org.scalatest" .g % Nel .of(
873+ " scalatest" .a,
874+ " scalactic" .a
875+ ) % " 3.2.13" %> " 3.2.14" ).group
876+ val original = Map (
877+ " build.sbt" ->
878+ """
879+ |val ScalaTestVersion = "3.2.13"
880+ |libraryDependencies += "org.scalatest" %% "scalatest" % ScalaTestVersion
881+ |libraryDependencies += "org.scalatest" %% "scalactic" % "3.2.13"
882+ |""" .stripMargin
883+ )
884+ val expected = Map (
885+ " build.sbt" ->
886+ """
887+ |val ScalaTestVersion = "3.2.14"
888+ |libraryDependencies += "org.scalatest" %% "scalatest" % ScalaTestVersion
889+ |libraryDependencies += "org.scalatest" %% "scalactic" % "3.2.14"
890+ |""" .stripMargin
891+ )
892+ runApplyUpdate(update, original, expected)
893+ }
894+
843895 private def runApplyUpdate (
844896 update : Update .Single ,
845897 files : Map [String , String ],
0 commit comments