diff --git a/AD-COMPUTER-Get-DomainComputer/Get-DomainComputer.ps1 b/AD-COMPUTER-Get-DomainComputer/Get-DomainComputer.ps1 index aa63e156..44836787 100644 --- a/AD-COMPUTER-Get-DomainComputer/Get-DomainComputer.ps1 +++ b/AD-COMPUTER-Get-DomainComputer/Get-DomainComputer.ps1 @@ -1,4 +1,4 @@ -Function Get-DomainComputer { +function Get-DomainComputer { <# .SYNOPSIS The Get-DomainComputer function allows you to get information from an Active Directory Computer object using ADSI. diff --git a/tests/AdvancedPesterTests-UnitTest/AD-Computer-Get-DomainComputer/AD-COMPUTER-Get-DomainComputer.test.ps1 b/tests/AdvancedPesterTests-UnitTest/AD-Computer-Get-DomainComputer/AD-COMPUTER-Get-DomainComputer.test.ps1 new file mode 100644 index 00000000..5279f195 --- /dev/null +++ b/tests/AdvancedPesterTests-UnitTest/AD-Computer-Get-DomainComputer/AD-COMPUTER-Get-DomainComputer.test.ps1 @@ -0,0 +1,21 @@ +Import-Module "$PSScriptRoot\Get-DomainComputer.psd1" +Import-Module "$PSScriptRoot\pester-installables\Pester\src\Pester.psd1" + +Describe "AD-COMPUTER-Get-DomainComputer test for returning object"{ + $script:test=0 + $script:test++ + It "$("$script:test".padleft(3, '0')): Syntax test"{ + (Get-Command -Syntax Get-DomainComputer).Trim()| Should -BeTrue #Can be changed if someone gives me the output of the command before the pipeline + } + $script:test++ + It "$("$script:test".padleft(3, '0')): Compatibility with test objects"{ + try{ + Get-DomainComputer -ComputerName "dummycomputer" -Domain "dummydomain" + $true| Should -BeTrue #Can be changed if someone gives me the output of Get-DomainComputer in xml format, after export the object via $object|Export-CliXML "" + } + catch{ + Write-Host "$($_.exception.message) $($_.errordetails.message)" + $false| Should -BeTrue + } + } + } diff --git a/tests/AdvancedPesterTests-UnitTest/AD-Computer-Get-DomainComputer/Get-DomainComputer.psd1 b/tests/AdvancedPesterTests-UnitTest/AD-Computer-Get-DomainComputer/Get-DomainComputer.psd1 new file mode 100644 index 00000000..8a770e0c --- /dev/null +++ b/tests/AdvancedPesterTests-UnitTest/AD-Computer-Get-DomainComputer/Get-DomainComputer.psd1 @@ -0,0 +1,132 @@ +# +# Module manifest for module 'Get-DomainComputer' +# +# Generated by: subhambose +# +# Generated on: 6/13/2024 +# + +@{ + +# Script module or binary module file associated with this manifest. +# RootModule = '' + +# Version number of this module. +ModuleVersion = '0.0.1' + +# Supported PSEditions +# CompatiblePSEditions = @() + +# ID used to uniquely identify this module +GUID = '3fdb0a04-0fe7-45fd-ab41-48c3b2522289' + +# Author of this module +Author = 'subhambose' + +# Company or vendor of this module +CompanyName = 'Unknown' + +# Copyright statement for this module +Copyright = '(c) subhambose. All rights reserved.' + +# Description of the functionality provided by this module +# Description = '' + +# Minimum version of the PowerShell engine required by this module +# PowerShellVersion = '' + +# Name of the PowerShell host required by this module +# PowerShellHostName = '' + +# Minimum version of the PowerShell host required by this module +# PowerShellHostVersion = '' + +# Minimum version of Microsoft .NET Framework required by this module. This prerequisite is valid for the PowerShell Desktop edition only. +# DotNetFrameworkVersion = '' + +# Minimum version of the common language runtime (CLR) required by this module. This prerequisite is valid for the PowerShell Desktop edition only. +# ClrVersion = '' + +# Processor architecture (None, X86, Amd64) required by this module +# ProcessorArchitecture = '' + +# Modules that must be imported into the global environment prior to importing this module +# RequiredModules = @() + +# Assemblies that must be loaded prior to importing this module +# RequiredAssemblies = @() + +# Script files (.ps1) that are run in the caller's environment prior to importing this module. +# ScriptsToProcess = @() + +# Type files (.ps1xml) to be loaded when importing this module +# TypesToProcess = @() + +# Format files (.ps1xml) to be loaded when importing this module +# FormatsToProcess = @() + +# Modules to import as nested modules of the module specified in RootModule/ModuleToProcess +NestedModules = @('./../../../AD-COMPUTER-Get-DomainComputer/Get-DomainComputer.ps1') + +# Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export. +FunctionsToExport = '*' + +# Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export. +CmdletsToExport = '*' + +# Variables to export from this module +VariablesToExport = '*' + +# Aliases to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no aliases to export. +AliasesToExport = '*' + +# DSC resources to export from this module +# DscResourcesToExport = @() + +# List of all modules packaged with this module +# ModuleList = @() + +# List of all files packaged with this module +# FileList = @() + +# Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell. +PrivateData = @{ + + PSData = @{ + + # Tags applied to this module. These help with module discovery in online galleries. + # Tags = @() + + # A URL to the license for this module. + # LicenseUri = '' + + # A URL to the main website for this project. + # ProjectUri = '' + + # A URL to an icon representing this module. + # IconUri = '' + + # ReleaseNotes of this module + # ReleaseNotes = '' + + # Prerelease string of this module + # Prerelease = '' + + # Flag to indicate whether the module requires explicit user acceptance for install/update/save + # RequireLicenseAcceptance = $false + + # External dependent modules of this module + # ExternalModuleDependencies = @() + + } # End of PSData hashtable + +} # End of PrivateData hashtable + +# HelpInfo URI of this module +# HelpInfoURI = '' + +# Default prefix for commands exported from this module. Override the default prefix using Import-Module -Prefix. +# DefaultCommandPrefix = '' + +} + diff --git a/tests/AdvancedPesterTests-UnitTest/AD-Computer-Get-DomainComputer/manual-steps.txt b/tests/AdvancedPesterTests-UnitTest/AD-Computer-Get-DomainComputer/manual-steps.txt new file mode 100644 index 00000000..d0254905 --- /dev/null +++ b/tests/AdvancedPesterTests-UnitTest/AD-Computer-Get-DomainComputer/manual-steps.txt @@ -0,0 +1 @@ +New-ModuleManifest Get-DomainComputer.psd1 -NestedModules "./../../../AD-COMPUTER-Get-DomainComputer/Get-DomainComputer.ps1" diff --git a/tests/AdvancedPesterTests-UnitTest/AD-Computer-Get-DomainComputer/pester-installables/Pester b/tests/AdvancedPesterTests-UnitTest/AD-Computer-Get-DomainComputer/pester-installables/Pester new file mode 160000 index 00000000..42db1917 --- /dev/null +++ b/tests/AdvancedPesterTests-UnitTest/AD-Computer-Get-DomainComputer/pester-installables/Pester @@ -0,0 +1 @@ +Subproject commit 42db1917199b98214f80c2cd45d7f8f1da416cc9