Skip to content

Commit

Permalink
fix test transpilation for YAML
Browse files Browse the repository at this point in the history
  • Loading branch information
kMutagene committed Jul 9, 2024
1 parent 7724f9c commit 55209cb
Show file tree
Hide file tree
Showing 6 changed files with 25 additions and 16 deletions.
4 changes: 3 additions & 1 deletion build/ProjectInfo.fs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
module ProjectInfo
module ProjectInfo

open Fake.Core
open Helpers
Expand All @@ -13,6 +13,8 @@ let testProjects =
"tests/Spreadsheet"
"tests/FileSystem"
"tests/ARCtrl"
"tests/Yaml"
"tests/ValidationPackages"
]

/// Native JS test paths
Expand Down
2 changes: 1 addition & 1 deletion src/ARCtrl/ARC.fs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace ARCtrl
namespace ARCtrl

open ARCtrl.FileSystem
open ARCtrl.Contract
Expand Down
9 changes: 8 additions & 1 deletion tests/TestingUtils/Library.fs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace TestingUtils
namespace TestingUtils

open FsSpreadsheet
open ARCtrl
Expand Down Expand Up @@ -96,6 +96,12 @@ module Expect =
let inline equal actual expected message = Expect.equal actual expected message
let notEqual actual expected message = Expect.notEqual actual expected message

/// Trims whitespace and normalizes lineendings to "\n"
let trimEqual (actual: string) (expected: string) message =
let a = actual.Trim().Replace("\r\n", "\n")
let e = expected.Trim().Replace("\r\n", "\n")
Expect.equal a e message

/// <summary>
/// This function only verifies non-whitespace characters
/// </summary>
Expand Down Expand Up @@ -248,3 +254,4 @@ module Test =


let testList = testList
let ftestList = ftestList
2 changes: 1 addition & 1 deletion tests/TestingUtils/TestingUtils.fsproj
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Fable.Node" Version="1.2.0" />
<PackageReference Include="Fable.Pyxpecto" Version="1.1.0" />
<PackageReference Include="Fable.Pyxpecto" Version="1.2.0" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\src\ARCtrl\ARCtrl.fsproj" />
Expand Down
12 changes: 6 additions & 6 deletions tests/Yaml/ValidationPackage.Tests.fs
Original file line number Diff line number Diff line change
Expand Up @@ -12,20 +12,20 @@ let tests_extended = testList "extended" [

let vp_yaml_string = """name: name
version: version
""" .ReplaceLineEndings(System.Environment.NewLine)
"""

let vp_no_version_yaml_string = """name: name
""" .ReplaceLineEndings(System.Environment.NewLine)
"""

testList "encoder (toYamlString)" [
testCase "name and version" <| fun _ ->
let actual = ValidationPackage.encoder vp |> Encode.toYamlString 2
let expected = vp_yaml_string
Expect.equal actual expected ""
Expect.trimEqual actual expected ""
testCase "no version" <| fun _ ->
let actual = ValidationPackage.encoder vp_no_version |> Encode.toYamlString 2
let expected = vp_no_version_yaml_string
Expect.equal actual expected ""
Expect.trimEqual actual expected ""
]
testList "decoder (fromYamlString)" [
testCase "name and version" <| fun _ ->
Expand All @@ -45,15 +45,15 @@ version: version
|> ValidationPackage.encoder
|> Encode.toYamlString 2
let expected = vp_yaml_string
Expect.equal actual expected ""
Expect.trimEqual actual expected ""
testCase "no version" <| fun _ ->
let actual =
vp_no_version_yaml_string
|> Decode.fromYamlString ValidationPackage.decoder
|> ValidationPackage.encoder
|> Encode.toYamlString 2
let expected = vp_no_version_yaml_string
Expect.equal actual expected ""
Expect.trimEqual actual expected ""
]
testList "roundtrip (toYamlString >> fromYamlString)" [
testCase "name and version" <| fun _ ->
Expand Down
12 changes: 6 additions & 6 deletions tests/Yaml/ValidationPackageConfig.Tests.fs
Original file line number Diff line number Diff line change
Expand Up @@ -20,25 +20,25 @@ validation_packages:
version: version
-
name: name
""" .ReplaceLineEndings(System.Environment.NewLine)
"""

let vpc_no_specs_yaml_string = """validation_packages:
-
name: name
version: version
-
name: name
""" .ReplaceLineEndings(System.Environment.NewLine)
"""

testList "encoder (toYamlString)" [
testCase "no specification validation" <| fun _ ->
let actual = ValidationPackagesConfig.encoder vpc |> Encode.toYamlString 2
let expected = vpc_yaml_string
Expect.equal actual expected ""
Expect.trimEqual actual expected ""
testCase "with specification validation" <| fun _ ->
let actual = ValidationPackagesConfig.encoder vpc_no_specs |> Encode.toYamlString 2
let expected = vpc_no_specs_yaml_string
Expect.equal actual expected ""
Expect.trimEqual actual expected ""
]
testList "decoder (fromYamlString)" [
testCase "name and version" <| fun _ ->
Expand All @@ -58,15 +58,15 @@ validation_packages:
|> ValidationPackagesConfig.encoder
|> Encode.toYamlString 2
let expected = vpc_yaml_string
Expect.equal actual expected ""
Expect.trimEqual actual expected ""
testCase "no version" <| fun _ ->
let actual =
vpc_no_specs_yaml_string
|> Decode.fromYamlString ValidationPackagesConfig.decoder
|> ValidationPackagesConfig.encoder
|> Encode.toYamlString 2
let expected = vpc_no_specs_yaml_string
Expect.equal actual expected ""
Expect.trimEqual actual expected ""
]
testList "roundtrip (toYamlString >> fromYamlString)" [
testCase "name and version" <| fun _ ->
Expand Down

0 comments on commit 55209cb

Please sign in to comment.