Skip to content

Add Tests for Function Exports #3

Open

Description

@markekraus

As a ModuleBuilder user
In order to ensure expectations
I need shared tests that validate inputs and outputs


We should create common test cases

  • Test all exported functions came from separate files
  • Test all public functions are properly exported by the module
  • Test only public functions are exported by the module

Activity

  1. Jaykul commented on May 4, 2018

    @Jaykul
    Member

    NOTE: these tests need to ship with the module, and shouldn't be confused with the unit tests which also need to verify that this happens in order to prove that our code actually does the right thing.

  2. kilasuit commented on May 19, 2018

    @kilasuit
    Contributor

    have a look into https://github.com/PowerShellModules/PesterHelpers/ as there may be some overlaps / enhancements there that can be brought in for this

  3. Rick-2CA commented on Jun 15, 2018

    @Rick-2CA

    On the chance this goes in the direction you're after I've got some tests written to help ensure the module is loading properly at https://github.com/Rick-2CA/MDSTools/blob/master/Tests/Unit.GenericModule.Tests.ps1. Seems to go in the direction the issue is after. I'd be interested in putting more work into it to better serve the project if the approach is close enough to build off of.

  4. lipkau commented on Aug 11, 2018

    @lipkau
    Contributor

    I just found this issue and wanted to add my 2 cents.

    I have a lot of functions where I use the manifest's DefaultCommandPrefix.
    So I need to consider a dynamic prefix in the command names. And therefore I wrote my tests like this:
    https://github.com/AtlassianPS/AtlassianPS.Configuration/blob/master/Tests/Project.Tests.ps1#L41-L58

    As far as I can tell (and have tested), this works perfectly on modules that don't use DefaultCommandPrefix.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions