goss-org / goss

Quick and Easy server testing/validation
https://goss.rocks
Apache License 2.0
5.55k stars 473 forks source link

Ability to isolate tests #742

Closed uk-bolly closed 1 year ago

uk-bolly commented 2 years ago

Describe the feature: Running industry benchmarks testing these can mean ensuring that different lines may occur within the same file each with a unique test. These will have differing titles, meta data dependent on the test that takes place.

I am sure this type of testing that may occur is not unique to this but the is an example i am working with.

In the example below It appears the filename used by the file test is the unique identifier and therefore only take the output of the final test that runs. These benchmarks for each line could be in the same file or different files. Only the last benchmark that runs using the goss test reports the output.

e.g. file: /etc/somefilename: {{ if .Vars.test1 }} title: test1 exists: true contains:

If both are enabled the output would only show test2 information.

I have tested with different files, filenames etc.

Is there a better way that i can achieve this?

Describe the solution you'd like

Ability to run the different requirements on using a like goss test and control that is able to report back all the output and the associated data

Describe alternatives you've considered Rewrite each control with the command test and rename that command title to make them unique. But using the actual goss test is more efficient and less calls than running the command test.

uk-bolly commented 2 years ago

similar to #743

ekelali commented 2 years ago

Hello @uk-bolly,

Would allowing the path to be set as an attribute similar to exec on command resolve this?

For example: https://github.com/aelsabbahy/goss/issues/431

uk-bolly commented 2 years ago

Hi @ekelali

Thank you for the response. This appears as i understand it (example below) to cover off that requirement well.

e.g.

file: controlid123: path: /etc/hosts

controlid123: path: /etc/hosts

Thanks uk-bolly

ekelali commented 2 years ago

Also, this issue may be related, maybe this should be done for all resource types?

https://github.com/aelsabbahy/goss/issues/518

uk-bolly commented 2 years ago

hi @ekelali

Apologies for the delay, That would make sense to have the ability across all of the tests would be a good improvement and add consistency across those tests.

thanks