diff options
author | Griffin Smith <grfn@gws.fyi> | 2021-06-30T00·35-0400 |
---|---|---|
committer | grfn <grfn@gws.fyi> | 2021-07-06T18·32+0000 |
commit | ad8d38c64cc98e71059538ca10bd4b979cd2cf74 (patch) | |
tree | 451279170fd11727d405f65b876b341b189e638b /users | |
parent | e62f578687a8ee81394d00a5775843bb0bd813a0 (diff) |
fix(xanthous): Fix display of square/cubic units r/2684
Previously this'd display `5 m m³`, because it'd show the underlying value then add the unit suffix on at the end Change-Id: Idd240ddfebc212460f9fb529eff72732a5dafe2a Reviewed-on: https://cl.tvl.fyi/c/depot/+/3241 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
Diffstat (limited to 'users')
-rw-r--r-- | users/grfn/xanthous/src/Xanthous/Data.hs | 8 | ||||
-rw-r--r-- | users/grfn/xanthous/test/Xanthous/DataSpec.hs | 7 |
2 files changed, 11 insertions, 4 deletions
diff --git a/users/grfn/xanthous/src/Xanthous/Data.hs b/users/grfn/xanthous/src/Xanthous/Data.hs index 77b0f8f8be71..9b3c35c5457c 100644 --- a/users/grfn/xanthous/src/Xanthous/Data.hs +++ b/users/grfn/xanthous/src/Xanthous/Data.hs @@ -557,7 +557,6 @@ newtype Square a = Square a , Scalar ) via a - deriving Show via ShowUnitSuffix (Square a) a deriving via (a :: Type) instance ( Distribution d a , forall xx yy. Coercible xx yy => Coercible (d xx) (d yy) @@ -567,6 +566,9 @@ deriving via (a :: Type) instance Unit a => Unit (Square a) where unitSuffix = unitSuffix @a <> "²" +instance Show a => Show (Square a) where + show (Square n) = show n <> "²" + newtype Cubic a = Cubic a deriving stock (Eq, Generic) deriving anyclass (NFData, CoArbitrary, Function) @@ -574,7 +576,6 @@ newtype Cubic a = Cubic a , Scalar ) via a - deriving Show via ShowUnitSuffix (Cubic a) a deriving via (a :: Type) instance ( Distribution d a , forall xx yy. Coercible xx yy => Coercible (d xx) (d yy) @@ -584,6 +585,9 @@ deriving via (a :: Type) instance Unit a => Unit (Cubic a) where unitSuffix = unitSuffix @a <> "³" +instance Show a => Show (Cubic a) where + show (Cubic n) = show n <> "³" + -------------------------------------------------------------------------------- diff --git a/users/grfn/xanthous/test/Xanthous/DataSpec.hs b/users/grfn/xanthous/test/Xanthous/DataSpec.hs index 1aa250b1a4fe..9e67505ba928 100644 --- a/users/grfn/xanthous/test/Xanthous/DataSpec.hs +++ b/users/grfn/xanthous/test/Xanthous/DataSpec.hs @@ -99,8 +99,11 @@ test = testGroup "Xanthous.Data" , testGroup "units" [ testGroup "unit suffixes" [ testCase "density" - $ tshow (10000 :: Grams `Per` Cubic Meters) - @?= "10000.0 g/m³" + $ tshow (10000 :: Grams `Per` Cubic Meters) @?= "10000.0 g/m³" + , testCase "volume" + $ tshow (5 :: Cubic Meters) @?= "5.0 m³" + , testCase "area" + $ tshow (5 :: Square Meters) @?= "5.0 m²" ] ] ] |