New to Pester

This topic contains 1 reply, has 2 voices, and was last updated by  postanote 1 week ago.

  • Author
    Posts
  • #93519

    Brian
    Participant

    I've been charged with converting a bash script running in cygwin to a powershell script. The goal of the script is to copy files that randomly drop into a directory, to another directory depending on the file name. I've got the basic idea of how I want my script to run. But I want to take this as a opportunity to learn/utilize pester.

    I'm posting on the forum because I have no idea where to start on writing a test that ensures a file was copied from one directory, to the appropriate directory.

  • #93522

    postanote
    Participant

    Use this for you Pester ramp up...

    This week we are honored to have one of the authors of Pester here with us on the Hey, Scripting Guys! Blog. It's Dave Wyatt himself, a Cloud and Datacenter MVP. Dave, tell us all about Pester…

    Note This is a five-part series that includes the following posts:
    •What is Pester and Why Should I Care?
    Learn about a new test framework for PowerShell called Pester
    •Getting Started with Pester
    Learn how to get information back from Pester
    •Unit Testing PowerShell Code with Pester
    Use Pester to analyze small pieces of Windows PowerShell code
    •Testing Script Modules with Pester
    Use Pester for testing PowerShell modules
    •More Pester Features and Resources
    Learn about more Pester resources

    'blogs.technet.microsoft.com/heyscriptingguy/2015/12/14/what-is-pester-and-why-should-i-care'

    As for this..

    The goal of the script is to copy files that randomly drop into a directory

    .. you can do this by building and using a WMI Event monitor to watch a folder for writes.

    There are plenty of examples and articles on this topic. Use you search engine of choice to bring up a list.
    'wmi folder monitor'

    Example:

    Use PowerShell to Monitor for the Creation of New Files

    Today I am going to develop a WMI event query to detect newly created files in a particular folder. Then I will use this WQL event query tomorrow to create a permanent WMI event consumer. In fact, whenever I am creating a permanent WMI event consumer, I always test it out as a temporary event consumer first. Creating a temporary event consumer with Windows PowerShell 2.0 is really easy, so it only makes sense to take this first step.

    'blogs.technet.microsoft.com/heyscriptingguy/2012/07/17/use-powershell-to-monitor-for-the-creation-of-new-files'

    As for...

    to another directory depending on the file name.

    Use Get-ChildItem using a filter for the file names, the pipe that to the Copy-Item cmdlet to send to your destination.
    Just look to the built-in PowerShell help files on their use.

        # Get parameters, examples, full and Online help for a cmdlet or function
    
        (Get-Command -Name Get-ChildItem).Parameters
        Get-help -Name Get-ChildItem -Examples
        Get-help -Name Get-ChildItem -Full
        Get-help -Name Get-ChildItem -Online
    
        (Get-Command -Name Copy-Item).Parameters
        Get-help -Name Copy-Item -Examples
        Get-help -Name Copy-Item -Full
        Get-help -Name Copy-Item -Online
    

You must be logged in to reply to this topic.