-
-
Notifications
You must be signed in to change notification settings - Fork 817
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
78cb317
commit 45c4b99
Showing
149 changed files
with
9,231 additions
and
6,926 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,111 +1,123 @@ | ||
$CommandName = $MyInvocation.MyCommand.Name.Replace(".Tests.ps1", "") | ||
Write-Host -Object "Running $PSCommandPath" -ForegroundColor Cyan | ||
. "$PSScriptRoot\constants.ps1" | ||
|
||
Describe "$CommandName Unit Tests" -Tag 'UnitTests' { | ||
param($ModuleName = 'dbatools') | ||
Describe "Remove-DbaTrace" { | ||
Context "Validate parameters" { | ||
[object[]]$params = (Get-Command $CommandName).Parameters.Keys | Where-Object {$_ -notin ('whatif', 'confirm')} | ||
[object[]]$knownParameters = 'SqlInstance', 'SqlCredential', 'Id', 'InputObject', 'EnableException' | ||
$knownParameters += [System.Management.Automation.PSCmdlet]::CommonParameters | ||
It "Should only contain our specific parameters" { | ||
(@(Compare-Object -ReferenceObject ($knownParameters | Where-Object {$_}) -DifferenceObject $params).Count ) | Should Be 0 | ||
BeforeAll { | ||
$CommandUnderTest = Get-Command Remove-DbaTrace | ||
} | ||
It "Accepts SqlInstance as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter SqlInstance -Type DbaInstanceParameter[] | ||
} | ||
It "Accepts SqlCredential as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter SqlCredential -Type PSCredential | ||
} | ||
It "Accepts Id as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter Id -Type Int32[] | ||
} | ||
It "Accepts InputObject as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter InputObject -Type Object[] | ||
} | ||
It "Accepts EnableException as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter EnableException -Type SwitchParameter | ||
} | ||
} | ||
} | ||
|
||
Describe "$CommandName Integration Tests" -Tags "IntegrationTests" { | ||
BeforeAll { | ||
$sql = "-- Create a Queue | ||
declare @rc int | ||
declare @TraceID int | ||
declare @maxfilesize bigint | ||
set @maxfilesize = 5 | ||
exec @rc = sp_trace_create @TraceID output, 0, N'C:\windows\temp\temptrace', @maxfilesize, NULL | ||
Context "Integration Tests" -Tag "IntegrationTests" { | ||
BeforeAll { | ||
$sql = @" | ||
-- Create a Queue | ||
declare @rc int | ||
declare @TraceID int | ||
declare @maxfilesize bigint | ||
set @maxfilesize = 5 | ||
exec @rc = sp_trace_create @TraceID output, 0, N'C:\windows\temp\temptrace', @maxfilesize, NULL | ||
-- Set the events | ||
declare @on bit | ||
set @on = 1 | ||
exec sp_trace_setevent @TraceID, 14, 1, @on | ||
exec sp_trace_setevent @TraceID, 14, 9, @on | ||
exec sp_trace_setevent @TraceID, 14, 10, @on | ||
exec sp_trace_setevent @TraceID, 14, 11, @on | ||
exec sp_trace_setevent @TraceID, 14, 6, @on | ||
exec sp_trace_setevent @TraceID, 14, 12, @on | ||
exec sp_trace_setevent @TraceID, 14, 14, @on | ||
exec sp_trace_setevent @TraceID, 15, 11, @on | ||
exec sp_trace_setevent @TraceID, 15, 6, @on | ||
exec sp_trace_setevent @TraceID, 15, 9, @on | ||
exec sp_trace_setevent @TraceID, 15, 10, @on | ||
exec sp_trace_setevent @TraceID, 15, 12, @on | ||
exec sp_trace_setevent @TraceID, 15, 13, @on | ||
exec sp_trace_setevent @TraceID, 15, 14, @on | ||
exec sp_trace_setevent @TraceID, 15, 15, @on | ||
exec sp_trace_setevent @TraceID, 15, 16, @on | ||
exec sp_trace_setevent @TraceID, 15, 17, @on | ||
exec sp_trace_setevent @TraceID, 15, 18, @on | ||
exec sp_trace_setevent @TraceID, 17, 1, @on | ||
exec sp_trace_setevent @TraceID, 17, 9, @on | ||
exec sp_trace_setevent @TraceID, 17, 10, @on | ||
exec sp_trace_setevent @TraceID, 17, 11, @on | ||
exec sp_trace_setevent @TraceID, 17, 6, @on | ||
exec sp_trace_setevent @TraceID, 17, 12, @on | ||
exec sp_trace_setevent @TraceID, 17, 14, @on | ||
exec sp_trace_setevent @TraceID, 10, 9, @on | ||
exec sp_trace_setevent @TraceID, 10, 2, @on | ||
exec sp_trace_setevent @TraceID, 10, 10, @on | ||
exec sp_trace_setevent @TraceID, 10, 6, @on | ||
exec sp_trace_setevent @TraceID, 10, 11, @on | ||
exec sp_trace_setevent @TraceID, 10, 12, @on | ||
exec sp_trace_setevent @TraceID, 10, 13, @on | ||
exec sp_trace_setevent @TraceID, 10, 14, @on | ||
exec sp_trace_setevent @TraceID, 10, 15, @on | ||
exec sp_trace_setevent @TraceID, 10, 16, @on | ||
exec sp_trace_setevent @TraceID, 10, 17, @on | ||
exec sp_trace_setevent @TraceID, 10, 18, @on | ||
exec sp_trace_setevent @TraceID, 12, 1, @on | ||
exec sp_trace_setevent @TraceID, 12, 9, @on | ||
exec sp_trace_setevent @TraceID, 12, 11, @on | ||
exec sp_trace_setevent @TraceID, 12, 6, @on | ||
exec sp_trace_setevent @TraceID, 12, 10, @on | ||
exec sp_trace_setevent @TraceID, 12, 12, @on | ||
exec sp_trace_setevent @TraceID, 12, 13, @on | ||
exec sp_trace_setevent @TraceID, 12, 14, @on | ||
exec sp_trace_setevent @TraceID, 12, 15, @on | ||
exec sp_trace_setevent @TraceID, 12, 16, @on | ||
exec sp_trace_setevent @TraceID, 12, 17, @on | ||
exec sp_trace_setevent @TraceID, 12, 18, @on | ||
exec sp_trace_setevent @TraceID, 13, 1, @on | ||
exec sp_trace_setevent @TraceID, 13, 9, @on | ||
exec sp_trace_setevent @TraceID, 13, 11, @on | ||
exec sp_trace_setevent @TraceID, 13, 6, @on | ||
exec sp_trace_setevent @TraceID, 13, 10, @on | ||
exec sp_trace_setevent @TraceID, 13, 12, @on | ||
exec sp_trace_setevent @TraceID, 13, 14, @on | ||
-- Set the events | ||
declare @on bit | ||
set @on = 1 | ||
exec sp_trace_setevent @TraceID, 14, 1, @on | ||
exec sp_trace_setevent @TraceID, 14, 9, @on | ||
exec sp_trace_setevent @TraceID, 14, 10, @on | ||
exec sp_trace_setevent @TraceID, 14, 11, @on | ||
exec sp_trace_setevent @TraceID, 14, 6, @on | ||
exec sp_trace_setevent @TraceID, 14, 12, @on | ||
exec sp_trace_setevent @TraceID, 14, 14, @on | ||
exec sp_trace_setevent @TraceID, 15, 11, @on | ||
exec sp_trace_setevent @TraceID, 15, 6, @on | ||
exec sp_trace_setevent @TraceID, 15, 9, @on | ||
exec sp_trace_setevent @TraceID, 15, 10, @on | ||
exec sp_trace_setevent @TraceID, 15, 12, @on | ||
exec sp_trace_setevent @TraceID, 15, 13, @on | ||
exec sp_trace_setevent @TraceID, 15, 14, @on | ||
exec sp_trace_setevent @TraceID, 15, 15, @on | ||
exec sp_trace_setevent @TraceID, 15, 16, @on | ||
exec sp_trace_setevent @TraceID, 15, 17, @on | ||
exec sp_trace_setevent @TraceID, 15, 18, @on | ||
exec sp_trace_setevent @TraceID, 17, 1, @on | ||
exec sp_trace_setevent @TraceID, 17, 9, @on | ||
exec sp_trace_setevent @TraceID, 17, 10, @on | ||
exec sp_trace_setevent @TraceID, 17, 11, @on | ||
exec sp_trace_setevent @TraceID, 17, 6, @on | ||
exec sp_trace_setevent @TraceID, 17, 12, @on | ||
exec sp_trace_setevent @TraceID, 17, 14, @on | ||
exec sp_trace_setevent @TraceID, 10, 9, @on | ||
exec sp_trace_setevent @TraceID, 10, 2, @on | ||
exec sp_trace_setevent @TraceID, 10, 10, @on | ||
exec sp_trace_setevent @TraceID, 10, 6, @on | ||
exec sp_trace_setevent @TraceID, 10, 11, @on | ||
exec sp_trace_setevent @TraceID, 10, 12, @on | ||
exec sp_trace_setevent @TraceID, 10, 13, @on | ||
exec sp_trace_setevent @TraceID, 10, 14, @on | ||
exec sp_trace_setevent @TraceID, 10, 15, @on | ||
exec sp_trace_setevent @TraceID, 10, 16, @on | ||
exec sp_trace_setevent @TraceID, 10, 17, @on | ||
exec sp_trace_setevent @TraceID, 10, 18, @on | ||
exec sp_trace_setevent @TraceID, 12, 1, @on | ||
exec sp_trace_setevent @TraceID, 12, 9, @on | ||
exec sp_trace_setevent @TraceID, 12, 11, @on | ||
exec sp_trace_setevent @TraceID, 12, 6, @on | ||
exec sp_trace_setevent @TraceID, 12, 10, @on | ||
exec sp_trace_setevent @TraceID, 12, 12, @on | ||
exec sp_trace_setevent @TraceID, 12, 13, @on | ||
exec sp_trace_setevent @TraceID, 12, 14, @on | ||
exec sp_trace_setevent @TraceID, 12, 15, @on | ||
exec sp_trace_setevent @TraceID, 12, 16, @on | ||
exec sp_trace_setevent @TraceID, 12, 17, @on | ||
exec sp_trace_setevent @TraceID, 12, 18, @on | ||
exec sp_trace_setevent @TraceID, 13, 1, @on | ||
exec sp_trace_setevent @TraceID, 13, 9, @on | ||
exec sp_trace_setevent @TraceID, 13, 11, @on | ||
exec sp_trace_setevent @TraceID, 13, 6, @on | ||
exec sp_trace_setevent @TraceID, 13, 10, @on | ||
exec sp_trace_setevent @TraceID, 13, 12, @on | ||
exec sp_trace_setevent @TraceID, 13, 14, @on | ||
-- Set the Filters | ||
declare @intfilter int | ||
declare @bigintfilter bigint | ||
-- Set the Filters | ||
declare @intfilter int | ||
declare @bigintfilter bigint | ||
exec sp_trace_setfilter @TraceID, 10, 0, 7, N'SQL Server Profiler - 934a8575-0dc1-4937-bde1-edac1cb9691f' | ||
-- Set the trace status to start | ||
exec sp_trace_setstatus @TraceID, 1 | ||
exec sp_trace_setfilter @TraceID, 10, 0, 7, N'SQL Server Profiler - 934a8575-0dc1-4937-bde1-edac1cb9691f' | ||
-- Set the trace status to start | ||
exec sp_trace_setstatus @TraceID, 1 | ||
-- display trace id for future references | ||
select TraceID=@TraceID" | ||
$server = Connect-DbaInstance -SqlInstance $script:instance1 | ||
$traceid = ($server.Query($sql)).TraceID | ||
} | ||
AfterAll { | ||
Remove-Item C:\windows\temp\temptrace.trc | ||
} | ||
Context "Test Removing Trace" { | ||
$results = Get-DbaTrace -SqlInstance $script:instance1 -Id $traceid | Remove-DbaTrace | ||
It "returns the right values" { | ||
$results.Id | Should Be $traceid | ||
$results.Status | Should Be "Stopped, closed and deleted" | ||
-- display trace id for future references | ||
select TraceID=@TraceID | ||
"@ | ||
$server = Connect-DbaInstance -SqlInstance $script:instance1 | ||
$traceid = ($server.Query($sql)).TraceID | ||
} | ||
|
||
AfterAll { | ||
Remove-Item C:\windows\temp\temptrace.trc -ErrorAction SilentlyContinue | ||
} | ||
It "doesn't return any result for trace file id $traceid" { | ||
Get-DbaTrace -SqlInstance $script:instance1 -Id $traceid | Should Be $null | ||
|
||
It "Removes the trace" { | ||
$results = Get-DbaTrace -SqlInstance $script:instance1 -Id $traceid | Remove-DbaTrace | ||
$results.Id | Should -Be $traceid | ||
$results.Status | Should -Be "Stopped, closed and deleted" | ||
} | ||
|
||
It "Doesn't return any result for removed trace file id" { | ||
Get-DbaTrace -SqlInstance $script:instance1 -Id $traceid | Should -BeNullOrEmpty | ||
} | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,38 +1,48 @@ | ||
$CommandName = $MyInvocation.MyCommand.Name.Replace(".Tests.ps1", "") | ||
Write-Host -Object "Running $PSCommandPath" -ForegroundColor Cyan | ||
. "$PSScriptRoot\constants.ps1" | ||
param($ModuleName = 'dbatools') | ||
|
||
Describe "$CommandName Unit Tests" -Tag 'UnitTests' { | ||
Describe "Remove-DbaXESession" { | ||
Context "Validate parameters" { | ||
[object[]]$params = (Get-Command $CommandName).Parameters.Keys | Where-Object {$_ -notin ('whatif', 'confirm')} | ||
[object[]]$knownParameters = 'SqlInstance', 'SqlCredential', 'Session', 'AllSessions', 'InputObject', 'EnableException' | ||
$knownParameters += [System.Management.Automation.PSCmdlet]::CommonParameters | ||
It "Should only contain our specific parameters" { | ||
(@(Compare-Object -ReferenceObject ($knownParameters | Where-Object {$_}) -DifferenceObject $params).Count ) | Should Be 0 | ||
BeforeAll { | ||
$CommandUnderTest = Get-Command Remove-DbaXESession | ||
} | ||
It "Should have SqlInstance as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter SqlInstance -Type DbaInstanceParameter[] | ||
} | ||
It "Should have SqlCredential as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter SqlCredential -Type PSCredential | ||
} | ||
It "Should have Session as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter Session -Type Object[] | ||
} | ||
It "Should have AllSessions as a switch parameter" { | ||
$CommandUnderTest | Should -HaveParameter AllSessions -Type switch | ||
} | ||
It "Should have InputObject as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter InputObject -Type Session[] | ||
} | ||
It "Should have EnableException as a switch parameter" { | ||
$CommandUnderTest | Should -HaveParameter EnableException -Type switch | ||
} | ||
} | ||
} | ||
|
||
Describe "$CommandName Integration Tests" -Tags "IntegrationTests" { | ||
BeforeAll { | ||
$null = Get-DbaXESession -SqlInstance $script:instance2 -Session 'Profiler TSQL Duration' | Remove-DbaXESession | ||
} | ||
AfterAll { | ||
$null = Get-DbaXESession -SqlInstance $script:instance2 -Session 'Profiler TSQL Duration' | Remove-DbaXESession | ||
} | ||
Context "Test Importing Session Template" { | ||
$results = Import-DbaXESessionTemplate -SqlInstance $script:instance2 -Template 'Profiler TSQL Duration' | ||
|
||
It "session should exist" { | ||
$results.Name | Should Be 'Profiler TSQL Duration' | ||
Context "Integration Tests" -Tag "IntegrationTests" { | ||
BeforeAll { | ||
. "$PSScriptRoot\constants.ps1" | ||
$null = Get-DbaXESession -SqlInstance $script:instance2 -Session 'Profiler TSQL Duration' | Remove-DbaXESession | ||
} | ||
AfterAll { | ||
$null = Get-DbaXESession -SqlInstance $script:instance2 -Session 'Profiler TSQL Duration' | Remove-DbaXESession | ||
} | ||
|
||
It "Imports and removes a session template" { | ||
$results = Import-DbaXESessionTemplate -SqlInstance $script:instance2 -Template 'Profiler TSQL Duration' | ||
$results.Name | Should -Be 'Profiler TSQL Duration' | ||
|
||
$null = Get-DbaXESession -SqlInstance $script:instance2 -Session 'Profiler TSQL Duration' | Remove-DbaXESession | ||
$results = Get-DbaXESession -SqlInstance $script:instance2 -Session 'Profiler TSQL Duration' | ||
$null = Get-DbaXESession -SqlInstance $script:instance2 -Session 'Profiler TSQL Duration' | Remove-DbaXESession | ||
$results = Get-DbaXESession -SqlInstance $script:instance2 -Session 'Profiler TSQL Duration' | ||
|
||
It "session should no longer exist" { | ||
$results.Name | Should Be $null | ||
$results.Status | Should Be $null | ||
$results.Name | Should -BeNullOrEmpty | ||
$results.Status | Should -BeNullOrEmpty | ||
} | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,19 +1,60 @@ | ||
$CommandName = $MyInvocation.MyCommand.Name.Replace(".Tests.ps1", "") | ||
Write-Host -Object "Running $PSCommandPath" -ForegroundColor Cyan | ||
. "$PSScriptRoot\constants.ps1" | ||
param($ModuleName = 'dbatools') | ||
|
||
Describe "$CommandName Unit Tests" -Tag 'UnitTests' { | ||
Describe "Remove-DbaXESmartTarget" { | ||
Context "Validate parameters" { | ||
[object[]]$params = (Get-Command $CommandName).Parameters.Keys | Where-Object {$_ -notin ('whatif', 'confirm')} | ||
[object[]]$knownParameters = 'InputObject', 'EnableException' | ||
$knownParameters += [System.Management.Automation.PSCmdlet]::CommonParameters | ||
It "Should only contain our specific parameters" { | ||
(@(Compare-Object -ReferenceObject ($knownParameters | Where-Object {$_}) -DifferenceObject $params).Count ) | Should Be 0 | ||
BeforeAll { | ||
$CommandUnderTest = Get-Command Remove-DbaXESmartTarget | ||
} | ||
It "Accepts InputObject as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter InputObject -Type Object[] -Not -Mandatory | ||
} | ||
It "Accepts EnableException as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter EnableException -Type Switch -Not -Mandatory | ||
} | ||
It "Accepts Verbose as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter Verbose -Type Switch -Not -Mandatory | ||
} | ||
It "Accepts Debug as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter Debug -Type Switch -Not -Mandatory | ||
} | ||
It "Accepts ErrorAction as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter ErrorAction -Type ActionPreference -Not -Mandatory | ||
} | ||
It "Accepts WarningAction as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter WarningAction -Type ActionPreference -Not -Mandatory | ||
} | ||
It "Accepts InformationAction as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter InformationAction -Type ActionPreference -Not -Mandatory | ||
} | ||
It "Accepts ProgressAction as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter ProgressAction -Type ActionPreference -Not -Mandatory | ||
} | ||
It "Accepts ErrorVariable as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter ErrorVariable -Type String -Not -Mandatory | ||
} | ||
It "Accepts WarningVariable as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter WarningVariable -Type String -Not -Mandatory | ||
} | ||
It "Accepts InformationVariable as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter InformationVariable -Type String -Not -Mandatory | ||
} | ||
It "Accepts OutVariable as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter OutVariable -Type String -Not -Mandatory | ||
} | ||
It "Accepts OutBuffer as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter OutBuffer -Type Int32 -Not -Mandatory | ||
} | ||
It "Accepts PipelineVariable as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter PipelineVariable -Type String -Not -Mandatory | ||
} | ||
It "Accepts WhatIf as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter WhatIf -Type Switch -Not -Mandatory | ||
} | ||
It "Accepts Confirm as a parameter" { | ||
$CommandUnderTest | Should -HaveParameter Confirm -Type Switch -Not -Mandatory | ||
} | ||
} | ||
} | ||
<# | ||
Integration test should appear below and are custom to the command you are writing. | ||
Read https://github.com/dataplat/dbatools/blob/development/contributing.md#tests | ||
for more guidence. | ||
#> | ||
|
||
# Integration tests can be added below this line | ||
# Read https://github.com/dataplat/dbatools/blob/development/contributing.md#tests for more guidance |
Oops, something went wrong.