Skip to content

Commit 16ec670

Browse files
committed
cleanup
1 parent 0248f5f commit 16ec670

File tree

6 files changed

+27
-32
lines changed

6 files changed

+27
-32
lines changed

customer/src/main/scala/app/CustomerAppConfig.scala

+1-10
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package app
22

33
import eu.timepit.refined.types.net.PortNumber
4-
import testcontainers.OrderContainer
54
import zio.config.magnolia.descriptor
65
import zio.config.refined._
76
import zio.config.typesafe.TypesafeConfigSource
@@ -13,14 +12,6 @@ case class OrderServiceConfig(
1312
port: PortNumber,
1413
)
1514

16-
object OrderServiceConfig {
17-
def from(orderTestContainer: OrderContainer): OrderServiceConfig =
18-
OrderServiceConfig(
19-
"http://" + orderTestContainer.host,
20-
PortNumber.unsafeFrom(orderTestContainer.externalPort),
21-
)
22-
}
23-
2415
case class CustomerAppConfig(
2516
port: PortNumber,
2617
orderServiceConfig: OrderServiceConfig,
@@ -31,7 +22,7 @@ object CustomerAppConfig {
3122
implicit val orderServiceConfig = descriptor[OrderServiceConfig]
3223
implicit val customerAppConfig = descriptor[CustomerAppConfig]
3324

34-
val layer: Layer[ReadError[String], CustomerAppConfig] =
25+
val live: Layer[ReadError[String], CustomerAppConfig] =
3526
ZLayer {
3627
zio.config.read {
3728
descriptor[CustomerAppConfig]

customer/src/main/scala/app/CustomerServer.scala

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ object CustomerServer extends ZIOAppDefault {
1515
_ <- Server.start(config.port, CustomerHttpFacade.endpoints)
1616
} yield ExitCode.success)
1717
.provideSome(
18-
CustomerAppConfig.layer,
18+
CustomerAppConfig.live,
1919
OrderService.layer,
2020
HttpClientZioBackend.layer(),
2121
)

customer/src/test/scala/app/CustomerHttp2Spec.scala

+1-7
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,6 @@ object CustomerHttp2Spec extends SharedOrderContainerSpec {
4141
apiOutput <- ZIO.fromEither(CustomerApiOutput.codec.decoder.decodeJson(body))
4242
} yield assert(apiOutput)(equalTo(expectedApiOutput))
4343
},
44-
).provideSome[Scope with OrderContainer](OrderService.layer, HttpClientZioBackend.layer(), testCustomerAppConfig)
45-
46-
val testCustomerAppConfig = ZLayer.fromZIO {
47-
for {
48-
orderTestContainer <- ZIO.service[OrderContainer]
49-
} yield CustomerAppConfig(1, OrderServiceConfig.from(orderTestContainer))
50-
}
44+
).provideSome[Scope with OrderContainer](OrderService.layer, HttpClientZioBackend.layer(), TestAppConfig.live)
5145

5246
}

customer/src/test/scala/app/CustomerHttp3Spec.scala

+1-7
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,6 @@ object CustomerHttp3Spec extends SharedOrderContainerSpec {
4141
apiOutput <- ZIO.fromEither(CustomerApiOutput.codec.decoder.decodeJson(body))
4242
} yield assert(apiOutput)(equalTo(expectedApiOutput))
4343
},
44-
).provideSome[Scope with OrderContainer](OrderService.layer, HttpClientZioBackend.layer(), testCustomerAppConfig)
45-
46-
val testCustomerAppConfig = ZLayer.fromZIO {
47-
for {
48-
orderTestContainer <- ZIO.service[OrderContainer]
49-
} yield CustomerAppConfig(1, OrderServiceConfig.from(orderTestContainer))
50-
}
44+
).provideSome[Scope with OrderContainer](OrderService.layer, HttpClientZioBackend.layer(), TestAppConfig.live)
5145

5246
}

customer/src/test/scala/app/CustomerHttpSpec.scala

+1-7
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,6 @@ object CustomerHttpSpec extends ZIOSpecDefault {
4242
} yield assert(apiOutput)(equalTo(expectedApiOutput))
4343
},
4444
).provideSome[Scope with CustomerAppConfig](OrderService.layer, HttpClientZioBackend.layer())
45-
.provideSomeShared(OrderContainer.live, testCustomerAppConfig)
46-
47-
val testCustomerAppConfig = ZLayer.fromZIO {
48-
for {
49-
orderTestContainer <- ZIO.service[OrderContainer]
50-
} yield CustomerAppConfig(1, OrderServiceConfig.from(orderTestContainer))
51-
}
45+
.provideSomeShared(OrderContainer.live, TestAppConfig.live)
5246

5347
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package app
2+
3+
import eu.timepit.refined.auto._
4+
import eu.timepit.refined.types.all.PortNumber
5+
import testcontainers.OrderContainer
6+
import zio.{ URLayer, ZIO, ZLayer }
7+
8+
object TestAppConfig {
9+
10+
val live: URLayer[OrderContainer, CustomerAppConfig] = ZLayer.fromZIO {
11+
for {
12+
orderTestContainer <- ZIO.service[OrderContainer]
13+
orderServiceConfig = createOrderServiceConfig(orderTestContainer)
14+
} yield CustomerAppConfig(1, orderServiceConfig)
15+
}
16+
private def createOrderServiceConfig(orderTestContainer: OrderContainer): OrderServiceConfig =
17+
OrderServiceConfig(
18+
"http://" + orderTestContainer.host,
19+
PortNumber.unsafeFrom(orderTestContainer.externalPort),
20+
)
21+
22+
}

0 commit comments

Comments
 (0)