Newer
Older
iw-project-support / mill-iw-support / example / test / src / ExampleTest.scala
package example

import utest._
import zio._
import zio.json._
import zio.test._
import zio.test.Assertion._

object ExampleTest extends TestSuite {
  val tests = Tests {
    test("User JSON serialization") {
      val user = User("1", "John Doe", "john@example.com")
      val json = user.toJson
      val expected = """{"id":"1","name":"John Doe","email":"john@example.com"}"""
      
      assert(json == expected)
    }
    
    test("User JSON deserialization") {
      val json = """{"id":"1","name":"John Doe","email":"john@example.com"}"""
      val parsed = json.fromJson[User]
      val expected = User("1", "John Doe", "john@example.com")
      
      assert(parsed == Right(expected))
    }
  }
}