forked from ghostdogpr/caliban
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Support multiple setting sets per file (ghostdogpr#1156)
- Loading branch information
Showing
12 changed files
with
130 additions
and
71 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
lazy val root = project | ||
.in(file(".")) | ||
.enablePlugins(CodegenPlugin) // Intentionally maintain the deprecated name | ||
.settings( | ||
libraryDependencies ++= Seq( | ||
"com.github.ghostdogpr" %% "caliban-client" % Version.pluginVersion | ||
) | ||
) |
7 changes: 7 additions & 0 deletions
7
codegen-sbt/src/sbt-test/codegen/gen-client-task/project/Version.scala
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
object Version { | ||
def pluginVersion: String = | ||
sys.props.get("plugin.version") match { | ||
case Some(x) => x | ||
case _ => sys.error("""|The system property 'plugin.version' is not defined. | ||
|Specify this property using the scriptedLaunchOpts -D.""".stripMargin) | ||
}} |
File renamed without changes.
5 changes: 5 additions & 0 deletions
5
codegen-sbt/src/sbt-test/codegen/gen-client-task/project/plugins.sbt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
sys.props.get("plugin.version") match { | ||
case Some(x) => addSbtPlugin("com.github.ghostdogpr" % "caliban-codegen-sbt" % x) | ||
case _ => sys.error("""|The system property 'plugin.version' is not defined. | ||
|Specify this property using the scriptedLaunchOpts -D.""".stripMargin) | ||
} |
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
$ absent src/main/scala/client/ClientNameUniqueness.scala | ||
$ absent src/main/scala/client/ClientGitLab.scala | ||
$ absent app/com/caliban/client/ClientPlayFramework.scala | ||
$ absent play23/com/caliban/client/ClientPlayFramework.scala | ||
|
||
$ mkdir src/main/scala | ||
$ mkdir src/main/scala/client | ||
$ mkdir app/com/caliban/client | ||
$ mkdir play23/com/caliban/client | ||
|
||
> calibanGenClient project/schema-to-check-name-uniqueness.graphql src/main/scala/client/ClientNameUniqueness.scala --packageName client | ||
$ exists src/main/scala/client/ClientNameUniqueness.scala | ||
|
||
> calibanGenClient project/schema-to-check-name-uniqueness.graphql app/com/caliban/client/ClientPlayFramework.scala --packageName client | ||
$ exists app/com/caliban/client/ClientPlayFramework.scala | ||
$ exec sh verify.sh ClientPlayFramework ./app/com/caliban/client/ClientPlayFramework.scala | ||
|
||
> calibanGenClient project/schema-to-check-name-uniqueness.graphql play23/com/caliban/client/ClientPlayFramework.scala --packageName client | ||
$ exists play23/com/caliban/client/ClientPlayFramework.scala | ||
$ exec sh verify.sh ClientPlayFramework ./play23/com/caliban/client/ClientPlayFramework.scala | ||
|
||
$ mkdir src/main/scala/genview | ||
$ mkdir src/main/scala/genview/client | ||
|
||
> calibanGenClient project/schema-to-check-name-uniqueness.graphql src/main/scala/genview/client/ClientNameUniqueness.scala --packageName genview.client --genView true | ||
$ exists src/main/scala/genview/client/ClientNameUniqueness.scala | ||
$ exec sh verify.sh StarshipView ./src/main/scala/genview/client/ClientNameUniqueness.scala | ||
> calibanGenClient project/gitlab-schema.graphql src/main/scala/genview/client/ClientGitLab.scala --packageName genview.client --genView true --splitFiles true --enableFmt false | ||
$ exists src/main/scala/genview/client/package.scala | ||
$ exec sh verify.sh ProjectID ./src/main/scala/genview/client/package.scala | ||
$ exists src/main/scala/genview/client/Project.scala | ||
$ exec sh verify.sh ProjectView ./src/main/scala/genview/client/Project.scala | ||
$ exec sh verify.sh ProjectViewArgs ./src/main/scala/genview/client/Project.scala | ||
$ exec sh verify.sh ProjectViewSelectionArgs ./src/main/scala/genview/client/Project.scala |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
#!/usr/bin/env bash | ||
|
||
if grep -q "$1" "$2"; then | ||
echo "$1 exists in $2" | ||
exit 0 | ||
else | ||
echo "$1 is missing in $2" | ||
exit 1 | ||
fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,20 +1,24 @@ | ||
import _root_.caliban.tools.Codegen | ||
|
||
lazy val root = project | ||
.in(file(".")) | ||
.enablePlugins(CodegenPlugin) // Intentionally maintain the deprecated name | ||
.enablePlugins(CalibanPlugin) | ||
.settings( | ||
libraryDependencies ++= Seq( | ||
"com.github.ghostdogpr" %% "caliban-client" % Version.pluginVersion | ||
), | ||
Compile / caliban / calibanSettings ++= Seq( | ||
calibanSetting(file("src/main/graphql/schema.graphql"))( // Explicitly constrain to disambiguate | ||
cs => | ||
cs.clientName("Client") | ||
calibanSetting(file("src/main/graphql/schema.graphql"))( // Explicitly constrain to disambiguate | ||
_.clientName("Client") | ||
), | ||
// Another entry for the same file, which will cause another generator to run | ||
calibanSetting(file("src/main/graphql/schema.graphql"))( | ||
_.genType(Codegen.GenType.Schema) | ||
.scalarMapping("Json" -> "String") | ||
.effect("scala.util.Try") | ||
), | ||
calibanSetting(file("src/main/graphql/genview/schema.graphql"))( | ||
cs => | ||
cs.clientName("Client") | ||
.packageName("genview") | ||
.genView(true) | ||
_.clientName("Client").packageName("genview").genView(true) | ||
) | ||
) | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,39 +1,6 @@ | ||
$ absent src/main/scala/client/ClientNameUniqueness.scala | ||
$ absent src/main/scala/client/ClientGitLab.scala | ||
$ absent app/com/caliban/client/ClientPlayFramework.scala | ||
$ absent play23/com/caliban/client/ClientPlayFramework.scala | ||
|
||
$ mkdir src/main/scala | ||
$ mkdir src/main/scala/client | ||
$ mkdir app/com/caliban/client | ||
$ mkdir play23/com/caliban/client | ||
|
||
> calibanGenClient project/schema-to-check-name-uniqueness.graphql src/main/scala/client/ClientNameUniqueness.scala --packageName client | ||
$ exists src/main/scala/client/ClientNameUniqueness.scala | ||
|
||
> calibanGenClient project/schema-to-check-name-uniqueness.graphql app/com/caliban/client/ClientPlayFramework.scala --packageName client | ||
$ exists app/com/caliban/client/ClientPlayFramework.scala | ||
$ exec sh verify.sh ClientPlayFramework ./app/com/caliban/client/ClientPlayFramework.scala | ||
|
||
> calibanGenClient project/schema-to-check-name-uniqueness.graphql play23/com/caliban/client/ClientPlayFramework.scala --packageName client | ||
$ exists play23/com/caliban/client/ClientPlayFramework.scala | ||
$ exec sh verify.sh ClientPlayFramework ./play23/com/caliban/client/ClientPlayFramework.scala | ||
|
||
$ mkdir src/main/scala/genview | ||
$ mkdir src/main/scala/genview/client | ||
|
||
> calibanGenClient project/schema-to-check-name-uniqueness.graphql src/main/scala/genview/client/ClientNameUniqueness.scala --packageName genview.client --genView true | ||
$ exists src/main/scala/genview/client/ClientNameUniqueness.scala | ||
$ exec sh verify.sh StarshipView ./src/main/scala/genview/client/ClientNameUniqueness.scala | ||
> calibanGenClient project/gitlab-schema.graphql src/main/scala/genview/client/ClientGitLab.scala --packageName genview.client --genView true --splitFiles true --enableFmt false | ||
$ exists src/main/scala/genview/client/package.scala | ||
$ exec sh verify.sh ProjectID ./src/main/scala/genview/client/package.scala | ||
$ exists src/main/scala/genview/client/Project.scala | ||
$ exec sh verify.sh ProjectView ./src/main/scala/genview/client/Project.scala | ||
$ exec sh verify.sh ProjectViewArgs ./src/main/scala/genview/client/Project.scala | ||
$ exec sh verify.sh ProjectViewSelectionArgs ./src/main/scala/genview/client/Project.scala | ||
> compile | ||
|
||
$ exists target/scala-2.12/src_managed/main/caliban-codegen-sbt/caliban/Client.scala | ||
$ exists target/scala-2.12/src_managed/main/caliban-codegen-sbt/genview/Client.scala | ||
$ exists target/scala-2.12/src_managed/main/caliban-codegen-sbt/caliban/schema.scala | ||
$ exec sh verify.sh CharacterView target/scala-2.12/src_managed/main/caliban-codegen-sbt/genview/Client.scala |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters