Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 4 additions & 10 deletions .github/instructions/test.instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,7 @@ This allows the test infrastructure to recognize the test while explicitly marki
### Example 1: Simple Success Case
```powershell
function Test_FindProject_SUCCESS {

# Arrange
Reset-InvokeCommandMock
Enable-InvokeCommandAliasModule
Expand All @@ -153,10 +154,8 @@ function Test_FindProject_SUCCESS {
### Example 2: Single vs Multiple User Variants
```powershell
function Test_AddProjectUser_SUCCESS_SingleUser {
# Arrange
Reset-InvokeCommandMock
Mock_DatabaseRoot

# Arrange
$p = Get-Mock_Project_700
$owner = $p.Owner
$projectNumber = $p.Number
Expand All @@ -179,14 +178,9 @@ function Test_AddProjectUser_SUCCESS_SingleUser {
}

function Test_AddProjectUser_SUCCESS_MultipleUser {
# Arrange
Reset-InvokeCommandMock
Mock_DatabaseRoot

$p = Get-Mock_Project_700
$owner = $p.Owner
$projectNumber = $p.Number
$projectId = $p.id
# Arrange
$p = Get-Mock_Project_700 ; $owner = $p.Owner ; $projectNumber = $p.Number ; $projectId = $p.id
MockCall_GetProject $p -SkipItems

$u = Get-Mock_Users
Expand Down
28 changes: 28 additions & 0 deletions Test/include/run_BeforeAfter.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Run Before and After any test
#

Check notice

Code scanning / PSScriptAnalyzer

Line has trailing whitespace Note

Line has trailing whitespace
# Supported by TestingHelper 4.1.0 we can specify code that will run :
# - Before each test
# - After each test
# - Before all tests
# - After all tests

function Run_BeforeAll{
Write-Verbose "Run_BeforeAll"
}

function Run_AfterAll{
Write-Verbose "Run_AfterAll"
}

function Run_BeforeEach{
Write-Verbose "Run_BeforeEach"

Reset_Test_Mock
}

function Run_AfterEach{
Write-Verbose "Run_AfterEach"
}

Export-ModuleMember -Function Run_*

4 changes: 4 additions & 0 deletions Test/mockfiles.log
Original file line number Diff line number Diff line change
Expand Up @@ -202,5 +202,9 @@
{
"FileName": "invoke-UpdateProjectV2Collaborators-MDQ6VXNlcjY4ODQ0MDg=.json",
"Command": "Invoke-UpdateProjectV2Collaborators -ProjectId PVT_kwDOAlIw4c4BCe3V -collaborators \"\" -Role \"WRITER\""
},
{
"FileName": "invoke-GitHubOrgProjectWithFields-octodemo-700-query-field-text.json",
"Command": "Invoke-GitHubOrgProjectWithFields -Owner octodemo -ProjectNumber 700 -afterFields \"\" -afterItems \"\" -query \"updated:<2025-03-15\""
}
]
2 changes: 2 additions & 0 deletions Test/private/MockCall_Project.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -214,6 +214,8 @@ function MockCall_GetProject {
}

MockCall_GitHubOrgProjectWithFields -Owner $owner -ProjectNumber $projectNumber -FileName $filename -SkipItems:$SkipItems
Mock_Today


if ($Cache) {
$null = Get-Project -Owner $Owner -ProjectNumber $ProjectNumber -SkipItems:$SkipItems
Expand Down
2 changes: 2 additions & 0 deletions Test/private/MockCall_Project700.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,7 @@ function MockCall_GetProject_700 {
}

MockCall_GitHubOrgProjectWithFields -Owner $owner -ProjectNumber $projectNumber -FileName $filename -SkipItems:$SkipItems
Mock_Today

if ($Cache) {
$null = Get-Project -Owner $Owner -ProjectNumber $ProjectNumber -SkipItems:$SkipItems
Expand All @@ -260,6 +261,7 @@ function MockCall_GetProject_700_CaseSensitive {
$filename = $p.projectFile_caseSensitive

MockCall_GitHubOrgProjectWithFields -Owner $owner -ProjectNumber $projectNumber -FileName $filename -SkipItems:$SkipItems
Mock_Today

if ($Cache) {
$null = Get-Project -Owner $Owner -ProjectNumber $ProjectNumber -SkipItems:$SkipItems
Expand Down
14 changes: 14 additions & 0 deletions Test/private/Mock_Today.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
function Get-Mock_Today{
$ret = @{
# today = "2024-06-30"
today = "2025-03-15"
}

return $ret
}

function Mock_Today{

$today = (Get-Mock_Today).today
MockCallToString -Command "Get-Date -Format yyyy-MM-dd" -OutString $today
}
10 changes: 10 additions & 0 deletions Test/private/Reset_TestMock.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
function Reset_Test_Mock{
[cmdletbinding()]
param(
[switch]$NoResetDatabase
)

Reset-InvokeCommandMock
Mock_DatabaseRoot -NotReset:$NoResetDatabase
Mock_Today
}
2 changes: 0 additions & 2 deletions Test/public/driver/user/user.test.ps1
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
function Test_GetUser_SUCCESS{
Reset-InvokeCommandMock
Mock_DatabaseRoot

Assert-NotImplemented
}
3 changes: 0 additions & 3 deletions Test/public/edit-sync-projectitem-comments.test.ps1
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
function Test_Edit_Sync_ProjectItem_AddComments_Issue {

Reset-InvokeCommandMock
Mock_DatabaseRoot

$p = Get-Mock_Project_700 ; $owner = $p.owner ; $projectNumber = $p.number
$i = $p.issue
Expand Down
6 changes: 1 addition & 5 deletions Test/public/environmentCache.test.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,6 @@

function Test_EnvironmentCache{

Reset-InvokeCommandMock
Mock_DatabaseRoot

$p = Get-Mock_Project_700 ; $Owner = $p.owner ; $projectNumber = $p.number
$i = $p.issue
$f = $p.fieldtext
Expand All @@ -18,8 +15,7 @@ function Test_EnvironmentCache{
MockCall_GetProject_700 -Cache

# Reset mock calls
Reset-invokeCommandMock
Mock_DatabaseRoot -NotReset
Reset_Test_Mock -NoResetDatabase

$itemId = $i.Id
$fieldTitleValue = $i.title
Expand Down
3 changes: 0 additions & 3 deletions Test/public/getPrompt.test.ps1
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
function Test_GetProjecthelperPrompt {

Reset-InvokeCommandMock
Mock_DatabaseRoot

$owner = "octodemo"
$projectNumber = "625"
$s = $ProjecthelperPromoptSettings
Expand Down
2 changes: 0 additions & 2 deletions Test/public/integrations/Edit-ProjectItemWithValues.test.ps1
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
function Test_EditProjectItemWithValues_Integration {

# Assert-SkipTest
Reset-InvokeCommandMock
Mock_DatabaseRoot

$owner = "octodemo"
$projectNumber = "625"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
function Test_UpdateProjectItemsBetweenProjects{
Reset-InvokeCommandMock
Mock_DatabaseRoot

$p625 = Get-Mock_Project_625 ; $owner0 = $p625.owner ; $projectNumber0 = $p625.number
$p626 = Get-Mock_Project_626 ; $owner1 = $p626.owner ; $projectNumber1 = $p626.number
Expand Down Expand Up @@ -38,8 +36,6 @@ function Test_UpdateProjectItemsBetweenProjects{
}

function Test_UpdateProjectItemsBetweenProjects_NoRefresh_NoRefresh{
Reset-InvokeCommandMock
Mock_DatabaseRoot

$p625 = Get-Mock_Project_625 ; $owner0 = $p625.owner ; $projectNumber0 = $p625.number
$p626 = Get-Mock_Project_626 ; $owner1 = $p626.owner ; $projectNumber1 = $p626.number
Expand All @@ -51,8 +47,7 @@ function Test_UpdateProjectItemsBetweenProjects_NoRefresh_NoRefresh{
MockCall_GetProject -MockProject $p626 -Cache

# Reset mocks to fail if mocks are called again
Reset-InvokeCommandMock
Mock_DatabaseRoot -NotReset
Reset_Test_Mock -NoResetDatabase

# Act

Expand All @@ -75,8 +70,6 @@ function Test_UpdateProjectItemsBetweenProjects_NoRefresh_NoRefresh{
}

function Test_SyncProjectItemsBetweenProjects_SameValues{
Reset-InvokeCommandMock
Mock_DatabaseRoot

MockCall_GetProject_700
$p = Get-Mock_Project_700 ; $owner = $p.owner ; $projectNumber = $p.number
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,6 @@

function Test_UpdateProjectWithInjection{

Reset-InvokeCommandMock
Mock_DatabaseRoot

# https://github.com/orgs/octodemo/projects/625/views/1

$mp = Get-Mock_Project_625 ; $owner = $mp.owner ; $projectNumber = $mp.number
Expand Down Expand Up @@ -87,9 +84,6 @@ function Test_UpdateProjectWithInjection{

function Test_UpdateProjectWithInjection_Failed_1{

Reset-InvokeCommandMock
Mock_DatabaseRoot

# https://github.com/orgs/octodemo/projects/625/views/1

$mp = Get-Mock_Project_625 ; $owner = $mp.owner ; $projectNumber = $mp.number
Expand Down Expand Up @@ -165,9 +159,6 @@ function Test_UpdateProjectWithInjection_Failed_1{

function Test_InvokeProjectInjection{

Reset-InvokeCommandMock
Mock_DatabaseRoot

$owner = "octodemo"
$projectNumber = "625"

Expand Down Expand Up @@ -210,10 +201,7 @@ function Test_InvokeProjectInjection{

function Test_InvokeProjectInjection_Fail{

Reset-InvokeCommandMock
Mock_DatabaseRoot

$owner = "octodemo"
$owner = "octodemo"
$projectNumber = "625"

MockCall_GitHubOrgProjectWithFields -Owner $owner -ProjectNumber $projectNumber -FileName "invoke-GitHubOrgProjectWithFields-$owner-$projectNumber-skipitems.json" -SkipItems
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
function Test_UpdateProjectItemStatusOnDueDate {

Reset-InvokeCommandMock
Mock_DatabaseRoot

# Mock calling Toda
MockCallToString -Command "Get-Date -Format yyyy-MM-dd" -OutString "2025-03-15"

Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
function Test_UpdateProjectWithIntegration{

Reset-InvokeCommandMock
Mock_DatabaseRoot

$mp = Get-Mock_Project_625 ; $owner = $mp.owner ; $projectNumber = $mp.number
Mockcall_GetProject -MockProject $mp
$p = $mp.updateWithIntegration
Expand Down
2 changes: 0 additions & 2 deletions Test/public/interactive_test/getproject.test.ps1
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
function Test_Get_Project_ItemId_Equal_Case_Sensitive {
Reset-InvokeCommandMock
Mock_DatabaseRoot

$p = Get-Mock_Project_700 ; $owner = $p.owner ; $projectNumber = $p.number

Expand Down
6 changes: 0 additions & 6 deletions Test/public/issues/Add-IssuePullRequestComment.test.ps1
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@

function Test_AddComment_SUCCESS_Using_Cache{
Reset-InvokeCommandMock
Mock_DatabaseRoot

$p = Get-Mock_Project_700 ; $owner = $p.Owner ; $projectNumber = $p.Number
$i = $p.Issue
Expand All @@ -23,8 +21,6 @@ function Test_AddComment_SUCCESS_Using_Cache{
}

function Test_AddComment_SUCCESS_Using_Direct{
Reset-InvokeCommandMock
Mock_DatabaseRoot

$p = Get-Mock_Project_700
$i = $p.Issue
Expand All @@ -44,8 +40,6 @@ function Test_AddComment_SUCCESS_Using_Direct{
}

function Test_AddComment_SUCCESS_Using_Direct_PR{
Reset-InvokeCommandMock
Mock_DatabaseRoot

$p = Get-Mock_Project_700
$i = $p.PullRequest
Expand Down
6 changes: 0 additions & 6 deletions Test/public/issues/Add-ProjectSubIssue.test.ps1
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
function Test_AddProjectSubIssue_SUCCESS{

Reset-InvokeCommandMock
Mock_DatabaseRoot

$p = Get-Mock_Project_700 ; $owner = $p.Owner ; $projectNumber = $p.Number


Expand Down Expand Up @@ -51,9 +48,6 @@ function Test_AddProjectSubIssue_FAIL_ALREADY_HAS_PARENT {

function Test_GetProjectSubIssue_SUCCESS {

Reset-InvokeCommandMock
Mock_DatabaseRoot

$p = Get-Mock_Project_700 ; $owner = $p.Owner ; $projectNumber = $p.Number
$i = $p.subIssueToShow

Expand Down
3 changes: 0 additions & 3 deletions Test/public/issues/Get-ProjectIssue.test.ps1
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
function Test_GetProjectIssue{

Reset-InvokeCommandMock
Mock_DatabaseRoot

$p = Get-Mock_Project_700 ; $Owner = $p.owner ; $projectNumber = $p.number
$i = $p.issue

Expand Down
5 changes: 0 additions & 5 deletions Test/public/issues/New-ProjectIssue.test.ps1
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
function Test_NewProjectIssueDirect{

Reset-InvokeCommandMock
Mock_DatabaseRoot

$p = Get-Mock_Project_700
$r = $p.repo
$i = $p.issueToCreateAddAndRemove
Expand Down Expand Up @@ -30,8 +27,6 @@ function Test_NewProjectIssueDirect{
}

function Test_NewProjectIssue{
Reset-InvokeCommandMock
Mock_DatabaseRoot

$p = Get-Mock_Project_700 ; $owner = $p.owner ; $projectNumber = $p.number
$r = $p.repo
Expand Down
3 changes: 0 additions & 3 deletions Test/public/issues/Remove-ProjectIssue.test.ps1
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
function Test_RemoveProjectIssue_SUCCESS {

Reset-InvokeCommandMock
Mock_DatabaseRoot

$p = Get-Mock_Project_700 ; $owner = $p.owner ; $projectNumber = $p.number
$i = $p.issueToCreateAddAndRemove

Expand Down
3 changes: 0 additions & 3 deletions Test/public/items/project_item_draftissue.test.ps1
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
function Test_NewProjectDraftIssue {

Reset-InvokeCommandMock
Mock_DatabaseRoot

$p = Get-Mock_Project_700 ; $owner = $p.owner ; $projectNumber = $p.number
MockCall_GetProject -MockProject $p

Expand Down
8 changes: 2 additions & 6 deletions Test/public/items/project_item_show.test.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,7 @@ function Get-Test_Write_Sucess_Factors {
} Export-ModuleMember -Function Get-Test_Write_Sucess_Factors, Test_Write_Sucess

function Test_ShowProjectItem_SUCESS{
Reset-InvokeCommandMock
Mock_DatabaseRoot


$p = Get-Mock_Project_700 ; $Owner = $p.owner ; $ProjectNumber = $p.number
$i = $p.issue
MockCall_GetProject $p -skipItems
Expand All @@ -90,9 +88,7 @@ function Test_ShowProjectItem_SUCESS{
}

function Test_OpenInEditor{
Reset-InvokeCommandMock
Mock_DatabaseRoot


$text = "Sample Text for Editor"

$command = '"{content}" | code -w - '
Expand Down
Loading
Loading