diff --git a/FPinFSharp.sln b/FPinFSharp.sln index f9b480e..efa9cbc 100644 --- a/FPinFSharp.sln +++ b/FPinFSharp.sln @@ -5,11 +5,15 @@ VisualStudioVersion = 17.0.31903.59 MinimumVisualStudioVersion = 10.0.40219.1 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{65D38C0C-ABFD-4864-840A-EBFCB0029E47}" EndProject -Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FPinFSharp.Exercises", "src\FPinFSharp.Exercises\FPinFSharp.Exercises.fsproj", "{FA1E119E-E88E-40C4-B48C-E98A86D3320D}" -EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{850A8FBE-A6C5-4DC3-B1A5-DF8B689765CA}" EndProject -Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FPinFSharp.Exercises.UnitTests", "tests\FPinFSharp.Exercises.UnitTests\FPinFSharp.Exercises.UnitTests.fsproj", "{2327BD8E-3252-4B01-930D-6A76E9F2F5FF}" +Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FPinFSharp.Chapter_01", "src\FPinFSharp.Chapter_01\FPinFSharp.Chapter_01.fsproj", "{350551A5-9B67-46E7-871A-C5435E1E0A5C}" +EndProject +Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FPinFSharp.Chapter_02", "src\FPinFSharp.Chapter_02\FPinFSharp.Chapter_02.fsproj", "{5110106B-8410-43BF-94C8-415BB799A284}" +EndProject +Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FPinFSharp.Chapter_01.UnitTests", "tests\FPinFSharp.Chapter_01.UnitTests\FPinFSharp.Chapter_01.UnitTests.fsproj", "{6E322C64-EE93-45B9-BC53-33F08304E2DC}" +EndProject +Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FPinFSharp.Chapter_02.UnitTests", "tests\FPinFSharp.Chapter_02.UnitTests\FPinFSharp.Chapter_02.UnitTests.fsproj", "{41CD39C3-020F-4187-BEB0-855CB3A3BE44}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -20,17 +24,27 @@ Global HideSolutionNode = FALSE EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {FA1E119E-E88E-40C4-B48C-E98A86D3320D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {FA1E119E-E88E-40C4-B48C-E98A86D3320D}.Debug|Any CPU.Build.0 = Debug|Any CPU - {FA1E119E-E88E-40C4-B48C-E98A86D3320D}.Release|Any CPU.ActiveCfg = Release|Any CPU - {FA1E119E-E88E-40C4-B48C-E98A86D3320D}.Release|Any CPU.Build.0 = Release|Any CPU - {2327BD8E-3252-4B01-930D-6A76E9F2F5FF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2327BD8E-3252-4B01-930D-6A76E9F2F5FF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2327BD8E-3252-4B01-930D-6A76E9F2F5FF}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2327BD8E-3252-4B01-930D-6A76E9F2F5FF}.Release|Any CPU.Build.0 = Release|Any CPU + {350551A5-9B67-46E7-871A-C5435E1E0A5C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {350551A5-9B67-46E7-871A-C5435E1E0A5C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {350551A5-9B67-46E7-871A-C5435E1E0A5C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {350551A5-9B67-46E7-871A-C5435E1E0A5C}.Release|Any CPU.Build.0 = Release|Any CPU + {5110106B-8410-43BF-94C8-415BB799A284}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5110106B-8410-43BF-94C8-415BB799A284}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5110106B-8410-43BF-94C8-415BB799A284}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5110106B-8410-43BF-94C8-415BB799A284}.Release|Any CPU.Build.0 = Release|Any CPU + {6E322C64-EE93-45B9-BC53-33F08304E2DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6E322C64-EE93-45B9-BC53-33F08304E2DC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6E322C64-EE93-45B9-BC53-33F08304E2DC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6E322C64-EE93-45B9-BC53-33F08304E2DC}.Release|Any CPU.Build.0 = Release|Any CPU + {41CD39C3-020F-4187-BEB0-855CB3A3BE44}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {41CD39C3-020F-4187-BEB0-855CB3A3BE44}.Debug|Any CPU.Build.0 = Debug|Any CPU + {41CD39C3-020F-4187-BEB0-855CB3A3BE44}.Release|Any CPU.ActiveCfg = Release|Any CPU + {41CD39C3-020F-4187-BEB0-855CB3A3BE44}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(NestedProjects) = preSolution - {FA1E119E-E88E-40C4-B48C-E98A86D3320D} = {65D38C0C-ABFD-4864-840A-EBFCB0029E47} - {2327BD8E-3252-4B01-930D-6A76E9F2F5FF} = {850A8FBE-A6C5-4DC3-B1A5-DF8B689765CA} + {350551A5-9B67-46E7-871A-C5435E1E0A5C} = {65D38C0C-ABFD-4864-840A-EBFCB0029E47} + {5110106B-8410-43BF-94C8-415BB799A284} = {65D38C0C-ABFD-4864-840A-EBFCB0029E47} + {6E322C64-EE93-45B9-BC53-33F08304E2DC} = {850A8FBE-A6C5-4DC3-B1A5-DF8B689765CA} + {41CD39C3-020F-4187-BEB0-855CB3A3BE44} = {850A8FBE-A6C5-4DC3-B1A5-DF8B689765CA} EndGlobalSection EndGlobal diff --git a/src/FPinFSharp.Exercises/Chapter_01/Description.md b/src/FPinFSharp.Chapter_01/Description.md similarity index 100% rename from src/FPinFSharp.Exercises/Chapter_01/Description.md rename to src/FPinFSharp.Chapter_01/Description.md diff --git a/src/FPinFSharp.Exercises/Chapter_01/Exercises.fs b/src/FPinFSharp.Chapter_01/Exercises.fs similarity index 98% rename from src/FPinFSharp.Exercises/Chapter_01/Exercises.fs rename to src/FPinFSharp.Chapter_01/Exercises.fs index db58eea..a2d0ea1 100644 --- a/src/FPinFSharp.Exercises/Chapter_01/Exercises.fs +++ b/src/FPinFSharp.Chapter_01/Exercises.fs @@ -1,4 +1,4 @@ -namespace FPinFSharp.Exercises.Chapter_01 +namespace FPinFSharp.Chapter_01 open System; diff --git a/src/FPinFSharp.Chapter_01/FPinFSharp.Chapter_01.fsproj b/src/FPinFSharp.Chapter_01/FPinFSharp.Chapter_01.fsproj new file mode 100644 index 0000000..77f65ee --- /dev/null +++ b/src/FPinFSharp.Chapter_01/FPinFSharp.Chapter_01.fsproj @@ -0,0 +1,22 @@ + + + + net8.0 + true + FPinFSharp.Chapter_01 + + + + + + + + + + + + + + + + diff --git a/src/FPinFSharp.Exercises/Chapter_01/Section_01_01.fs b/src/FPinFSharp.Chapter_01/Section_01.fs similarity index 82% rename from src/FPinFSharp.Exercises/Chapter_01/Section_01_01.fs rename to src/FPinFSharp.Chapter_01/Section_01.fs index 2d35ef0..eff359d 100644 --- a/src/FPinFSharp.Exercises/Chapter_01/Section_01_01.fs +++ b/src/FPinFSharp.Chapter_01/Section_01.fs @@ -1,7 +1,7 @@ -namespace FPinFSharp.Exercises.Chapter_01 +namespace FPinFSharp.Chapter_01 // 1.1 Values, types, identifiers and declarations. -module Section_01_01 = +module Section_01 = // The function name is `double`, the argument is `x`, which has type `int`, and the return value is of type `int`. let double x = diff --git a/src/FPinFSharp.Exercises/Chapter_01/Section_01_02.fs b/src/FPinFSharp.Chapter_01/Section_02.fs similarity index 67% rename from src/FPinFSharp.Exercises/Chapter_01/Section_01_02.fs rename to src/FPinFSharp.Chapter_01/Section_02.fs index 224d508..2da2a1b 100644 --- a/src/FPinFSharp.Exercises/Chapter_01/Section_01_02.fs +++ b/src/FPinFSharp.Chapter_01/Section_02.fs @@ -1,9 +1,9 @@ -namespace FPinFSharp.Exercises.Chapter_01 +namespace FPinFSharp.Chapter_01 -open FPinFSharp.Exercises.Chapter_01.Section_01_01 +open FPinFSharp.Chapter_01.Section_01 // 1.2 Simple function declarations. -module Section_01_02 = +module Section_02 = let calculateCircleArea (radius: int) = System.Math.PI * float (radius * radius) diff --git a/src/FPinFSharp.Exercises/Chapter_01/Section_01_03.fs b/src/FPinFSharp.Chapter_01/Section_03.fs similarity index 85% rename from src/FPinFSharp.Exercises/Chapter_01/Section_01_03.fs rename to src/FPinFSharp.Chapter_01/Section_03.fs index d579b48..6d57006 100644 --- a/src/FPinFSharp.Exercises/Chapter_01/Section_01_03.fs +++ b/src/FPinFSharp.Chapter_01/Section_03.fs @@ -1,7 +1,7 @@ -namespace FPinFSharp.Exercises.Chapter_01 +namespace FPinFSharp.Chapter_01 // 1.3 Anonymous functions. Function expressions. -module Section_01_03 = +module Section_03 = let calculateCircleAreaUsingAnonymousFunction (radius: int) = let anonymousFunction = fun r -> System.Math.PI * r * r anonymousFunction radius diff --git a/src/FPinFSharp.Exercises/Chapter_01/Section_01_04.fs b/src/FPinFSharp.Chapter_01/Section_04.fs similarity index 93% rename from src/FPinFSharp.Exercises/Chapter_01/Section_01_04.fs rename to src/FPinFSharp.Chapter_01/Section_04.fs index acd48e9..b0493eb 100644 --- a/src/FPinFSharp.Exercises/Chapter_01/Section_01_04.fs +++ b/src/FPinFSharp.Chapter_01/Section_04.fs @@ -1,7 +1,7 @@ -namespace FPinFSharp.Exercises.Chapter_01 +namespace FPinFSharp.Chapter_01 // 1.4 Recursion. -module Section_01_04 = +module Section_04 = let rec factorial x = match x with | 0 -> 1 diff --git a/src/FPinFSharp.Exercises/Chapter_01/Section_01_05.fs b/src/FPinFSharp.Chapter_01/Section_05.fs similarity index 91% rename from src/FPinFSharp.Exercises/Chapter_01/Section_01_05.fs rename to src/FPinFSharp.Chapter_01/Section_05.fs index 5d66f02..e3a20c1 100644 --- a/src/FPinFSharp.Exercises/Chapter_01/Section_01_05.fs +++ b/src/FPinFSharp.Chapter_01/Section_05.fs @@ -1,7 +1,7 @@ -namespace FPinFSharp.Exercises.Chapter_01 +namespace FPinFSharp.Chapter_01 // 1.5 Pairs. -module Section_01_05 = +module Section_05 = // Let's define a custom complex type that represent a point. type Point = { X: int; Y: int } diff --git a/src/FPinFSharp.Exercises/Chapter_01/Section_01_06.fs b/src/FPinFSharp.Chapter_01/Section_06.fs similarity index 88% rename from src/FPinFSharp.Exercises/Chapter_01/Section_01_06.fs rename to src/FPinFSharp.Chapter_01/Section_06.fs index 516dc4e..eab4bee 100644 --- a/src/FPinFSharp.Exercises/Chapter_01/Section_01_06.fs +++ b/src/FPinFSharp.Chapter_01/Section_06.fs @@ -1,9 +1,9 @@ -namespace FPinFSharp.Exercises.Chapter_01 +namespace FPinFSharp.Chapter_01 -open FPinFSharp.Exercises.Chapter_01.Section_01_01 +open FPinFSharp.Chapter_01.Section_01 // 1.6 Types and type checking. -module Section_01_06 = +module Section_06 = // F# will try to infer a type for each value, expression and declaration entered. // If the system can infer a type for the input, then the input is accepted by the system. diff --git a/src/FPinFSharp.Exercises/Chapter_01/Section_01_07.md b/src/FPinFSharp.Chapter_01/Section_07.md similarity index 100% rename from src/FPinFSharp.Exercises/Chapter_01/Section_01_07.md rename to src/FPinFSharp.Chapter_01/Section_07.md diff --git a/src/FPinFSharp.Exercises/Chapter_01/Section_01_08.fs b/src/FPinFSharp.Chapter_01/Section_08.fs similarity index 85% rename from src/FPinFSharp.Exercises/Chapter_01/Section_01_08.fs rename to src/FPinFSharp.Chapter_01/Section_08.fs index 629920d..651c343 100644 --- a/src/FPinFSharp.Exercises/Chapter_01/Section_01_08.fs +++ b/src/FPinFSharp.Chapter_01/Section_08.fs @@ -1,7 +1,7 @@ -namespace FPinFSharp.Exercises.Chapter_01 +namespace FPinFSharp.Chapter_01 // 1.8 Euclid’s algorithm (for computing the greatest common divisor of two natural numbers). -module Section_01_08 = +module Section_08 = // Euclid's algorithm is implemented by using pattern matching to handle the base case (when `m` is 0) // and recursively updating the values of `m` and `n` until the base case is reached. diff --git a/src/FPinFSharp.Exercises/Chapter_02/Description.md b/src/FPinFSharp.Chapter_02/Description.md similarity index 100% rename from src/FPinFSharp.Exercises/Chapter_02/Description.md rename to src/FPinFSharp.Chapter_02/Description.md diff --git a/src/FPinFSharp.Exercises/Chapter_02/Exercises.fs b/src/FPinFSharp.Chapter_02/Exercises.fs similarity index 98% rename from src/FPinFSharp.Exercises/Chapter_02/Exercises.fs rename to src/FPinFSharp.Chapter_02/Exercises.fs index 78aa0de..94434b3 100644 --- a/src/FPinFSharp.Exercises/Chapter_02/Exercises.fs +++ b/src/FPinFSharp.Chapter_02/Exercises.fs @@ -1,4 +1,4 @@ -namespace FPinFSharp.Exercises.Chapter_02 +namespace FPinFSharp.Chapter_02 open System; diff --git a/src/FPinFSharp.Chapter_02/FPinFSharp.Chapter_02.fsproj b/src/FPinFSharp.Chapter_02/FPinFSharp.Chapter_02.fsproj new file mode 100644 index 0000000..2f6dbd5 --- /dev/null +++ b/src/FPinFSharp.Chapter_02/FPinFSharp.Chapter_02.fsproj @@ -0,0 +1,26 @@ + + + + net8.0 + true + FPinFSharp.Chapter_02 + + + + + + + + + + + + + + + + + + + + diff --git a/src/FPinFSharp.Exercises/Chapter_02/Section_02_01.fs b/src/FPinFSharp.Chapter_02/Section_01.fs similarity index 98% rename from src/FPinFSharp.Exercises/Chapter_02/Section_02_01.fs rename to src/FPinFSharp.Chapter_02/Section_01.fs index 1f5a9e6..b3b303f 100644 --- a/src/FPinFSharp.Exercises/Chapter_02/Section_02_01.fs +++ b/src/FPinFSharp.Chapter_02/Section_01.fs @@ -1,10 +1,10 @@ -namespace FPinFSharp.Exercises.Chapter_02 +namespace FPinFSharp.Chapter_02 open System open System.Globalization // 2.1 Numbers. Truth values. The unit type -module Section_02_01 = +module Section_01 = let tryParseInt (value: string) = match Int32.TryParse(value) with diff --git a/src/FPinFSharp.Exercises/Chapter_02/Section_02_02.fs b/src/FPinFSharp.Chapter_02/Section_02.fs similarity index 80% rename from src/FPinFSharp.Exercises/Chapter_02/Section_02_02.fs rename to src/FPinFSharp.Chapter_02/Section_02.fs index f91ebdf..cbe4ccb 100644 --- a/src/FPinFSharp.Exercises/Chapter_02/Section_02_02.fs +++ b/src/FPinFSharp.Chapter_02/Section_02.fs @@ -1,7 +1,7 @@ -namespace FPinFSharp.Exercises.Chapter_02 +namespace FPinFSharp.Chapter_02 // 2.2 Operator precedence and association -module Section_02_02 = +module Section_02 = let add a b = a + b diff --git a/src/FPinFSharp.Exercises/Chapter_02/Section_02_03.fs b/src/FPinFSharp.Chapter_02/Section_03.fs similarity index 91% rename from src/FPinFSharp.Exercises/Chapter_02/Section_02_03.fs rename to src/FPinFSharp.Chapter_02/Section_03.fs index ea72151..e6c4ec9 100644 --- a/src/FPinFSharp.Exercises/Chapter_02/Section_02_03.fs +++ b/src/FPinFSharp.Chapter_02/Section_03.fs @@ -1,9 +1,9 @@ -namespace FPinFSharp.Exercises.Chapter_02 +namespace FPinFSharp.Chapter_02 open System // 2.3 Characters and strings -module Section_02_03 = +module Section_03 = // A string is a sequence of characters. Strings are values of the type string. // A string is written inside enclosing quotes that are not part of the string. diff --git a/src/FPinFSharp.Exercises/Chapter_02/Section_02_04.fs b/src/FPinFSharp.Chapter_02/Section_04.fs similarity index 74% rename from src/FPinFSharp.Exercises/Chapter_02/Section_02_04.fs rename to src/FPinFSharp.Chapter_02/Section_04.fs index be8ba6a..971e5ac 100644 --- a/src/FPinFSharp.Exercises/Chapter_02/Section_02_04.fs +++ b/src/FPinFSharp.Chapter_02/Section_04.fs @@ -1,7 +1,7 @@ -namespace FPinFSharp.Exercises.Chapter_02 +namespace FPinFSharp.Chapter_02 // 2.4 If-then-else expressions -module Section_02_04 = +module Section_04 = // Please see Chapter_01_08.fs for the additional information. let rec gcd (m, n) = diff --git a/src/FPinFSharp.Exercises/Chapter_02/Section_02_05.fs b/src/FPinFSharp.Chapter_02/Section_05.fs similarity index 97% rename from src/FPinFSharp.Exercises/Chapter_02/Section_02_05.fs rename to src/FPinFSharp.Chapter_02/Section_05.fs index 48fb330..47cec30 100644 --- a/src/FPinFSharp.Exercises/Chapter_02/Section_02_05.fs +++ b/src/FPinFSharp.Chapter_02/Section_05.fs @@ -1,7 +1,7 @@ -namespace FPinFSharp.Exercises.Chapter_02 +namespace FPinFSharp.Chapter_02 // 2.5 Overloaded functions and operators -module Section_02_05 = +module Section_05 = // A name or symbol for a function or operator is overloaded if it has different meanings // when applied to arguments or operands of different types. diff --git a/src/FPinFSharp.Exercises/Chapter_02/Section_02_06.fs b/src/FPinFSharp.Chapter_02/Section_06.fs similarity index 95% rename from src/FPinFSharp.Exercises/Chapter_02/Section_02_06.fs rename to src/FPinFSharp.Chapter_02/Section_06.fs index 60024b3..74f4c71 100644 --- a/src/FPinFSharp.Exercises/Chapter_02/Section_02_06.fs +++ b/src/FPinFSharp.Chapter_02/Section_06.fs @@ -1,7 +1,7 @@ -namespace FPinFSharp.Exercises.Chapter_02 +namespace FPinFSharp.Chapter_02 // 2.5 Type inference -module Section_02_06 = +module Section_06 = // Consider the function 'power'. // Please note: there is already a power operator '**' in F#, diff --git a/src/FPinFSharp.Exercises/Chapter_02/Section_02_07.fs b/src/FPinFSharp.Chapter_02/Section_07.fs similarity index 95% rename from src/FPinFSharp.Exercises/Chapter_02/Section_02_07.fs rename to src/FPinFSharp.Chapter_02/Section_07.fs index 7323678..1360e60 100644 --- a/src/FPinFSharp.Exercises/Chapter_02/Section_02_07.fs +++ b/src/FPinFSharp.Chapter_02/Section_07.fs @@ -1,7 +1,7 @@ -namespace FPinFSharp.Exercises.Chapter_02 +namespace FPinFSharp.Chapter_02 // 2.7 Functions are first-class citizens (higher-order functions) -module Section_02_07 = +module Section_07 = // # The value of a function can be a function. // Function application associates to the left. diff --git a/src/FPinFSharp.Exercises/Chapter_02/Section_02_08.fs b/src/FPinFSharp.Chapter_02/Section_08.fs similarity index 91% rename from src/FPinFSharp.Exercises/Chapter_02/Section_02_08.fs rename to src/FPinFSharp.Chapter_02/Section_08.fs index 38b4d36..2a32c7d 100644 --- a/src/FPinFSharp.Exercises/Chapter_02/Section_02_08.fs +++ b/src/FPinFSharp.Chapter_02/Section_08.fs @@ -1,7 +1,7 @@ -namespace FPinFSharp.Exercises.Chapter_02 +namespace FPinFSharp.Chapter_02 // 2.7 Closures -module Section_02_08 = +module Section_08 = // A closure gives the means of explaining a value that is a function. A closure is a triple: (x, exp, env). // Where 'x' is an argument identifier, diff --git a/src/FPinFSharp.Exercises/Chapter_02/Section_02_09.fs b/src/FPinFSharp.Chapter_02/Section_09.fs similarity index 93% rename from src/FPinFSharp.Exercises/Chapter_02/Section_02_09.fs rename to src/FPinFSharp.Chapter_02/Section_09.fs index fe9596d..d99a1d6 100644 --- a/src/FPinFSharp.Exercises/Chapter_02/Section_02_09.fs +++ b/src/FPinFSharp.Chapter_02/Section_09.fs @@ -1,7 +1,7 @@ -namespace FPinFSharp.Exercises.Chapter_02 +namespace FPinFSharp.Chapter_02 // 2.9 Declaring prefix and infix operators -module Section_02_09 = +module Section_09 = // Prefix operators are expected to be placed in front of an operand or operands, much like a function. // Infix operators are expected to be placed between the two operands. diff --git a/src/FPinFSharp.Exercises/Chapter_02/Section_02_10.fs b/src/FPinFSharp.Chapter_02/Section_10.fs similarity index 92% rename from src/FPinFSharp.Exercises/Chapter_02/Section_02_10.fs rename to src/FPinFSharp.Chapter_02/Section_10.fs index 5ba99d0..d262df8 100644 --- a/src/FPinFSharp.Exercises/Chapter_02/Section_02_10.fs +++ b/src/FPinFSharp.Chapter_02/Section_10.fs @@ -1,9 +1,9 @@ -namespace FPinFSharp.Exercises.Chapter_02 +namespace FPinFSharp.Chapter_02 open System // 2.10 Equality and ordering -module Section_02_10 = +module Section_10 = // It is not defined on functions (closures): // cos = sin;; diff --git a/src/FPinFSharp.Exercises/Chapter_02/Section_02_11.fs b/src/FPinFSharp.Chapter_02/Section_11.fs similarity index 85% rename from src/FPinFSharp.Exercises/Chapter_02/Section_02_11.fs rename to src/FPinFSharp.Chapter_02/Section_11.fs index b6083de..5f3ad06 100644 --- a/src/FPinFSharp.Exercises/Chapter_02/Section_02_11.fs +++ b/src/FPinFSharp.Chapter_02/Section_11.fs @@ -1,9 +1,9 @@ -namespace FPinFSharp.Exercises.Chapter_02 +namespace FPinFSharp.Chapter_02 open System // 2.11 Function application operators |> and <| -module Section_02_11 = +module Section_11 = // `arg |> myFunction` means `myFunction arg` // `myFunction <| arg` means `myFunction arg` diff --git a/src/FPinFSharp.Exercises/Chapter_02/Section_02_12.fs b/src/FPinFSharp.Chapter_02/Section_12.fs similarity index 98% rename from src/FPinFSharp.Exercises/Chapter_02/Section_02_12.fs rename to src/FPinFSharp.Chapter_02/Section_12.fs index 3983c5f..6a073d1 100644 --- a/src/FPinFSharp.Exercises/Chapter_02/Section_02_12.fs +++ b/src/FPinFSharp.Chapter_02/Section_12.fs @@ -1,7 +1,7 @@ -namespace FPinFSharp.Exercises.Chapter_02 +namespace FPinFSharp.Chapter_02 // 2.12 Summary of the basic types -module Section_02_12 = +module Section_12 = // Helpers. let formatNumeric (values: 'T * 'T) : string * string = diff --git a/src/FPinFSharp.Exercises/Chapter_03/Description.md b/src/FPinFSharp.Exercises/Chapter_03/Description.md deleted file mode 100644 index 48d3e4d..0000000 --- a/src/FPinFSharp.Exercises/Chapter_03/Description.md +++ /dev/null @@ -1,3 +0,0 @@ -### Chapter 03: Tuples, records and tagged values - -// TODO: add details. \ No newline at end of file diff --git a/src/FPinFSharp.Exercises/FPinFSharp.Exercises.fsproj b/src/FPinFSharp.Exercises/FPinFSharp.Exercises.fsproj deleted file mode 100644 index e48436c..0000000 --- a/src/FPinFSharp.Exercises/FPinFSharp.Exercises.fsproj +++ /dev/null @@ -1,41 +0,0 @@ - - - - net8.0 - true - FPinFSharp.Exercises - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Exercises_Tests.fs b/tests/FPinFSharp.Chapter_01.UnitTests/Exercises_Tests.fs similarity index 95% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Exercises_Tests.fs rename to tests/FPinFSharp.Chapter_01.UnitTests/Exercises_Tests.fs index 0b3f0e6..307ba12 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Exercises_Tests.fs +++ b/tests/FPinFSharp.Chapter_01.UnitTests/Exercises_Tests.fs @@ -1,6 +1,6 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_01 +namespace FPinFSharp.Chapter_01.UnitTests -open FPinFSharp.Exercises.Chapter_01.Exercises +open FPinFSharp.Chapter_01.Exercises open Xunit module Exercises_Tests = diff --git a/tests/FPinFSharp.Chapter_01.UnitTests/FPinFSharp.Chapter_01.UnitTests.fsproj b/tests/FPinFSharp.Chapter_01.UnitTests/FPinFSharp.Chapter_01.UnitTests.fsproj new file mode 100644 index 0000000..ef5afd0 --- /dev/null +++ b/tests/FPinFSharp.Chapter_01.UnitTests/FPinFSharp.Chapter_01.UnitTests.fsproj @@ -0,0 +1,46 @@ + + + + net8.0 + false + false + true + FPinFSharp.Chapter_01.UnitTests + + + + + + + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + + + + + + + + + + + + + + + diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_01_Tests.fs b/tests/FPinFSharp.Chapter_01.UnitTests/Section_01_Tests.fs similarity index 75% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_01_Tests.fs rename to tests/FPinFSharp.Chapter_01.UnitTests/Section_01_Tests.fs index ab650b3..87a1848 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_01_Tests.fs +++ b/tests/FPinFSharp.Chapter_01.UnitTests/Section_01_Tests.fs @@ -1,9 +1,9 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_01 +namespace FPinFSharp.Chapter_01.UnitTests -open FPinFSharp.Exercises.Chapter_01.Section_01_01 +open FPinFSharp.Chapter_01.Section_01 open Xunit -module Section_01_01_Tests = +module Section_01_Tests = [] let ``Should double a number`` () = diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_02_Tests.fs b/tests/FPinFSharp.Chapter_01.UnitTests/Section_02_Tests.fs similarity index 80% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_02_Tests.fs rename to tests/FPinFSharp.Chapter_01.UnitTests/Section_02_Tests.fs index ad8d416..f9a7aa2 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_02_Tests.fs +++ b/tests/FPinFSharp.Chapter_01.UnitTests/Section_02_Tests.fs @@ -1,9 +1,9 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_01 +namespace FPinFSharp.Chapter_01.UnitTests -open FPinFSharp.Exercises.Chapter_01.Section_01_02 +open FPinFSharp.Chapter_01.Section_02 open Xunit -module Section_01_02_Tests = +module Section_02_Tests = [] let ``Should calculate a circle area`` () = diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_03_Tests.fs b/tests/FPinFSharp.Chapter_01.UnitTests/Section_03_Tests.fs similarity index 84% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_03_Tests.fs rename to tests/FPinFSharp.Chapter_01.UnitTests/Section_03_Tests.fs index 9d63cda..070b631 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_03_Tests.fs +++ b/tests/FPinFSharp.Chapter_01.UnitTests/Section_03_Tests.fs @@ -1,10 +1,10 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_01 +namespace FPinFSharp.Chapter_01.UnitTests -open FPinFSharp.Exercises.UnitTests -open FPinFSharp.Exercises.Chapter_01.Section_01_03 +open FPinFSharp.Chapter_01.Section_03 +open FPinFSharp.Chapter_01.UnitTests open Xunit -module Section_01_03_Tests = +module Section_03_Tests = [] let ``Should calculate a circle area (v3)`` () = diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_04_Tests.fs b/tests/FPinFSharp.Chapter_01.UnitTests/Section_04_Tests.fs similarity index 61% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_04_Tests.fs rename to tests/FPinFSharp.Chapter_01.UnitTests/Section_04_Tests.fs index 1006a79..e760642 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_04_Tests.fs +++ b/tests/FPinFSharp.Chapter_01.UnitTests/Section_04_Tests.fs @@ -1,9 +1,9 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_01 +namespace FPinFSharp.Chapter_01.UnitTests -open FPinFSharp.Exercises.Chapter_01.Section_01_04 +open FPinFSharp.Chapter_01.Section_04 open Xunit -module Section_01_04_Tests = +module Section_04_Tests = [] let ``Should calculate factorial 5`` () = diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_05_Tests.fs b/tests/FPinFSharp.Chapter_01.UnitTests/Section_05_Tests.fs similarity index 82% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_05_Tests.fs rename to tests/FPinFSharp.Chapter_01.UnitTests/Section_05_Tests.fs index 550f92b..4d56f5f 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_05_Tests.fs +++ b/tests/FPinFSharp.Chapter_01.UnitTests/Section_05_Tests.fs @@ -1,9 +1,9 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_01 +namespace FPinFSharp.Chapter_01.UnitTests -open FPinFSharp.Exercises.Chapter_01.Section_01_05 +open FPinFSharp.Chapter_01.Section_05 open Xunit -module Section_01_05_Tests = +module Section_05_Tests = [] let ``Should get a pair of coordinates from a point`` () = diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_06_Tests.fs b/tests/FPinFSharp.Chapter_01.UnitTests/Section_06_Tests.fs similarity index 62% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_06_Tests.fs rename to tests/FPinFSharp.Chapter_01.UnitTests/Section_06_Tests.fs index 2463206..9480ce5 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_06_Tests.fs +++ b/tests/FPinFSharp.Chapter_01.UnitTests/Section_06_Tests.fs @@ -1,9 +1,9 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_01 +namespace FPinFSharp.Chapter_01.UnitTests -open FPinFSharp.Exercises.Chapter_01.Section_01_06 +open FPinFSharp.Chapter_01.Section_06 open Xunit -module Section_01_06_Tests = +module Section_06_Tests = [] let ``Should triple 10 to get 1000`` () = diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_08_Tests.fs b/tests/FPinFSharp.Chapter_01.UnitTests/Section_08_Tests.fs similarity index 73% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_08_Tests.fs rename to tests/FPinFSharp.Chapter_01.UnitTests/Section_08_Tests.fs index dc87dc9..f4b6ee5 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_01/Section_01_08_Tests.fs +++ b/tests/FPinFSharp.Chapter_01.UnitTests/Section_08_Tests.fs @@ -1,9 +1,9 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_01 +namespace FPinFSharp.Chapter_01.UnitTests -open FPinFSharp.Exercises.Chapter_01.Section_01_08 +open FPinFSharp.Chapter_01.Section_08 open Xunit -module Section_01_08_Tests = +module Section_08_Tests = [] [] diff --git a/tests/FPinFSharp.Exercises.UnitTests/TestDataBase.fs b/tests/FPinFSharp.Chapter_01.UnitTests/TestDataBase.fs similarity index 85% rename from tests/FPinFSharp.Exercises.UnitTests/TestDataBase.fs rename to tests/FPinFSharp.Chapter_01.UnitTests/TestDataBase.fs index 4319006..3b3304e 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/TestDataBase.fs +++ b/tests/FPinFSharp.Chapter_01.UnitTests/TestDataBase.fs @@ -1,4 +1,4 @@ -namespace FPinFSharp.Exercises.UnitTests +namespace FPinFSharp.Chapter_01.UnitTests type TestDataBase(generator : obj [] seq) = diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Exercises_Tests.fs b/tests/FPinFSharp.Chapter_02.UnitTests/Exercises_Tests.fs similarity index 96% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Exercises_Tests.fs rename to tests/FPinFSharp.Chapter_02.UnitTests/Exercises_Tests.fs index 77b08ca..7d42468 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Exercises_Tests.fs +++ b/tests/FPinFSharp.Chapter_02.UnitTests/Exercises_Tests.fs @@ -1,6 +1,6 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_02 +namespace FPinFSharp.Chapter_02.UnitTests -open FPinFSharp.Exercises.Chapter_02.Exercises +open FPinFSharp.Chapter_02.Exercises open Shouldly open Xunit diff --git a/tests/FPinFSharp.Chapter_02.UnitTests/FPinFSharp.Chapter_02.UnitTests.fsproj b/tests/FPinFSharp.Chapter_02.UnitTests/FPinFSharp.Chapter_02.UnitTests.fsproj new file mode 100644 index 0000000..84cd7d0 --- /dev/null +++ b/tests/FPinFSharp.Chapter_02.UnitTests/FPinFSharp.Chapter_02.UnitTests.fsproj @@ -0,0 +1,51 @@ + + + + net8.0 + false + false + true + FPinFSharp.Chapter_02.UnitTests + + + + + + + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_01_Tests.fs b/tests/FPinFSharp.Chapter_02.UnitTests/Section_01_Tests.fs similarity index 96% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_01_Tests.fs rename to tests/FPinFSharp.Chapter_02.UnitTests/Section_01_Tests.fs index 8de097b..305932f 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_01_Tests.fs +++ b/tests/FPinFSharp.Chapter_02.UnitTests/Section_01_Tests.fs @@ -1,10 +1,10 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_02 +namespace FPinFSharp.Chapter_02.UnitTests open System; -open FPinFSharp.Exercises.Chapter_02.Section_02_01 +open FPinFSharp.Chapter_02.Section_01 open Xunit -module Section_02_01_Tests = +module Section_01_Tests = [] [] diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_02_Tests.fs b/tests/FPinFSharp.Chapter_02.UnitTests/Section_02_Tests.fs similarity index 89% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_02_Tests.fs rename to tests/FPinFSharp.Chapter_02.UnitTests/Section_02_Tests.fs index 454d97f..84b0a28 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_02_Tests.fs +++ b/tests/FPinFSharp.Chapter_02.UnitTests/Section_02_Tests.fs @@ -1,9 +1,9 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_02 +namespace FPinFSharp.Chapter_02.UnitTests -open FPinFSharp.Exercises.Chapter_02.Section_02_02 +open FPinFSharp.Chapter_02.Section_02 open Xunit -module Section_02_02_Tests = +module Section_02_Tests = [] [] diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_03_Tests.fs b/tests/FPinFSharp.Chapter_02.UnitTests/Section_03_Tests.fs similarity index 78% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_03_Tests.fs rename to tests/FPinFSharp.Chapter_02.UnitTests/Section_03_Tests.fs index a0c6fea..cbc38ff 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_03_Tests.fs +++ b/tests/FPinFSharp.Chapter_02.UnitTests/Section_03_Tests.fs @@ -1,11 +1,11 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_02 +namespace FPinFSharp.Chapter_02.UnitTests -open FPinFSharp.Exercises.UnitTests.Extensions -open FPinFSharp.Exercises.Chapter_02.Section_02_03 +open FPinFSharp.Chapter_02.UnitTests +open FPinFSharp.Chapter_02.Section_03 open Shouldly open Xunit -module Section_02_03_Tests = +module Section_03_Tests = [] let ``Should get a random letter`` () = diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_04_Tests.fs b/tests/FPinFSharp.Chapter_02.UnitTests/Section_04_Tests.fs similarity index 74% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_04_Tests.fs rename to tests/FPinFSharp.Chapter_02.UnitTests/Section_04_Tests.fs index aacebec..90bc3c7 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_04_Tests.fs +++ b/tests/FPinFSharp.Chapter_02.UnitTests/Section_04_Tests.fs @@ -1,10 +1,10 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_02 +namespace FPinFSharp.Chapter_02.UnitTests -open FPinFSharp.Exercises.Chapter_02.Section_02_04 +open FPinFSharp.Chapter_02.Section_04 open Shouldly open Xunit -module Section_02_04_Tests = +module Section_04_Tests = [] [] diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_05_Tests.fs b/tests/FPinFSharp.Chapter_02.UnitTests/Section_05_Tests.fs similarity index 92% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_05_Tests.fs rename to tests/FPinFSharp.Chapter_02.UnitTests/Section_05_Tests.fs index 010c320..29719f9 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_05_Tests.fs +++ b/tests/FPinFSharp.Chapter_02.UnitTests/Section_05_Tests.fs @@ -1,10 +1,10 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_02 +namespace FPinFSharp.Chapter_02.UnitTests -open FPinFSharp.Exercises.Chapter_02.Section_02_05 +open FPinFSharp.Chapter_02.Section_05 open Shouldly open Xunit -module Section_02_05_Tests = +module Section_05_Tests = [] [] diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_06_Tests.fs b/tests/FPinFSharp.Chapter_02.UnitTests/Section_06_Tests.fs similarity index 71% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_06_Tests.fs rename to tests/FPinFSharp.Chapter_02.UnitTests/Section_06_Tests.fs index aaa6096..2390581 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_06_Tests.fs +++ b/tests/FPinFSharp.Chapter_02.UnitTests/Section_06_Tests.fs @@ -1,10 +1,10 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_02 +namespace FPinFSharp.Chapter_02.UnitTests -open FPinFSharp.Exercises.Chapter_02.Section_02_06 +open FPinFSharp.Chapter_02.Section_06 open Shouldly open Xunit -module Section_02_06_Tests = +module Section_06_Tests = [] [] diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_07_Tests.fs b/tests/FPinFSharp.Chapter_02.UnitTests/Section_07_Tests.fs similarity index 95% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_07_Tests.fs rename to tests/FPinFSharp.Chapter_02.UnitTests/Section_07_Tests.fs index 17d663d..b51c5fc 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_07_Tests.fs +++ b/tests/FPinFSharp.Chapter_02.UnitTests/Section_07_Tests.fs @@ -1,11 +1,11 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_02 +namespace FPinFSharp.Chapter_02.UnitTests open System -open FPinFSharp.Exercises.Chapter_02.Section_02_07 +open FPinFSharp.Chapter_02.Section_07 open Shouldly open Xunit -module Section_02_07_Tests = +module Section_07_Tests = [] [] diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_08_Tests.fs b/tests/FPinFSharp.Chapter_02.UnitTests/Section_08_Tests.fs similarity index 63% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_08_Tests.fs rename to tests/FPinFSharp.Chapter_02.UnitTests/Section_08_Tests.fs index d197fe3..79beea8 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_08_Tests.fs +++ b/tests/FPinFSharp.Chapter_02.UnitTests/Section_08_Tests.fs @@ -1,10 +1,10 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_02 +namespace FPinFSharp.Chapter_02.UnitTests -open FPinFSharp.Exercises.Chapter_02.Section_02_08 +open FPinFSharp.Chapter_02.Section_08 open Shouldly open Xunit -module Section_02_08_Tests = +module Section_08_Tests = [] [] diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_09_Tests.fs b/tests/FPinFSharp.Chapter_02.UnitTests/Section_09_Tests.fs similarity index 82% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_09_Tests.fs rename to tests/FPinFSharp.Chapter_02.UnitTests/Section_09_Tests.fs index 937e62f..b714b51 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_09_Tests.fs +++ b/tests/FPinFSharp.Chapter_02.UnitTests/Section_09_Tests.fs @@ -1,10 +1,10 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_02 +namespace FPinFSharp.Chapter_02.UnitTests -open FPinFSharp.Exercises.Chapter_02.Section_02_09 +open FPinFSharp.Chapter_02.Section_09 open Shouldly open Xunit -module Section_02_09_Tests = +module Section_09_Tests = [] [] diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_10_Tests.fs b/tests/FPinFSharp.Chapter_02.UnitTests/Section_10_Tests.fs similarity index 80% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_10_Tests.fs rename to tests/FPinFSharp.Chapter_02.UnitTests/Section_10_Tests.fs index b921634..45ef461 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_10_Tests.fs +++ b/tests/FPinFSharp.Chapter_02.UnitTests/Section_10_Tests.fs @@ -1,10 +1,10 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_02 +namespace FPinFSharp.Chapter_02.UnitTests -open FPinFSharp.Exercises.Chapter_02.Section_02_10 +open FPinFSharp.Chapter_02.Section_10 open Shouldly open Xunit -module Section_02_10_Tests = +module Section_10_Tests = [] [] diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_11_Tests.fs b/tests/FPinFSharp.Chapter_02.UnitTests/Section_11_Tests.fs similarity index 87% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_11_Tests.fs rename to tests/FPinFSharp.Chapter_02.UnitTests/Section_11_Tests.fs index d66e73d..e2510c9 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_11_Tests.fs +++ b/tests/FPinFSharp.Chapter_02.UnitTests/Section_11_Tests.fs @@ -1,11 +1,11 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_02 +namespace FPinFSharp.Chapter_02.UnitTests open System -open FPinFSharp.Exercises.Chapter_02.Section_02_11 +open FPinFSharp.Chapter_02.Section_11 open Shouldly open Xunit -module Section_02_11_Tests = +module Section_11_Tests = [] let ``GIVEN true WHEN raiseExceptionIfTrue THEN InvalidOperationException is thrown`` () = diff --git a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_12_Tests.fs b/tests/FPinFSharp.Chapter_02.UnitTests/Section_12_Tests.fs similarity index 98% rename from tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_12_Tests.fs rename to tests/FPinFSharp.Chapter_02.UnitTests/Section_12_Tests.fs index e147a64..a3b413f 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Chapter_02/Section_02_12_Tests.fs +++ b/tests/FPinFSharp.Chapter_02.UnitTests/Section_12_Tests.fs @@ -1,12 +1,12 @@ -namespace FPinFSharp.Exercises.UnitTests.Chapter_02 +namespace FPinFSharp.Chapter_02.UnitTests open System open System.Numerics -open FPinFSharp.Exercises.Chapter_02.Section_02_12 +open FPinFSharp.Chapter_02.Section_12 open Shouldly open Xunit -module Section_02_12_Tests = +module Section_12_Tests = [] [] diff --git a/tests/FPinFSharp.Exercises.UnitTests/Extensions/ShouldlyExtensions.fs b/tests/FPinFSharp.Chapter_02.UnitTests/ShouldlyExtensions.fs similarity index 91% rename from tests/FPinFSharp.Exercises.UnitTests/Extensions/ShouldlyExtensions.fs rename to tests/FPinFSharp.Chapter_02.UnitTests/ShouldlyExtensions.fs index 930d5a2..5929e89 100644 --- a/tests/FPinFSharp.Exercises.UnitTests/Extensions/ShouldlyExtensions.fs +++ b/tests/FPinFSharp.Chapter_02.UnitTests/ShouldlyExtensions.fs @@ -1,4 +1,4 @@ -namespace FPinFSharp.Exercises.UnitTests.Extensions +namespace FPinFSharp.Chapter_02.UnitTests open System open System.Runtime.CompilerServices diff --git a/tests/FPinFSharp.Exercises.UnitTests/FPinFSharp.Exercises.UnitTests.fsproj b/tests/FPinFSharp.Exercises.UnitTests/FPinFSharp.Exercises.UnitTests.fsproj deleted file mode 100644 index bcca3ad..0000000 --- a/tests/FPinFSharp.Exercises.UnitTests/FPinFSharp.Exercises.UnitTests.fsproj +++ /dev/null @@ -1,61 +0,0 @@ - - - - net8.0 - false - false - true - FPinFSharp.Exercises.UnitTests - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - runtime; build; native; contentfiles; analyzers; buildtransitive - all - - - runtime; build; native; contentfiles; analyzers; buildtransitive - all - - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - - - - - -