fix(tests): update tests with new syntax

This commit is contained in:
2026-06-02 13:05:38 +02:00
parent 1c5c418f1c
commit 029caf4526
3 changed files with 462 additions and 401 deletions

View File

@@ -1,6 +1,6 @@
type Meter(float) type Meter = float
type Second(float) type Second = float
type MeterPerSecond(float) type MeterPerSecond = float
extend Meter { extend Meter {
op __add__(Meter) -> Meter op __add__(Meter) -> Meter

View File

@@ -1,15 +1,15 @@
// Simple custom type derived from float // Simple custom type derived from float
type Custom(float) type Custom = float
// Simple custom types with constraints // Simple custom types with constraints
type Latitude(float) where (-90 <= _ <= 90) type Latitude = float where (-90 <= _ <= 90)
type Longitude(float) where (-180 <= _ <= 180) type Longitude = float where (-180 <= _ <= 180)
// Generic custom type (a Difference of T is derived from T, e.g. a difference of floats is a float // Generic custom type (a Difference of T is derived from T, e.g. a difference of floats is a float
type Difference[T](T) type Difference[T] = T
// Complex custom type, containing two values accessible through properties // Complex custom type, containing two values accessible through properties
type GeoLocation { type GeoLocation = {
lat: Latitude lat: Latitude
lon: Longitude lon: Longitude
} }
@@ -24,7 +24,7 @@ extend GeoLocation {
// For complex generics, you need to specify how the genericity the properties // For complex generics, you need to specify how the genericity the properties
// are handled // are handled
type Difference[GeoLocation] { type Difference[GeoLocation] = {
lat: Difference[Latitude] lat: Difference[Latitude]
lon: Difference[Longitude] lon: Difference[Longitude]
} }
@@ -44,11 +44,11 @@ predicate StrictlyPositive(v: float) = v > 0
predicate Equatorial(loc: GeoLocation) = (-10 <= loc.lat <= 10) predicate Equatorial(loc: GeoLocation) = (-10 <= loc.lat <= 10)
predicate Arctic(loc: GeoLocation) = (loc.lat >= 66) predicate Arctic(loc: GeoLocation) = (loc.lat >= 66)
type Person { type Person = {
name: str name: str
// Property with an inline constraint // Property with an inline constraint
age: int? where (0 <= _ < 150) age: None | (int where (0 <= _ < 150))
// Property referencing a predicate // Property referencing a predicate
height: float where StrictlyPositive height: float where StrictlyPositive

File diff suppressed because it is too large Load Diff