Skip to content

Commit

Permalink
boom
Browse files Browse the repository at this point in the history
  • Loading branch information
potatoqualitee committed Oct 17, 2024
1 parent 78cb317 commit 45c4b99
Show file tree
Hide file tree
Showing 149 changed files with 9,231 additions and 6,926 deletions.
212 changes: 112 additions & 100 deletions tests/Remove-DbaTrace.Tests.ps1
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
}
}
}
}
66 changes: 38 additions & 28 deletions tests/Remove-DbaXESession.Tests.ps1
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
}
}
}
}
69 changes: 55 additions & 14 deletions tests/Remove-DbaXESmartTarget.Tests.ps1
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
Loading

0 comments on commit 45c4b99

Please sign in to comment.