From fd994b674b7c8b71b9f22449a309ec8531892b98 Mon Sep 17 00:00:00 2001
From: T-JGrote <135832474+T-JGrote@users.noreply.github.com>
Date: Wed, 14 Jun 2023 06:52:37 +0000
Subject: [PATCH 1/8] First Lab Done
---
YourFirstPSModuleInCSharp.sln | 7 ++++
src/Lab.1.RandomEmail/Class1.cs | 18 +++++++++++
.../Lab.1.RandomEmail.csproj | 32 +++++++++++++++++++
3 files changed, 57 insertions(+)
create mode 100644 src/Lab.1.RandomEmail/Class1.cs
create mode 100644 src/Lab.1.RandomEmail/Lab.1.RandomEmail.csproj
diff --git a/YourFirstPSModuleInCSharp.sln b/YourFirstPSModuleInCSharp.sln
index 1f937bc..a2b3d35 100644
--- a/YourFirstPSModuleInCSharp.sln
+++ b/YourFirstPSModuleInCSharp.sln
@@ -19,6 +19,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Example.7.PowerShell.MultiT
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Example.4.Hybrid", "src\Example.4.Hybrid\Example.4.Hybrid.csproj", "{FE5DF71E-4AE5-4440-AD30-A9588E92CE21}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lab.1.RandomEmail", "src\Lab.1.RandomEmail\Lab.1.RandomEmail.csproj", "{2713ADDB-20DA-43C2-AE4D-1F2DCA6675D3}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -56,6 +58,10 @@ Global
{FE5DF71E-4AE5-4440-AD30-A9588E92CE21}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FE5DF71E-4AE5-4440-AD30-A9588E92CE21}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FE5DF71E-4AE5-4440-AD30-A9588E92CE21}.Release|Any CPU.Build.0 = Release|Any CPU
+ {2713ADDB-20DA-43C2-AE4D-1F2DCA6675D3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {2713ADDB-20DA-43C2-AE4D-1F2DCA6675D3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2713ADDB-20DA-43C2-AE4D-1F2DCA6675D3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {2713ADDB-20DA-43C2-AE4D-1F2DCA6675D3}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{C686146C-58E6-4D85-B36D-8E1AC5F18D7C} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
@@ -65,5 +71,6 @@ Global
{9D4F9AAA-D7A5-4C61-8352-DA050AD934DA} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
{69B43DD8-1DA6-4556-A813-4570786B162E} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
{FE5DF71E-4AE5-4440-AD30-A9588E92CE21} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
+ {2713ADDB-20DA-43C2-AE4D-1F2DCA6675D3} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
EndGlobalSection
EndGlobal
diff --git a/src/Lab.1.RandomEmail/Class1.cs b/src/Lab.1.RandomEmail/Class1.cs
new file mode 100644
index 0000000..4c67c27
--- /dev/null
+++ b/src/Lab.1.RandomEmail/Class1.cs
@@ -0,0 +1,18 @@
+namespace PEURandom;
+using System.Management.Automation;
+using System.Net.Mail;
+using LoremNET;
+
+[Cmdlet(VerbsCommon.Get, $"PEURandomEmail")]
+public class GetPEURandomEmailCmdlet : PSCmdlet
+{
+ [Parameter()]
+ public SwitchParameter UsernameOnly;
+
+ protected override void EndProcessing()
+ {
+ MailAddress email = new(Lorem.Email());
+ string output = UsernameOnly ? email.User : email.ToString();
+ WriteObject(output);
+ }
+}
\ No newline at end of file
diff --git a/src/Lab.1.RandomEmail/Lab.1.RandomEmail.csproj b/src/Lab.1.RandomEmail/Lab.1.RandomEmail.csproj
new file mode 100644
index 0000000..bdec73d
--- /dev/null
+++ b/src/Lab.1.RandomEmail/Lab.1.RandomEmail.csproj
@@ -0,0 +1,32 @@
+
+
+
+
+ net6.0
+
+
+ en
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
From 7982850d8a8bbb8cc6ac3b39166d5a5209a04d9e Mon Sep 17 00:00:00 2001
From: T-JGrote <135832474+T-JGrote@users.noreply.github.com>
Date: Wed, 14 Jun 2023 06:55:29 +0000
Subject: [PATCH 2/8] Rename PEU test class
---
src/Lab.1.RandomEmail/{Class1.cs => GetPEURandomEmailCmdlet.cs} | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename src/Lab.1.RandomEmail/{Class1.cs => GetPEURandomEmailCmdlet.cs} (100%)
diff --git a/src/Lab.1.RandomEmail/Class1.cs b/src/Lab.1.RandomEmail/GetPEURandomEmailCmdlet.cs
similarity index 100%
rename from src/Lab.1.RandomEmail/Class1.cs
rename to src/Lab.1.RandomEmail/GetPEURandomEmailCmdlet.cs
From 71e17ee9a560f3c6e50e5dec8817f4b35038ebfe Mon Sep 17 00:00:00 2001
From: T-JGrote <135832474+T-JGrote@users.noreply.github.com>
Date: Wed, 14 Jun 2023 12:31:23 +0000
Subject: [PATCH 3/8] Lab 2 Complete
---
YourFirstPSModuleInCSharp.sln | 7 ++++
.../GetPEURandomEmailCmdlet.cs | 2 +-
.../GetPEURandomSentenceCmdlet.cs | 27 ++++++++++++++++
.../Lab.2.RandomSentence.csproj | 32 +++++++++++++++++++
tests/Lab.2.RandomSentence.Tests.ps1 | 6 ++--
5 files changed, 70 insertions(+), 4 deletions(-)
create mode 100644 src/Lab.2.RandomSentence/GetPEURandomSentenceCmdlet.cs
create mode 100644 src/Lab.2.RandomSentence/Lab.2.RandomSentence.csproj
diff --git a/YourFirstPSModuleInCSharp.sln b/YourFirstPSModuleInCSharp.sln
index a2b3d35..20beb8c 100644
--- a/YourFirstPSModuleInCSharp.sln
+++ b/YourFirstPSModuleInCSharp.sln
@@ -21,6 +21,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Example.4.Hybrid", "src\Exa
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lab.1.RandomEmail", "src\Lab.1.RandomEmail\Lab.1.RandomEmail.csproj", "{2713ADDB-20DA-43C2-AE4D-1F2DCA6675D3}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lab.2.RandomSentence", "src\Lab.2.RandomSentence\Lab.2.RandomSentence.csproj", "{50408EFA-E99F-4A90-BFF7-A4AB8518BFC6}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -62,6 +64,10 @@ Global
{2713ADDB-20DA-43C2-AE4D-1F2DCA6675D3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2713ADDB-20DA-43C2-AE4D-1F2DCA6675D3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2713ADDB-20DA-43C2-AE4D-1F2DCA6675D3}.Release|Any CPU.Build.0 = Release|Any CPU
+ {50408EFA-E99F-4A90-BFF7-A4AB8518BFC6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {50408EFA-E99F-4A90-BFF7-A4AB8518BFC6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {50408EFA-E99F-4A90-BFF7-A4AB8518BFC6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {50408EFA-E99F-4A90-BFF7-A4AB8518BFC6}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{C686146C-58E6-4D85-B36D-8E1AC5F18D7C} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
@@ -72,5 +78,6 @@ Global
{69B43DD8-1DA6-4556-A813-4570786B162E} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
{FE5DF71E-4AE5-4440-AD30-A9588E92CE21} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
{2713ADDB-20DA-43C2-AE4D-1F2DCA6675D3} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
+ {50408EFA-E99F-4A90-BFF7-A4AB8518BFC6} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
EndGlobalSection
EndGlobal
diff --git a/src/Lab.1.RandomEmail/GetPEURandomEmailCmdlet.cs b/src/Lab.1.RandomEmail/GetPEURandomEmailCmdlet.cs
index 4c67c27..165fcb7 100644
--- a/src/Lab.1.RandomEmail/GetPEURandomEmailCmdlet.cs
+++ b/src/Lab.1.RandomEmail/GetPEURandomEmailCmdlet.cs
@@ -3,7 +3,7 @@
using System.Net.Mail;
using LoremNET;
-[Cmdlet(VerbsCommon.Get, $"PEURandomEmail")]
+[Cmdlet(VerbsCommon.Get, "PEURandomEmail")]
public class GetPEURandomEmailCmdlet : PSCmdlet
{
[Parameter()]
diff --git a/src/Lab.2.RandomSentence/GetPEURandomSentenceCmdlet.cs b/src/Lab.2.RandomSentence/GetPEURandomSentenceCmdlet.cs
new file mode 100644
index 0000000..f8b69f2
--- /dev/null
+++ b/src/Lab.2.RandomSentence/GetPEURandomSentenceCmdlet.cs
@@ -0,0 +1,27 @@
+namespace PEURandom;
+using System.Management.Automation;
+using System.Net.Mail;
+using LoremNET;
+
+[Cmdlet(VerbsCommon.Get, "PEURandomSentence")]
+public class GetPEURandomSentenceCmdlet : PSCmdlet
+{
+ [Parameter(ValueFromPipeline = true)]
+ public string Name;
+
+ [Parameter()]
+ public int Min = 5;
+ [Parameter()]
+ public int Max = 10;
+
+ protected override void ProcessRecord()
+ {
+ var randomSentence = Lorem.Sentence(Min, Max);
+ if (Name is not null) {
+ randomSentence = randomSentence.Replace(".$", string.Empty) + $", {Name}";
+ }
+ WriteObject(
+ randomSentence
+ );
+ }
+}
\ No newline at end of file
diff --git a/src/Lab.2.RandomSentence/Lab.2.RandomSentence.csproj b/src/Lab.2.RandomSentence/Lab.2.RandomSentence.csproj
new file mode 100644
index 0000000..bdec73d
--- /dev/null
+++ b/src/Lab.2.RandomSentence/Lab.2.RandomSentence.csproj
@@ -0,0 +1,32 @@
+
+
+
+
+ net6.0
+
+
+ en
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/Lab.2.RandomSentence.Tests.ps1 b/tests/Lab.2.RandomSentence.Tests.ps1
index 9ce4014..e67d2d7 100644
--- a/tests/Lab.2.RandomSentence.Tests.ps1
+++ b/tests/Lab.2.RandomSentence.Tests.ps1
@@ -28,7 +28,7 @@ Describe 'Lab 2: Get a random sentence' {
}
Context 'Names Via Pipeline' {
BeforeAll {
- $name = 'Pester1', 'Pester2', 'Pester3'
+ $name = 'Pester1','Pester2','Pester3'
$SCRIPT:actual = $name | Get-PEURandomSentence
}
@@ -41,8 +41,8 @@ Describe 'Lab 2: Get a random sentence' {
($actual | Select-Object -Unique).Count | Should -BeExactly 3
}
- It 'Each sentence ends with the corresponding name provided via the pipeline' {
- # Check that each item output matches the corresponding name.
+ It 'Names provided via pipeline each end with the persons name' {
+ # Check that each item output matches the corresponding name.
#NOTE: This is a bad test if you are attempting to do things in parallel as they will possibly arrive out of order, but it is fine here.
$i = 0
foreach ($actualItem in $actual) {
From 337713f0532fe50f05d53e94f0ad556a814ead76 Mon Sep 17 00:00:00 2001
From: T-JGrote <135832474+T-JGrote@users.noreply.github.com>
Date: Wed, 14 Jun 2023 12:39:35 +0000
Subject: [PATCH 4/8] Test Fix
---
tests/Lab.2.RandomSentence.Tests.ps1 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/Lab.2.RandomSentence.Tests.ps1 b/tests/Lab.2.RandomSentence.Tests.ps1
index e67d2d7..7de1368 100644
--- a/tests/Lab.2.RandomSentence.Tests.ps1
+++ b/tests/Lab.2.RandomSentence.Tests.ps1
@@ -41,7 +41,7 @@ Describe 'Lab 2: Get a random sentence' {
($actual | Select-Object -Unique).Count | Should -BeExactly 3
}
- It 'Names provided via pipeline each end with the persons name' {
+ It 'Each sentence ends with the corresponding name provided via the pipeline' {
# Check that each item output matches the corresponding name.
#NOTE: This is a bad test if you are attempting to do things in parallel as they will possibly arrive out of order, but it is fine here.
$i = 0
From 11b607f79b6c01bd7f2045724231300c3d5aa962 Mon Sep 17 00:00:00 2001
From: T-JGrote <135832474+T-JGrote@users.noreply.github.com>
Date: Wed, 14 Jun 2023 15:34:33 +0000
Subject: [PATCH 5/8] Fix items and get part of lab 3 done
---
YourFirstPSModuleInCSharp.sln | 7 ++++
.../GetPEURandomSentenceCmdlet.cs | 1 -
src/Lab.3.Bouncer/GetPEUAgeCmdlet.cs | 23 +++++++++++++
src/Lab.3.Bouncer/Lab.3.Bouncer.csproj | 32 +++++++++++++++++++
src/Lab.3.Bouncer/TestPEUAgeCmdlet.cs | 0
5 files changed, 62 insertions(+), 1 deletion(-)
create mode 100644 src/Lab.3.Bouncer/GetPEUAgeCmdlet.cs
create mode 100644 src/Lab.3.Bouncer/Lab.3.Bouncer.csproj
create mode 100644 src/Lab.3.Bouncer/TestPEUAgeCmdlet.cs
diff --git a/YourFirstPSModuleInCSharp.sln b/YourFirstPSModuleInCSharp.sln
index 20beb8c..950ce9b 100644
--- a/YourFirstPSModuleInCSharp.sln
+++ b/YourFirstPSModuleInCSharp.sln
@@ -23,6 +23,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lab.1.RandomEmail", "src\La
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lab.2.RandomSentence", "src\Lab.2.RandomSentence\Lab.2.RandomSentence.csproj", "{50408EFA-E99F-4A90-BFF7-A4AB8518BFC6}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lab.3.Bouncer", "src\Lab.3.Bouncer\Lab.3.Bouncer.csproj", "{1EA614E4-F977-4CC3-AA27-1D609CC289D2}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -68,6 +70,10 @@ Global
{50408EFA-E99F-4A90-BFF7-A4AB8518BFC6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{50408EFA-E99F-4A90-BFF7-A4AB8518BFC6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{50408EFA-E99F-4A90-BFF7-A4AB8518BFC6}.Release|Any CPU.Build.0 = Release|Any CPU
+ {1EA614E4-F977-4CC3-AA27-1D609CC289D2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1EA614E4-F977-4CC3-AA27-1D609CC289D2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1EA614E4-F977-4CC3-AA27-1D609CC289D2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1EA614E4-F977-4CC3-AA27-1D609CC289D2}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{C686146C-58E6-4D85-B36D-8E1AC5F18D7C} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
@@ -79,5 +85,6 @@ Global
{FE5DF71E-4AE5-4440-AD30-A9588E92CE21} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
{2713ADDB-20DA-43C2-AE4D-1F2DCA6675D3} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
{50408EFA-E99F-4A90-BFF7-A4AB8518BFC6} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
+ {1EA614E4-F977-4CC3-AA27-1D609CC289D2} = {8142F2E5-265E-4F9F-A9C9-EA30A735ABD7}
EndGlobalSection
EndGlobal
diff --git a/src/Lab.2.RandomSentence/GetPEURandomSentenceCmdlet.cs b/src/Lab.2.RandomSentence/GetPEURandomSentenceCmdlet.cs
index f8b69f2..e80b940 100644
--- a/src/Lab.2.RandomSentence/GetPEURandomSentenceCmdlet.cs
+++ b/src/Lab.2.RandomSentence/GetPEURandomSentenceCmdlet.cs
@@ -1,6 +1,5 @@
namespace PEURandom;
using System.Management.Automation;
-using System.Net.Mail;
using LoremNET;
[Cmdlet(VerbsCommon.Get, "PEURandomSentence")]
diff --git a/src/Lab.3.Bouncer/GetPEUAgeCmdlet.cs b/src/Lab.3.Bouncer/GetPEUAgeCmdlet.cs
new file mode 100644
index 0000000..7e26dc4
--- /dev/null
+++ b/src/Lab.3.Bouncer/GetPEUAgeCmdlet.cs
@@ -0,0 +1,23 @@
+namespace PEURandom;
+using System;
+using System.Management.Automation;
+using LoremNET;
+
+record Person(string Name, DateTime BirthDate);
+
+[Cmdlet(VerbsCommon.Get, "PEUAge")]
+[OutputType(typeof(Person))]
+public class GetPEURandomSentenceCmdlet : PSCmdlet
+{
+ [Parameter(ValueFromPipeline = true)]
+ public string Name;
+
+ protected override void ProcessRecord()
+ {
+ DateTime birthDate = Lorem.DateTime();
+
+ WriteObject(
+ new Person(Name, birthDate)
+ );
+ }
+}
\ No newline at end of file
diff --git a/src/Lab.3.Bouncer/Lab.3.Bouncer.csproj b/src/Lab.3.Bouncer/Lab.3.Bouncer.csproj
new file mode 100644
index 0000000..bdec73d
--- /dev/null
+++ b/src/Lab.3.Bouncer/Lab.3.Bouncer.csproj
@@ -0,0 +1,32 @@
+
+
+
+
+ net6.0
+
+
+ en
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Lab.3.Bouncer/TestPEUAgeCmdlet.cs b/src/Lab.3.Bouncer/TestPEUAgeCmdlet.cs
new file mode 100644
index 0000000..e69de29
From def6d7c933ce942cd969747b99be62ebabdb07e1 Mon Sep 17 00:00:00 2001
From: T-JGrote <135832474+T-JGrote@users.noreply.github.com>
Date: Thu, 15 Jun 2023 07:19:01 +0000
Subject: [PATCH 6/8] Lab3 Implementation
---
src/Lab.3.Bouncer/AssertPEUAgeCmdlet.cs | 28 +++++++++++++++++++++++++
src/Lab.3.Bouncer/GetPEUAgeCmdlet.cs | 21 +++++++++++--------
src/Lab.3.Bouncer/Person.cs | 10 +++++++++
src/Lab.3.Bouncer/TestPEUAgeCmdlet.cs | 0
4 files changed, 50 insertions(+), 9 deletions(-)
create mode 100644 src/Lab.3.Bouncer/AssertPEUAgeCmdlet.cs
create mode 100644 src/Lab.3.Bouncer/Person.cs
delete mode 100644 src/Lab.3.Bouncer/TestPEUAgeCmdlet.cs
diff --git a/src/Lab.3.Bouncer/AssertPEUAgeCmdlet.cs b/src/Lab.3.Bouncer/AssertPEUAgeCmdlet.cs
new file mode 100644
index 0000000..2d0d38e
--- /dev/null
+++ b/src/Lab.3.Bouncer/AssertPEUAgeCmdlet.cs
@@ -0,0 +1,28 @@
+using System;
+using System.IO;
+using System.Management.Automation;
+
+namespace PEURandom;
+
+[Cmdlet(VerbsLifecycle.Assert, "PEUAge")]
+[OutputType(typeof(Person))]
+public class AssertPEUAgeCmdlet : PSCmdlet
+{
+ [Parameter(Position = 0, ValueFromPipeline = true)]
+ public IPerson Person;
+
+ [Parameter()]
+ public int Age = 18;
+
+ protected override void ProcessRecord()
+ {
+ const int daysInAYear = 365;
+ var ageSpan = DateTime.Now - Person.BirthDate;
+ int personAge = (int)Math.Floor(ageSpan.TotalDays / daysInAYear);
+ if (personAge < Age) {
+ throw new InvalidDataException($"{Person.Name} is under the age of {Age}");
+ }
+
+ WriteObject(Person);
+ }
+}
\ No newline at end of file
diff --git a/src/Lab.3.Bouncer/GetPEUAgeCmdlet.cs b/src/Lab.3.Bouncer/GetPEUAgeCmdlet.cs
index 7e26dc4..684c326 100644
--- a/src/Lab.3.Bouncer/GetPEUAgeCmdlet.cs
+++ b/src/Lab.3.Bouncer/GetPEUAgeCmdlet.cs
@@ -1,23 +1,26 @@
-namespace PEURandom;
-using System;
-using System.Management.Automation;
+using System.Management.Automation;
using LoremNET;
-record Person(string Name, DateTime BirthDate);
+namespace PEURandom;
[Cmdlet(VerbsCommon.Get, "PEUAge")]
[OutputType(typeof(Person))]
-public class GetPEURandomSentenceCmdlet : PSCmdlet
+public class GetPEUAgeCmdlet : PSCmdlet
{
- [Parameter(ValueFromPipeline = true)]
+ [Parameter(Position = 0, ValueFromPipeline = true, Mandatory = true)]
public string Name;
protected override void ProcessRecord()
{
- DateTime birthDate = Lorem.DateTime();
-
WriteObject(
- new Person(Name, birthDate)
+ GetPerson()
+ );
+ }
+
+ Person GetPerson() {
+ return new Person(
+ Name,
+ Lorem.DateTime()
);
}
}
\ No newline at end of file
diff --git a/src/Lab.3.Bouncer/Person.cs b/src/Lab.3.Bouncer/Person.cs
new file mode 100644
index 0000000..0167bb4
--- /dev/null
+++ b/src/Lab.3.Bouncer/Person.cs
@@ -0,0 +1,10 @@
+using System;
+
+namespace PEURandom;
+
+public interface IPerson {
+ string Name { get; }
+ DateTime BirthDate { get; }
+}
+
+record Person(string Name, DateTime BirthDate) : IPerson;
diff --git a/src/Lab.3.Bouncer/TestPEUAgeCmdlet.cs b/src/Lab.3.Bouncer/TestPEUAgeCmdlet.cs
deleted file mode 100644
index e69de29..0000000
From d80e43e21bc5c9e4f62b50ae37bfb9b154e6a514 Mon Sep 17 00:00:00 2001
From: T-JGrote <135832474+T-JGrote@users.noreply.github.com>
Date: Thu, 15 Jun 2023 07:44:05 +0000
Subject: [PATCH 7/8] Make person public
---
src/Lab.3.Bouncer/Person.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/Lab.3.Bouncer/Person.cs b/src/Lab.3.Bouncer/Person.cs
index 0167bb4..4cfc1ce 100644
--- a/src/Lab.3.Bouncer/Person.cs
+++ b/src/Lab.3.Bouncer/Person.cs
@@ -7,4 +7,4 @@ public interface IPerson {
DateTime BirthDate { get; }
}
-record Person(string Name, DateTime BirthDate) : IPerson;
+public record Person(string Name, DateTime BirthDate) : IPerson;
From 24e125ae8365dded072b9401a967d4a4836019dc Mon Sep 17 00:00:00 2001
From: T-JGrote <135832474+T-JGrote@users.noreply.github.com>
Date: Thu, 15 Jun 2023 07:56:09 +0000
Subject: [PATCH 8/8] CI Retest