Skip to content
Permalink

Comparing changes

This is a direct comparison between two commits made in this repository or its related repositories. View the default comparison for this range or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: Effect-TS/effect
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: ee1f1cd8452ab479a24bd30030c726b0d8f280fe
Choose a base ref
..
head repository: Effect-TS/effect
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 1576be0ce493769f9a4526d1db47fdb20554710f
Choose a head ref
Showing with 468 additions and 301 deletions.
  1. +49 −49 packages/effect/test/BigDecimal.test.ts
  2. +7 −2 packages/effect/test/Brand.test.ts
  3. +9 −9 packages/effect/test/Cause.test.ts
  4. +99 −99 packages/effect/test/Chunk.test.ts
  5. +36 −10 packages/effect/test/Context.test.ts
  6. +20 −20 packages/effect/test/Effect/cause-rendering.test.ts
  7. +12 −12 packages/effect/test/Effect/error.test.ts
  8. +9 −5 packages/effect/test/Effect/fn.test.ts
  9. +9 −9 packages/effect/test/Effect/service.test.ts
  10. +2 −2 packages/effect/test/FiberRef.test.ts
  11. +18 −11 packages/effect/test/Micro.test.ts
  12. +13 −5 packages/effect/test/Schema/Schema/Class/Class.test.ts
  13. +2 −2 packages/effect/test/Schema/Schema/Class/TaggedClass.test.ts
  14. +8 −8 packages/effect/test/Schema/Schema/Class/TaggedError.test.ts
  15. +2 −2 packages/effect/test/Schema/Schema/Class/TaggedRequest.test.ts
  16. +2 −2 packages/effect/test/Schema/Schema/Class/extend.test.ts
  17. +2 −2 packages/effect/test/Schema/Schema/Class/transformOrFail.test.ts
  18. +2 −2 packages/effect/test/Schema/Schema/Class/transformOrFailFrom.test.ts
  19. +3 −3 packages/effect/test/Schema/Schema/Defect/Defect.test.ts
  20. +3 −2 packages/effect/test/Schema/Schema/decodeUnknownSync.test.ts
  21. +2 −2 packages/effect/test/Schema/SchemaAST/annotations.test.ts
  22. +17 −3 packages/effect/test/Schema/SchemaTest.ts
  23. +3 −3 packages/effect/test/Tracer.test.ts
  24. +45 −0 packages/effect/test/assertions.test.ts
  25. +89 −32 packages/effect/test/util.ts
  26. +2 −2 packages/platform/test/Headers.test.ts
  27. +3 −3 packages/platform/test/HttpClient.test.ts
98 changes: 49 additions & 49 deletions packages/effect/test/BigDecimal.test.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import { describe, it } from "@effect/vitest"
import { BigDecimal, Equal, FastCheck as fc, Option } from "effect"
import {
assertEquals,
assertFalse,
assertNone,
assertSome,
assertTrue,
deepStrictEqual,
equals,
strictEqual,
throws
} from "effect/test/util"
@@ -43,31 +43,31 @@ describe("BigDecimal", () => {
})

it("sum", () => {
equals(BigDecimal.sum($("2"), $("0")), $("2"))
equals(BigDecimal.sum($("0"), $("2")), $("2"))
equals(BigDecimal.sum($("0"), $("0")), $("0"))
equals(BigDecimal.sum($("2"), $("1")), $("3"))
equals(BigDecimal.sum($("3.00000"), $("50")), $("53"))
equals(BigDecimal.sum($("1.23"), $("0.0045678")), $("1.2345678"))
equals(BigDecimal.sum($("123.456"), $("-123.456")), $("0"))
assertEquals(BigDecimal.sum($("2"), $("0")), $("2"))
assertEquals(BigDecimal.sum($("0"), $("2")), $("2"))
assertEquals(BigDecimal.sum($("0"), $("0")), $("0"))
assertEquals(BigDecimal.sum($("2"), $("1")), $("3"))
assertEquals(BigDecimal.sum($("3.00000"), $("50")), $("53"))
assertEquals(BigDecimal.sum($("1.23"), $("0.0045678")), $("1.2345678"))
assertEquals(BigDecimal.sum($("123.456"), $("-123.456")), $("0"))
})

it("multiply", () => {
equals(BigDecimal.multiply($("3"), $("2")), $("6"))
equals(BigDecimal.multiply($("3"), $("0")), $("0"))
equals(BigDecimal.multiply($("3"), $("-1")), $("-3"))
equals(BigDecimal.multiply($("3"), $("0.5")), $("1.5"))
equals(BigDecimal.multiply($("3"), $("-2.5")), $("-7.5"))
assertEquals(BigDecimal.multiply($("3"), $("2")), $("6"))
assertEquals(BigDecimal.multiply($("3"), $("0")), $("0"))
assertEquals(BigDecimal.multiply($("3"), $("-1")), $("-3"))
assertEquals(BigDecimal.multiply($("3"), $("0.5")), $("1.5"))
assertEquals(BigDecimal.multiply($("3"), $("-2.5")), $("-7.5"))
})

it("subtract", () => {
equals(BigDecimal.subtract($("0"), $("1")), $("-1"))
equals(BigDecimal.subtract($("2.1"), $("1")), $("1.1"))
equals(BigDecimal.subtract($("3"), $("1")), $("2"))
equals(BigDecimal.subtract($("3"), $("0")), $("3"))
equals(BigDecimal.subtract($("3"), $("-1")), $("4"))
equals(BigDecimal.subtract($("3"), $("0.5")), $("2.5"))
equals(BigDecimal.subtract($("3"), $("-2.5")), $("5.5"))
assertEquals(BigDecimal.subtract($("0"), $("1")), $("-1"))
assertEquals(BigDecimal.subtract($("2.1"), $("1")), $("1.1"))
assertEquals(BigDecimal.subtract($("3"), $("1")), $("2"))
assertEquals(BigDecimal.subtract($("3"), $("0")), $("3"))
assertEquals(BigDecimal.subtract($("3"), $("-1")), $("4"))
assertEquals(BigDecimal.subtract($("3"), $("0.5")), $("2.5"))
assertEquals(BigDecimal.subtract($("3"), $("-2.5")), $("5.5"))
})

it("roundTerminal", () => {
@@ -132,8 +132,8 @@ describe("BigDecimal", () => {
]

for (const [x, y, z] of cases) {
equals(BigDecimal.divide($(x), $(y)).pipe(Option.getOrThrow), $(z))
equals(BigDecimal.unsafeDivide($(x), $(y)), $(z))
assertEquals(BigDecimal.divide($(x), $(y)).pipe(Option.getOrThrow), $(z))
assertEquals(BigDecimal.unsafeDivide($(x), $(y)), $(z))
}

assertNone(BigDecimal.divide($("5"), $("0")))
@@ -195,53 +195,53 @@ describe("BigDecimal", () => {
})

it("clamp", () => {
equals(BigDecimal.clamp({ minimum: $("0"), maximum: $("5") })($("3")), $("3"))
equals(BigDecimal.clamp({ minimum: $("0"), maximum: $("5") })($("-1")), $("0"))
equals(BigDecimal.clamp({ minimum: $("0"), maximum: $("5") })($("6")), $("5"))
equals(BigDecimal.clamp({ minimum: $("0.02"), maximum: $("5") })($("0.0123")), $("0.02"))
assertEquals(BigDecimal.clamp({ minimum: $("0"), maximum: $("5") })($("3")), $("3"))
assertEquals(BigDecimal.clamp({ minimum: $("0"), maximum: $("5") })($("-1")), $("0"))
assertEquals(BigDecimal.clamp({ minimum: $("0"), maximum: $("5") })($("6")), $("5"))
assertEquals(BigDecimal.clamp({ minimum: $("0.02"), maximum: $("5") })($("0.0123")), $("0.02"))

equals(BigDecimal.clamp($("3"), { minimum: $("0"), maximum: $("5") }), $("3"))
assertEquals(BigDecimal.clamp($("3"), { minimum: $("0"), maximum: $("5") }), $("3"))
})

it("min", () => {
equals(BigDecimal.min($("2"), $("3")), $("2"))
equals(BigDecimal.min($("5"), $("0.1")), $("0.1"))
equals(BigDecimal.min($("0.005"), $("3")), $("0.005"))
equals(BigDecimal.min($("123.456"), $("1.2")), $("1.2"))
assertEquals(BigDecimal.min($("2"), $("3")), $("2"))
assertEquals(BigDecimal.min($("5"), $("0.1")), $("0.1"))
assertEquals(BigDecimal.min($("0.005"), $("3")), $("0.005"))
assertEquals(BigDecimal.min($("123.456"), $("1.2")), $("1.2"))
})

it("max", () => {
equals(BigDecimal.max($("2"), $("3")), $("3"))
equals(BigDecimal.max($("5"), $("0.1")), $("5"))
equals(BigDecimal.max($("0.005"), $("3")), $("3"))
equals(BigDecimal.max($("123.456"), $("1.2")), $("123.456"))
assertEquals(BigDecimal.max($("2"), $("3")), $("3"))
assertEquals(BigDecimal.max($("5"), $("0.1")), $("5"))
assertEquals(BigDecimal.max($("0.005"), $("3")), $("3"))
assertEquals(BigDecimal.max($("123.456"), $("1.2")), $("123.456"))
})

it("abs", () => {
equals(BigDecimal.abs($("2")), $("2"))
equals(BigDecimal.abs($("-3")), $("3"))
equals(BigDecimal.abs($("0.000456")), $("0.000456"))
equals(BigDecimal.abs($("-0.123")), $("0.123"))
assertEquals(BigDecimal.abs($("2")), $("2"))
assertEquals(BigDecimal.abs($("-3")), $("3"))
assertEquals(BigDecimal.abs($("0.000456")), $("0.000456"))
assertEquals(BigDecimal.abs($("-0.123")), $("0.123"))
})

it("negate", () => {
equals(BigDecimal.negate($("2")), $("-2"))
equals(BigDecimal.negate($("-3")), $("3"))
equals(BigDecimal.negate($("0.000456")), $("-0.000456"))
equals(BigDecimal.negate($("-0.123")), $("0.123"))
assertEquals(BigDecimal.negate($("2")), $("-2"))
assertEquals(BigDecimal.negate($("-3")), $("3"))
assertEquals(BigDecimal.negate($("0.000456")), $("-0.000456"))
assertEquals(BigDecimal.negate($("-0.123")), $("0.123"))
})

it("remainder", () => {
equals(BigDecimal.remainder($("5"), $("2")).pipe(Option.getOrThrow), $("1"))
equals(BigDecimal.remainder($("4"), $("2")).pipe(Option.getOrThrow), $("0"))
equals(BigDecimal.remainder($("123.456"), $("0.2")).pipe(Option.getOrThrow), $("0.056"))
assertEquals(BigDecimal.remainder($("5"), $("2")).pipe(Option.getOrThrow), $("1"))
assertEquals(BigDecimal.remainder($("4"), $("2")).pipe(Option.getOrThrow), $("0"))
assertEquals(BigDecimal.remainder($("123.456"), $("0.2")).pipe(Option.getOrThrow), $("0.056"))
assertNone(BigDecimal.remainder($("5"), $("0")))
})

it("unsafeRemainder", () => {
equals(BigDecimal.unsafeRemainder($("5"), $("2")), $("1"))
equals(BigDecimal.unsafeRemainder($("4"), $("2")), $("0"))
equals(BigDecimal.unsafeRemainder($("123.456"), $("0.2")), $("0.056"))
assertEquals(BigDecimal.unsafeRemainder($("5"), $("2")), $("1"))
assertEquals(BigDecimal.unsafeRemainder($("4"), $("2")), $("0"))
assertEquals(BigDecimal.unsafeRemainder($("123.456"), $("0.2")), $("0.056"))
throws(() => BigDecimal.unsafeRemainder($("5"), $("0")), new RangeError("Division by zero"))
})

9 changes: 7 additions & 2 deletions packages/effect/test/Brand.test.ts
Original file line number Diff line number Diff line change
@@ -7,6 +7,7 @@ import {
assertRight,
assertSome,
assertTrue,
deepStrictEqual,
strictEqual,
throws
} from "effect/test/util"
@@ -49,14 +50,18 @@ describe("Brand", () => {
)
assertTrue(Int.is(1))
assertFalse(Int.is(1.1))
throws(() => Int(1.1), Brand.error("Expected 1.1 to be an integer"))
throws(() => Int(1.1), (err) => {
deepStrictEqual(err, Brand.error("Expected 1.1 to be an integer"))
})
})

it("refined (Option overload)", () => {
const Int = Brand.refined<Int>(
(n) => Number.isInteger(n) ? Option.none() : Option.some(Brand.error(`Expected ${n} to be an integer`))
)
throws(() => Int(1.1), Brand.error("Expected 1.1 to be an integer"))
throws(() => Int(1.1), (err) => {
deepStrictEqual(err, Brand.error("Expected 1.1 to be an integer"))
})
})

it("composition", () => {
18 changes: 9 additions & 9 deletions packages/effect/test/Cause.test.ts
Original file line number Diff line number Diff line change
@@ -14,7 +14,7 @@ import {
import * as internal from "effect/internal/cause"
import {
assertFalse,
assertIncludes,
assertInclude,
assertLeft,
assertNone,
assertRight,
@@ -37,13 +37,13 @@ describe("Cause", () => {
it("correctly implements toString() and the NodeInspectSymbol", () => {
// Referenced line to be included in the string output
const ex = new Cause.InterruptedException("my message")
assertIncludes(ex.toString(), "InterruptedException: my message")
assertInclude(ex.toString(), "InterruptedException: my message")

// In Node.js environments, ensure the 'inspect' method includes line information
if (typeof window === "undefined") {
// eslint-disable-next-line @typescript-eslint/no-var-requires
const { inspect } = require("node:util")
assertIncludes(inspect(ex), "Cause.test.ts:39") // <= reference to the line above
assertInclude(inspect(ex), "Cause.test.ts:39") // <= reference to the line above
}
})
})
@@ -224,12 +224,12 @@ describe("Cause", () => {

it("Fail", () => {
strictEqual(String(Cause.fail("my failure")), `Error: my failure`)
assertIncludes(String(Cause.fail(new Error("my failure"))), "Error: my failure")
assertInclude(String(Cause.fail(new Error("my failure"))), "Error: my failure")
})

it("Die", () => {
strictEqual(String(Cause.die("die message")), `Error: die message`)
assertIncludes(String(Cause.die(new Error("die message"))), "Error: die message")
assertInclude(String(Cause.die(new Error("die message"))), "Error: die message")
})

it("Interrupt", () => {
@@ -247,8 +247,8 @@ describe("Cause", () => {
`Error: failure 1\nError: failure 2`
)
const actual = String(Cause.sequential(Cause.fail(new Error("failure 1")), Cause.fail(new Error("failure 2"))))
assertIncludes(actual, "Error: failure 1")
assertIncludes(actual, "Error: failure 2")
assertInclude(actual, "Error: failure 1")
assertInclude(actual, "Error: failure 2")
})

it("Parallel", () => {
@@ -259,8 +259,8 @@ describe("Cause", () => {
const actual = String(
String(Cause.parallel(Cause.fail(new Error("failure 1")), Cause.fail(new Error("failure 2"))))
)
assertIncludes(actual, "Error: failure 1")
assertIncludes(actual, "Error: failure 2")
assertInclude(actual, "Error: failure 1")
assertInclude(actual, "Error: failure 2")
})
})

Loading