Full-featured test framework for Go! Assertions, mocking, input testing, output capturing, and much more! 🍕

Overview

testza 🍕

Testza is like pizza for Go - you could life without it, but why should you?

Latest Release Tests Coverage Unit test count Issues License: MIT


Get The Module | Documentation | Contributing | Code of Conduct


Screenshot of an example test message

Installation

# Execute this command inside your project
go get github.com/MarvinJWendt/testza

Description

Testza is a full-featured testing framework for Go. It integrates with the default test runner, so you can use it with the standard go test tool. Testza contains easy to use methods, like assertions, output capturing, mocking, and much more.

Testza is structured a bit differently than you might be used to in Go, but we think that it makes writing tests as easy and efficient as possible.
After all, writing tests should be very simple and should not require you to study a whole framework.
That's why we made testza to integrate perfectly with your IDE. You don't even have to lookup the documentation, as testza is self-explanatory.

Getting Started

Testza is very IDE friendly and was made to integrate with your IDE to increase your productivity.

Testza package
   |    ┌ Container for all testza modules
   |    |The module you want to use (Press Ctrl+Space to see a list of all modules)
testza.Use.XXXXXXX


// --- Some Examples ---

// - Some assertions -
testza.Use.Assert.True(t, true) // -> Pass
testza.Use.Assert.NoError(t, err) // -> Pass
testza.Use.Assert.Equal(t, object, object) // -> Pass
// ...

// - Testing console output -
// Test the output of your CLI tool easily!
terminalOutput, _ := testza.Use.Capture.Stdout(func(w io.Writer) error {fmt.Println("Hello"); return nil})
testza.Use.Assert.Equal(t, terminalOutput, "Hello\n") // -> Pass

// - Mocking -
// Testing a function that accepts email addresses as a parameter:

// Testset of many different email addresses
emailAddresses := testza.Use.Mock.Strings.EmailAddresses()

// Run a test for every string in the test set
testza.Use.Mock.Strings.RunTests(t, emailAddresses, func(t *testing.T, index int, str string) {
  user, domain, err := internal.ParseEmailAddress(str) // Use your function
  testza.Use.Assert.NoError(t, err) // Assert that your function does not return an error
  testza.Use.Assert.NotZero(t, user) // Assert that the user is returned
  testza.Use.Assert.NotZero(t, domain) // Assert that the domain is returned
})

// And that's just a few examples of what you can do with Testza!

Documentation

Module Methods
Assert
Click to expand
Capture
Click to expand
Mock.Inputs.Strings
Click to expand
Mock.Inputs.Bools
Click to expand
Mock.Inputs.Floats64
Click to expand
Mock.Inputs.Ints
Click to expand

Assert

testza.Use.Assert.CompletesIn

func CompletesIn(t testRunner, duration time.Duration, f func(), msg ...interface{})

CompletesIn asserts that a function completes in a given time. Use this function to test that functions do not take too long to complete.

NOTE: Every system takes a different amount of time to complete a function. Do not set the duration too low, if you want consistent results.

testza.Use.Assert.Contains

func Contains(t testRunner, object, element interface{}, msg ...interface{})

testza.Use.Assert.Equal

func Equal(t testRunner, expected interface{}, actual interface{}, msg ...interface{})

Equal asserts that two objects are equal.

testza.Use.Assert.EqualValues

func EqualValues(t testRunner, expected interface{}, actual interface{}, msg ...interface{})

EqualValues asserts that two objects have equal values.

testza.Use.Assert.False

func False(t testRunner, value interface{}, msg ...interface{})

False asserts that an expression or object resolves to false.

testza.Use.Assert.Greater

func Greater(t testRunner, object1, object2 interface{}, msg ...interface{})

Greater asserts that the first object is greater than the second.

testza.Use.Assert.Implements

func Implements(t testRunner, interfaceObject, object interface{}, msg ...interface{})

Implements checks if an objects implements an interface.

testza.Use.Assert.Implements(t, (*YourInterface)(nil), new(YourObject))
testza.Use.Assert.Implements(t, (*fmt.Stringer)(nil), new(types.Const)) => pass

testza.Use.Assert.KindOf

func KindOf(t testRunner, expectedKind reflect.Kind, object interface{}, msg ...interface{})

KindOf asserts that the object is a type of kind exptectedKind.

testza.Use.Assert.Less

func Less(t testRunner, object1, object2 interface{}, msg ...interface{})

Less asserts that the first object is less than the second.

testza.Use.Assert.Nil

func Nil(t testRunner, object interface{}, msg ...interface{})

Nil asserts that an object is nil.

testza.Use.Assert.NoError

func NoError(t testRunner, err interface{}, msg ...interface{})

NoError asserts that an error is nil.

testza.Use.Assert.NotCompletesIn

func NotCompletesIn(t testRunner, duration time.Duration, f func(), msg ...interface{})

NotCompletesIn asserts that a function does not complete in a given time. Use this function to test that functions do not complete to quickly. For example if your database connection completes in under a millisecond, there might be something wrong.

NOTE: Every system takes a different amount of time to complete a function. Do not set the duration too high, if you want consistent results.

testza.Use.Assert.NotContains

func NotContains(t testRunner, object, element interface{}, msg ...interface{})

testza.Use.Assert.NotEqual

func NotEqual(t testRunner, expected interface{}, actual interface{}, msg ...interface{})

NotEqual asserts that two objects are not equal.

testza.Use.Assert.NotEqualValues

func NotEqualValues(t testRunner, expected interface{}, actual interface{}, msg ...interface{})

NotEqualValues asserts that two objects do not have equal values.

testza.Use.Assert.NotImplements

func NotImplements(t testRunner, interfaceObject, object interface{}, msg ...interface{})

NotImplements checks if an object does not implement an interface.

testza.Use.Assert.NotImplements(t, (*YourInterface)(nil), new(YourObject))
testza.Use.Assert.NotImplements(t, (*fmt.Stringer)(nil), new(types.Const)) => fail, because types.Const does implement fmt.Stringer.

testza.Use.Assert.NotKindOf

func NotKindOf(t testRunner, kind reflect.Kind, object interface{}, msg ...interface{})

NotKindOf asserts that the object is not a type of kind kind.

testza.Use.Assert.NotNil

func NotNil(t testRunner, object interface{}, msg ...interface{})

NotNil assertsthat an object is not nil.

testza.Use.Assert.NotNumeric

func NotNumeric(t testRunner, object interface{}, msg ...interface{})

Number checks if the object is not a numeric type. Numeric types are: Int, Int8, Int16, Int32, Int64, Float32, Float64, Uint, Uint8, Uint16, Uint32, Uint64, Complex64 and Complex128.

testza.Use.Assert.NotPanic

func NotPanic(t testRunner, f func(), msg ...interface{})

NotPanic asserts that a function does not panic.

testza.Use.Assert.NotZero

func NotZero(t testRunner, value interface{}, msg ...interface{})

NotZero asserts that the value is not the zero value for it's type.

assert.NotZero(t, 1337)
assert.NotZero(t, true)
assert.NotZero(t, "Hello, World")

testza.Use.Assert.Numeric

func Numeric(t testRunner, object interface{}, msg ...interface{})

Numeric asserts that the object is a numeric type. Numeric types are: Int, Int8, Int16, Int32, Int64, Float32, Float64, Uint, Uint8, Uint16, Uint32, Uint64, Complex64 and Complex128.

testza.Use.Assert.Panic

func Panic(t testRunner, f func(), msg ...interface{})

Panic asserts that a function panics.

testza.Use.Assert.True

func True(t testRunner, value interface{}, msg ...interface{})

True asserts that an expression or object resolves to true.

testza.Use.Assert.Zero

func Zero(t testRunner, value interface{}, msg ...interface{})

Zero asserts that the value is the zero value for it's type.

assert.Zero(t, 0)
assert.Zero(t, false)
assert.Zero(t, "")

Capture

testza.Use.Capture.Stderr

func Stderr(capture func(w io.Writer) error) (string, error)

Stderr captures everything written to stderr from a specific function. You can use this method in tests, to validate that your functions writes a string to the terminal.

testza.Use.Capture.Stdout

func Stdout(capture func(w io.Writer) error) (string, error)

Stdout captures everything written to stdout from a specific function. You can use this method in tests, to validate that your functions writes a string to the terminal.

Mock.Inputs.Bools

testza.Use.Mock.Inputs.Bools.Full

func Full() []bool

Full returns true and false in a boolean slice.

Mock.Inputs.Floats64

testza.Use.Mock.Inputs.Floats64.Full

func Full() (floats []float64)

testza.Use.Mock.Inputs.Floats64.GenerateRandomNegative

func GenerateRandomNegative(count int, min float64) (floats []float64)

GenerateRandomNegative generates random negative integers with a minimum of min. If the minimum is positive, it will be converted to a negative number. If it is set to 0, there is no limit.

testza.Use.Mock.Inputs.Floats64.GenerateRandomPositive

func GenerateRandomPositive(count int, max float64) (floats []float64)

GenerateRandomPositive generates random positive integers with a maximum of max. If the maximum is 0, or below, the maximum will be set to math.MaxInt64.

testza.Use.Mock.Inputs.Floats64.GenerateRandomRange

func GenerateRandomRange(count int, min, max float64) (floats []float64)

GenerateRandomRange generates random positive integers with a maximum of max. If the maximum is 0, or below, the maximum will be set to math.MaxInt64.

testza.Use.Mock.Inputs.Floats64.Modify

func Modify(inputSlice []float64, f func(index int, value float64) float64) (floats []float64)

Modify returns a modified version of a test set.

Mock.Inputs.Ints

testza.Use.Mock.Inputs.Ints.Full

func Full() (ints []int)

Full returns a combination of every integer testset and some random integers (positive and negative).

testza.Use.Mock.Inputs.Ints.GenerateRandomNegative

func GenerateRandomNegative(count, min int) (ints []int)

GenerateRandomNegative generates random negative integers with a minimum of min. If the minimum is 0, or above, the maximum will be set to math.MinInt64.

testza.Use.Mock.Inputs.Ints.GenerateRandomPositive

func GenerateRandomPositive(count, max int) (ints []int)

GenerateRandomPositive generates random positive integers with a maximum of max. If the maximum is 0, or below, the maximum will be set to math.MaxInt64.

testza.Use.Mock.Inputs.Ints.GenerateRandomRange

func GenerateRandomRange(count, min, max int) (ints []int)

GenerateRandomRange generates random integers with a range of min to max.

testza.Use.Mock.Inputs.Ints.Modify

func Modify(inputSlice []int, f func(index int, value int) int) (ints []int)

Modify returns a modified version of a test set.

Mock.Inputs.Strings

testza.Use.Mock.Inputs.Inputs.Strings.EmailAddresses

func EmailAddresses() []string

EmailAddresses returns a test set with valid email addresses.

testza.Use.Mock.Inputs.Inputs.Strings.Empty

func Empty() []string

Empty returns a test set with a single empty string.

testza.Use.Mock.Inputs.Inputs.Strings.Full

func Full() (ret []string)

Full contains all string test sets plus ten generated random strings.

testza.Use.Mock.Inputs.Inputs.Strings.GenerateRandom

func GenerateRandom(count, length int) (result []string)

GenerateRandom returns random StringsHelper in a test set.

testza.Use.Mock.Inputs.Inputs.Strings.HtmlTags

func HtmlTags() []string

HtmlTags returns a test set with html tags.

testza.Use.Mock.Inputs.Inputs.Strings.Limit

func Limit(testSet []string, max int) []string

Limit limits a test set in size.

testza.Use.Mock.Inputs.Inputs.Strings.Modify

func Modify(inputSlice []string, f func(index int, value string) string) (ret []string)

Modify returns a modified version of a test set.

testza.Use.Mock.Inputs.Inputs.Strings.Numeric

func Numeric() []string

Numeric returns a test set with strings that are numeric. The highest number in here is "9223372036854775807", which is equal to the maxmim int64.

testza.Use.Mock.Inputs.Inputs.Strings.RunTests

func RunTests(t testRunner, testSet []string, testFunc func(t *testing.T, index int, str string))

RunTests runs tests with a specific test set.


Made with ❤️ by @MarvinJWendt and contributors! | MarvinJWendt.com

Issues
  • Directories created with `testza.SnapshotCreateOrValidate` do not have execute permissions set

    Directories created with `testza.SnapshotCreateOrValidate` do not have execute permissions set

    When using the following:

    err = testza.SnapshotCreateOrValidate(t, t.Name(), string(result))
    testza.AssertNoError(t, err)
    

    The first run succeeds and creates a snapshot. The second test run fails with the error:

    "stat /[path redacted]/testdata/snapshots/TestReports/test_name.testza: permission denied"
    

    Running ls -l on the parent directory shows drw------- for the testdata directory.

    AFAICT, there are two paths for creating directories in snapshot.go: via SnapshotCreate, which ends up calling os.MkdirAll(dir, 0755).

    https://github.com/MarvinJWendt/testza/blob/77ba3a4a1fd8f7de13711106f004362c54ad0846/snapshot.go#L30-L34

    The second, via SnapshotCreateOrValidate, calls os.MkdirAll(path.Dir(snapshotPath), 0600):

    https://github.com/MarvinJWendt/testza/blob/77ba3a4a1fd8f7de13711106f004362c54ad0846/snapshot.go#L130-L135

    If I understand this correctly, the issue is that the permissions bits on the second call should match the first.

    bug 
    opened by jamestelfer 6
  • feat(assert): added AssertDirEmpty and AssertDirNotEmpty. fixes #37

    feat(assert): added AssertDirEmpty and AssertDirNotEmpty. fixes #37

    Adds AssertDirEmpty, AssertDirNotEmpty by checking for io.EOF to assert an empty directory or not. This is more efficient than retrieving a slice of the objects in the directory.

    I think everything here works, please let me know if I missed anything obvious or this is missing something.

    Thank you!

    opened by schambers 5
  • chore(deps): bump github.com/pterm/pterm from 0.12.36 to 0.12.39

    chore(deps): bump github.com/pterm/pterm from 0.12.36 to 0.12.39

    Bumps github.com/pterm/pterm from 0.12.36 to 0.12.39.

    Release notes

    Sourced from github.com/pterm/pterm's releases.

    v0.12.39

    What's Changed

    Exciting New Features 🎉

    Other Changes

    Full Changelog: https://github.com/pterm/pterm/compare/v0.12.38...v0.12.39

    v0.12.38

    What's Changed

    Exciting New Features 🎉

    Full Changelog: https://github.com/pterm/pterm/compare/v0.12.37...v0.12.38

    v0.12.37

    What's Changed

    Exciting New Features 🎉

    Full Changelog: https://github.com/pterm/pterm/compare/v0.12.36...v0.12.37

    Changelog

    Sourced from github.com/pterm/pterm's changelog.

    [v0.12.39] - 2022-03-18

    Features

    • use fallback color in BigTextPrinter when RGB is not supported

    Test

    • fix BigTextPrinter test
    • removed testdata
    • removed snapshot testing

    [v0.12.38] - 2022-03-09

    Features

    • added NewLettersFromStringWithRGB
    • added NewLettersFromStringWithRGB

    Test

    • bigtext: fix formatting error in bigtext test

    [v0.12.37] - 2022-02-17

    Features

    • progressbar: Add option to set the MaxWidth of the progressbar

    Test

    • progressbar: added 100% test coverage for new features

    Code Refactoring

    • putils: Improved styling

    Commits
    • 2bfb950 Merge pull request #331 from pterm/330-use-fallback-style-when-using-rgb-in-a...
    • a99d307 test: fix BigTextPrinter test
    • 0c60941 feat: use fallback color in BigTextPrinter when RGB is not supported
    • 6e950d6 docs: autoupdate
    • 2bd2998 Merge pull request #329 from pterm/add-discord-link-to-readme
    • 3631d06 docs(readme): added discord link to readme
    • 06b9bdb docs: autoupdate
    • 4353f36 Merge pull request #328 from pterm/remove-snapshot-testing
    • 54aaa44 test: removed testdata
    • b8c55f2 test: removed snapshot testing
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies ignore-for-release 
    opened by dependabot[bot] 4
  • Rich git-like string diff

    Rich git-like string diff

    Currently if you are comparing strings with testza, it only detects if they are different, but not what is different within them as it does with structs. When comparing multiline strings, it gets even more confusing as finding the issue on large strings requires using external tools.

    Here's an example of current behavior: image

    It would be great if it was possible to have a rich git-like diff on a string. There are even libraries that have specialized for this within Go: https://github.com/sergi/go-diff

    If this is a feature that would be accepted by the maintainers, I would be willing to implement it via PR.

    proposal proposal-accepted 
    opened by Vilsol 3
  • Assertion output is hard to read in non-terminal outputs

    Assertion output is hard to read in non-terminal outputs

    I've just recently discovered this library and am finding it great. However, one issue I've got is that the output is really hard to read in VSCode instead of in a terminal.

    In VSCode it looks like this: image

    And the exact same in the terminal looks like this: image

    Cheers

    unrelated 
    opened by sazzer 3
  • build(deps): bump github.com/klauspost/cpuid/v2 from 2.0.12 to 2.0.13

    build(deps): bump github.com/klauspost/cpuid/v2 from 2.0.12 to 2.0.13

    Bumps github.com/klauspost/cpuid/v2 from 2.0.12 to 2.0.13.

    Release notes

    Sourced from github.com/klauspost/cpuid/v2's releases.

    v2.0.13

    What's Changed

    Full Changelog: https://github.com/klauspost/cpuid/compare/v2.0.12...v2.0.13

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 2
  • build(deps): bump github.com/pterm/pterm from 0.12.40 to 0.12.41

    build(deps): bump github.com/pterm/pterm from 0.12.40 to 0.12.41

    Bumps github.com/pterm/pterm from 0.12.40 to 0.12.41.

    Release notes

    Sourced from github.com/pterm/pterm's releases.

    v0.12.41

    What's Changed

    Fixes 🔧

    Full Changelog: https://github.com/pterm/pterm/compare/v0.12.40...v0.12.41

    Changelog

    Sourced from github.com/pterm/pterm's changelog.

    [Unreleased]

    Commits
    • 11fc7cd docs: autoupdate
    • a1abf16 Merge pull request #342 from pterm/341-putils-dont-stop-already-stopped-spinners
    • 250b38a fixed #341
    • 290790d docs: autoupdate
    • 87c5ea4 Merge pull request #339 from pterm/dependabot/go_modules/github.com/MarvinJWe...
    • ab02947 chore(deps): bump github.com/MarvinJWendt/testza from 0.3.3 to 0.3.5
    • bcb19ff docs: autoupdate
    • 1b10aaa ci: updated golangci-lint
    • 153df9b docs: autoupdate
    • 946bded Merge pull request #338 from pterm/dependabot/go_modules/github.com/MarvinJWe...
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 2
  • ci: use fixed version of go for linting

    ci: use fixed version of go for linting

    The v3 action doesn't attempt to set up go, allowing the version already set to be used. This fixes an issue where the linter throws a pile of issues like:

      Error: undeclared name: `FuzzInputSdtringGenerateRandom` (typecheck)
      Error: undeclared name: `AssertEqual` (typecheck)
      Error: undeclared name: `AssertEqualValues` (typecheck)
      Error: undeclared name: `AssertKindOf` (typecheck)
      Error: undeclared name: `AssertTestFails` (typecheck)
    

    An alternative is to set golangci-lint to target 1.18, but this disables a lot of checks.

    opened by jamestelfer 2
  • fix: correct file perms on nested snapshot dir

    fix: correct file perms on nested snapshot dir

    When the test name contains a path separator, make sure the directories are created with the correct permissions.

    Fixes #107

    Depends on #109 to fix the linting check failure.

    fix 
    opened by jamestelfer 2
  • Make string snapshots be saved as-is with a spew-like header.

    Make string snapshots be saved as-is with a spew-like header.

    Currently all snapshots get passed through a spew.Sdump which then get saved to a file. This ensures that even if the object type/name changes but content doesn't, snapshot would still fail.

    An alternative option could be that upon taking a snapshot, the type is tested, and if it casts to a string, it could be stored as-is into the snapshot file, except with a header that would be similar in structure to the current spew.Sdump to ensure the type-check is still in place.

    proposal proposal-accepted 
    opened by Vilsol 2
  • chore(deps): bump github.com/pterm/pterm from 0.12.39 to 0.12.40

    chore(deps): bump github.com/pterm/pterm from 0.12.39 to 0.12.40

    Bumps github.com/pterm/pterm from 0.12.39 to 0.12.40.

    Release notes

    Sourced from github.com/pterm/pterm's releases.

    v0.12.40

    What's Changed

    Exciting New Features 🎉

    New Contributors

    Full Changelog: https://github.com/pterm/pterm/compare/v0.12.39...v0.12.40

    Changelog

    Sourced from github.com/pterm/pterm's changelog.

    [Unreleased]

    Features

    • added a custom writer for all printers

    Commits
    • 19bf5de docs: autoupdate
    • dc10c49 Merge pull request #324 from Brookke/issue-261-Add_ability_to_set_custom_io_w...
    • 48050e3 confirm correct writer is used
    • c50e99c add basic tests
    • 3024719 rename to WithWriter
    • d8c2b90 Use default outputter if none is provided
    • 8c2b1f5 remove unused type
    • 609ed85 remove from area printer due to more complex requirements. SAdd to basic text...
    • c5d92b0 feat: added a custom writer for all printers
    • 091ef5d docs: autoupdate
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies ignore-for-release 
    opened by dependabot[bot] 2
  • build(deps): bump github.com/pterm/pterm from 0.12.40 to 0.12.42

    build(deps): bump github.com/pterm/pterm from 0.12.40 to 0.12.42

    Bumps github.com/pterm/pterm from 0.12.40 to 0.12.42.

    Release notes

    Sourced from github.com/pterm/pterm's releases.

    v0.12.42 | Interactive Printers 🎉

    PTerm got its own docs site! 📖

    --> https://docs.pterm.sh <--

    We now feature interactive printers! 🥳🎉

    More here: https://docs.pterm.sh/printers/interactive

    What's Changed

    Exciting New Features 🎉

    Other Changes

    Full Changelog: https://github.com/pterm/pterm/compare/v0.12.41...v0.12.42

    v0.12.41

    What's Changed

    Fixes 🔧

    Full Changelog: https://github.com/pterm/pterm/compare/v0.12.40...v0.12.41

    Changelog

    Sourced from github.com/pterm/pterm's changelog.

    [v0.12.42] - 2022-06-21

    Features

    • input: added text input printer

    [v0.12.41] - 2022-04-12

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • build(deps): bump github.com/klauspost/cpuid/v2 from 2.0.12 to 2.0.14

    build(deps): bump github.com/klauspost/cpuid/v2 from 2.0.12 to 2.0.14

    Bumps github.com/klauspost/cpuid/v2 from 2.0.12 to 2.0.14.

    Release notes

    Sourced from github.com/klauspost/cpuid/v2's releases.

    v2.0.14

    What's Changed

    Full Changelog: https://github.com/klauspost/cpuid/compare/v2.0.13...v2.0.14

    v2.0.13

    What's Changed

    Full Changelog: https://github.com/klauspost/cpuid/compare/v2.0.12...v2.0.13

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Startup message cannot be disabled

    Startup message cannot be disabled

    Due to the ordering of how init() is loaded from imports first, there is no way to actually set the startup message to be disabled within tests.

    Looking at the unit tests, it is clear that only the variable is being checked, not that the output is being verified as not displayed which explains why it passes testing but does not actually do anything at all.

    bug 
    opened by mikelorant 0
Releases(v0.4.2)
  • v0.4.2(Apr 25, 2022)

    What's Changed

    Exciting New Features 🎉

    • added FuzzUtilMergeSets by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/162

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.4.1...v0.4.2

    Source code(tar.gz)
    Source code(zip)
  • v0.4.1(Apr 10, 2022)

    What's Changed

    Exciting New Features 🎉

    • Added AssertUnique and AssertNotUnique by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/158
    • Added FuzzUtilDistinctSet by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/159

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.4.0...v0.4.1

    Source code(tar.gz)
    Source code(zip)
  • v0.4.0(Apr 10, 2022)

    What's Changed

    Breaking Changes 🛠

    • ❗ Renamed AssertDirExist to AssertDirExists by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/148
    • ❗ Replaced all occurrences of interface{} with any by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/149
    • ❗ Renamed FuzzInputXxx to FuzzXxx by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/149
    • ❗ Added generic FuzzUtilRunTests function. Replaces:
      • FuzzUtilRunTests
      • FuzzFloat64RunTests
      • FuzzIntRunTests
      • FuzzStringRunTests
    • ❗ Added generic FuzzUtilModifySet function. Replaces:
      • FuzzBoolModify
      • FuzzFloat64Modify
      • FuzzIntModify
      • FuzzStringModify
    • ❗ Added generic FuzzUtilLimitSet function. Replaces:
      • FuzzStringLimit

    Exciting New Features 🎉

    • Added AssertLessOrEqual and AssertGreaterOrEqual by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/153
    • Refactored to support generics! by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/149

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.3.5...v0.4.0

    Source code(tar.gz)
    Source code(zip)
  • v0.3.5(Apr 7, 2022)

    What's Changed

    Exciting New Features 🎉

    • Improved output of AssertZero and AssertNotZero by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/138
    • Improved output of AssertRegexp and AssertNotRegexp by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/140
    • Improved output of AssertLess by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/142
    • Improved output of AssertLen by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/144
    • Improved output of AssertNotKindOf by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/143
    • Improved output of AssertNotContains by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/145

    Fixes 🔧

    • Display the correct file when an assertion helper is used internally by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/141

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.3.4...v0.3.5

    Source code(tar.gz)
    Source code(zip)
  • v0.3.4(Apr 7, 2022)

    What's Changed

    Exciting New Features 🎉

    • Better output for AssertNotEqual by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/112
    • Added configuration support via --testza.xyz flags by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/134

    Other Changes

    • Added test file with failing assertions to see testzas output by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/132
    • Fixed line numbers starting with 0 instead of 1 by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/133

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.3.3...v0.3.4

    Source code(tar.gz)
    Source code(zip)
  • v0.3.3(Apr 5, 2022)

    What's Changed

    Fixes 🔧

    • fix: correct file perms on nested snapshot dir by @jamestelfer in https://github.com/MarvinJWendt/testza/pull/108

    Other Changes

    • docs: add features section to README by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/103
    • removed diff from AssertNotEqual by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/105
    • Moved docs from doc.go to testza.go by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/106
    • ci: use fixed version of go for linting by @jamestelfer in https://github.com/MarvinJWendt/testza/pull/109

    New Contributors

    • @jamestelfer made their first contribution in https://github.com/MarvinJWendt/testza/pull/109

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.3.2...v0.3.3

    Source code(tar.gz)
    Source code(zip)
  • v0.3.2(Mar 31, 2022)

    What's Changed

    Exciting New Features 🎉

    • feat: rich difference detection by @Vilsol in https://github.com/MarvinJWendt/testza/pull/97

    Other Changes

    • docs: added new screenshot to README by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/101

    New Contributors

    • @Vilsol made their first contribution in https://github.com/MarvinJWendt/testza/pull/97

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.3.1...v0.3.2

    Source code(tar.gz)
    Source code(zip)
  • v0.3.1(Mar 21, 2022)

    What's Changed

    Exciting New Features 🎉

    • feat: added better styling for AssertNoError by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/91

    Fixes 🔧

    • fix: fixed AssertDirEmpty failing when dir does not exist by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/93

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.3.0...v0.3.1

    Source code(tar.gz)
    Source code(zip)
  • v0.3.0(Mar 20, 2022)

    What's Changed

    Breaking Changes 🛠

    • refactor: renamed Mock to Fuzz by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/87

    Exciting New Features 🎉

    • feat: print custom messages by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/88

    Other Changes

    • docs(readme): added discord link to readme by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/86
    • test: added output consistency tests by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/89

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.2.15...v0.3.0

    Source code(tar.gz)
    Source code(zip)
  • v0.2.15(Feb 14, 2022)

    What's Changed

    Exciting New Features 🎉

    • Added more tests for capturing output by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/80
    • Added option to disable the startup message by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/81

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.2.14...v0.2.15

    Source code(tar.gz)
    Source code(zip)
  • v0.2.14(Jan 16, 2022)

    What's Changed

    Other Changes

    • Added AssertSubset and AssertNoSubset by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/73

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.2.13...v0.2.14

    Source code(tar.gz)
    Source code(zip)
  • v0.2.13(Jan 16, 2022)

    What's Changed

    Exciting New Features 🎉

    • Added AssertSameElements by @KarolosLykos in https://github.com/MarvinJWendt/testza/pull/70

    Other Changes

    • Fixed missing custom messages in some functions by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/69
    • Added AssertSameElements by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/71

    New Contributors

    • @KarolosLykos made their first contribution in https://github.com/MarvinJWendt/testza/pull/70

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.2.12...v0.2.13

    Source code(tar.gz)
    Source code(zip)
  • v0.2.12(Nov 9, 2021)

    What's Changed

    Fixes 🔧

    • fix(snapshot): fixed snapshots always created in testza directory by @TobiaszCudnik in https://github.com/MarvinJWendt/testza/pull/65

    New Contributors

    • @TobiaszCudnik made their first contribution in https://github.com/MarvinJWendt/testza/pull/65

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.2.11...v0.2.12

    Source code(tar.gz)
    Source code(zip)
  • v0.2.11(Nov 2, 2021)

    What's Changed

    Exciting New Features 🎉

    • feat(assert): added AssertNoDirExists and AssertDirExists. fixes #36 by @janisz in https://github.com/MarvinJWendt/testza/pull/57
    • feat(configuration): added SetRandomSeed by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/61
    • feat: added startup information output by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/62

    Other Changes

    • ci: added automatic release labels by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/55
    • Update docs of MockInputString by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/59

    New Contributors

    • @janisz made their first contribution in https://github.com/MarvinJWendt/testza/pull/57

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.2.10...v0.2.11

    Source code(tar.gz)
    Source code(zip)
  • v0.2.10(Oct 20, 2021)

    What's Changed

    • chore(deps): bump github.com/pterm/pterm from 0.12.30 to 0.12.31 by @dependabot in https://github.com/MarvinJWendt/testza/pull/50
    • docs: added contributing guidelines by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/51
    • feat(assert): added AssertFileExists and AssertNoFileExists by @MarvinJWendt in https://github.com/MarvinJWendt/testza/pull/53
    • feat(assert): added AssertDirEmpty and AssertDirNotEmpty. fixes #37 by @schambers in https://github.com/MarvinJWendt/testza/pull/52

    New Contributors

    • @schambers made their first contribution in https://github.com/MarvinJWendt/testza/pull/52

    Full Changelog: https://github.com/MarvinJWendt/testza/compare/v0.2.9...v0.2.10

    Source code(tar.gz)
    Source code(zip)
  • v0.2.9(Sep 21, 2021)

  • v0.2.8(Sep 19, 2021)

    Features

    • assert: added AssertRegexp and AssertNotRegexp
    • assert: added AssertIncreasing and AssertDecreasing
    • assert: added AssertLen
    • assert: added error message to AssertNoError
    Source code(tar.gz)
    Source code(zip)
  • v0.2.7(Aug 27, 2021)

  • v0.2.6(Aug 25, 2021)

    Features

    • capture: add CaptureStdoutAndStderr

    Documentation

    • added examples to most functions
    • improved docs

    Code Refactoring

    • rename variable in MockInputXXXModify functions
    Source code(tar.gz)
    Source code(zip)
  • v0.2.5(Aug 23, 2021)

  • v0.2.4(Aug 19, 2021)

    Features

    • add configurable options
      • add setting to turn off colored output
      • add setting to turn off line numbers in output

    Test

    • configuration: add tests to configuration values
    Source code(tar.gz)
    Source code(zip)
  • v0.2.3(Aug 19, 2021)

  • v0.2.2(Aug 16, 2021)

  • v0.2.1(Aug 12, 2021)

    Features

    • snapshot: add snapshot functionality

    Test

    • delete invalid named snapshot
    • snapshot: make tests pass on linux
    • snapshot: add more error tests to Snapshot
    • snapshot: add Snapshot tests

    Code Refactoring

    • fix linting and make 1.15.X tests pass
    • snapshot: make linebreaks consistent
    Source code(tar.gz)
    Source code(zip)
  • v0.2.0(Jul 21, 2021)

    Features

    • assert: add AssertTestFails

    Test

    • rename test functions to new structure
    • assert: test that assertions fail when they should
    • assert: cleanup tests for AssertTestFails
    • assert: add more tests to AssertEqual
    • assert: add tests for AssertTestFails
    • mock: add test for MockInputIntModify
    • mock: add test for MockInputFloat64Modify
    • mock: add test for MockInputFloat64GenerateRandomPositive and MockInputFloat64GenerateRandomNegative
    • mock: add test for MockInputBoolModify

    Code Refactoring

    • move tests into own package
    • assert: change AssertPanic to AssertPanics

    BREAKING CHANGE

    change AssertPanic to AssertPanics

    Source code(tar.gz)
    Source code(zip)
  • v0.1.0(Jul 19, 2021)

  • v0.0.3(Jul 17, 2021)

  • v0.0.2(Jul 14, 2021)

  • v0.0.1(Jul 13, 2021)

    Features

    • only show difference if the objects are named Expected and Actual
    • add Getter and assertion methods
    • add integer mocking
    • add difference to failure messages that have two objects
    • add line numbers to failure messages
    • add Use.Assert.KindOf and Use.Assert.NotKindOf
    • add float64 mocking
    • add Use.Assert.Number and Use.Assert.NotNumber
    • add more styling to test errors
    • upload code
    • assert: add CompletesIn and NotCompletesIn
    • assert: add Nil and NotNil assertions
    • assert: add Panic and NotPanic
    • assert: add NoError
    • assert: add Greater and Less
    • assert: add Contains
    • capture: add Stderr
    • capture: add Stdout
    • mock: add boolean mockings
    • mock-ints: add GenerateRandomRange
    • mock-strings: add numeric strings set
    • mock-strings: add email addresses and empty string sets

    Bug Fixes

    • check both errors
    • check both errors
    • fix failure objects with no DataStyle
    • remove blank line at the end of failure messages
    • fix Assert naming

    Test

    • do nothing in NotPanic test
    • assert: try to fix macOS weirdness
    • assert: more buffer for NotCompletesIn test
    • assert: add True and False tests
    • mock-string: add tests to GenerateRandom

    Code Refactoring

    • tidy project
    • rename testingT to testRunner
    • move input mocking methods to Use.Mock.Inputs
    • add easier methods for unknown objects
    • move from atomicgo to MarvinJWendt
    • export Helper structs
    • add Use variable and custom_readme setting
    • remove unused import alias
    • add errors.go
    • replace all testutil with testza
    • change import path to testza
    • change package name to testza
    • rename Input to Mock
    • set up template
    • assert: rename Number to Numeric
    • internal: rewrite Fail for a nicer output
    Source code(tar.gz)
    Source code(zip)
Owner
Marvin Wendt
--- Fullstack Developer --- Skills: Go, TypeScript, JavaScript, Java Languages: German, English
Marvin Wendt
A modern generic testing assertions library for Go

test test is a generics based testing assertions library for Go. There are two packages, test and must. test - assertions that mark the test for failu

Seth Hoenig 12 Jun 23, 2022
HTTP traffic mocking and testing made easy in Go ༼ʘ̚ل͜ʘ̚༽

gock Versatile HTTP mocking made easy in Go that works with any net/http based stdlib implementation. Heavily inspired by nock. There is also its Pyth

Tom 1.6k Jun 24, 2022
HTTP mocking to test API services for chaos scenarios

GAOS HTTP mocking to test API services for chaos scenarios Gaos, can create and provide custom mock restful services via using your fully-customizable

Trendyol Open Source 209 May 24, 2022
A toolkit with common assertions and mocks that plays nicely with the standard library

Testify - Thou Shalt Write Tests ℹ️ We are working on testify v2 and would love to hear what you'd like to see in it, have your say here: https://cutt

Stretchr, Inc. 16.7k Jun 20, 2022
Go module to validate Apple app attestations and assertions.

AppAttest Since iOS 14, Apple offers a new way to attest the integrity of a device. This is based on the WebAuthn specification. This go module implem

Bas Doorn 7 Apr 12, 2022
Assert to perform programming assertions

Cli EN README Assert para realizar las aserciones de programación. GoDoc godoc for github Menú Principal Se configura un menú con ese ejemplo como dis

null 0 Jan 13, 2022
GoMock is a mocking framework for the Go programming language.

gomock GoMock is a mocking framework for the Go programming language. It integrates well with Go's built-in testing package, but can be used in other

Go 7.5k Jun 19, 2022
A clipboard-based mocking framework for Go that gets out of your way.

A clipboard-based mocking framework for Go that gets out of your way. This tool has been built with inspiration lovingly taken from Moq, and fuelled b

Roger Guldbrandsen 40 Jun 13, 2022
A simple and expressive HTTP server mocking library for end-to-end tests in Go.

mockhttp A simple and expressive HTTP server mocking library for end-to-end tests in Go. Installation go get -d github.com/americanas-go/mockhttp Exa

Americanas Go 6 Dec 19, 2021
Testy is a Go test running framework designed for Gametime's API testing needs.

template_library import "github.com/gametimesf/template_library" Overview Index Overview Package template_library is a template repository for buildin

Gametime United, Inc. 3 May 2, 2022
Go Interface Mocking Tool

Charlatan Percolate's Go Interface Mocking Tool. Please read our introductory blog post. Installation go get github.com/percolate/charlatan Usage c

Percolate 195 May 23, 2022
HTTP mocking for Golang

httpmock Easy mocking of http responses from external resources. Install Currently supports Go 1.7 - 1.15. v1 branch has to be used instead of master.

Jared Morse 1.4k Jun 23, 2022
Lightweight HTTP mocking in Go (aka golang)

httpmock This library builds on Go's built-in httptest library, adding a more mockable interface that can be used easily with other mocking tools like

null 77 Jun 27, 2022
Interface mocking tool for go generate

Interface mocking tool for go generate. What is Moq? Moq is a tool that generates a struct from any interface. The struct can be used in test code as

Mat Ryer 1.3k Jun 20, 2022
Flugel Test Documentation for steps to run and test the automatio

Flugel Test Documentation Documentation for steps to run and test the automation #Test-01 1 - Local Test Using Terratest (End To End) 1- By runing " t

Suc0_Unix 0 Dec 30, 2021
This repository includes consumer driven contract test for provider, unit test and counter api.

This repository includes consumer driven contract test for provider, unit test and counter api.

Ahmet Zümberoğlu 0 Feb 1, 2022
siusiu (suite-suite harmonics) a suite used to manage the suite, designed to free penetration testing engineers from learning and using various security tools, reducing the time and effort spent by penetration testing engineers on installing tools, remembering how to use tools.

siusiu (suite-suite harmonics) a suite used to manage the suite, designed to free penetration testing engineers from learning and using various security tools, reducing the time and effort spent by penetration testing engineers on installing tools, remembering how to use tools.

Re 242 Jun 20, 2022
This testing tool surrounds go-ethereum with cannon to catch the blocks of retesteth going into go-ethereum and test cannon with them

Siege This testing tool surrounds go-ethereum with cannon to catch the blocks of retesteth going into go-ethereum and test cannon with them. Usage Sta

Diederik Loerakker 8 Mar 15, 2022
go-test-trace is like go test but it also generates distributed traces.

go-test-trace go-test-trace is like go test but it also generates distributed traces. Generated traces are exported in OTLP to a OpenTelemetry collect

JBD 373 Jun 24, 2022