Commit graph

1348 commits

Author SHA1 Message Date
Mark Harrison
f5780b69a4 Correctly detect UDP ports on linux
netstat on UDP lines doesn't display a port state (e.g. LISTEN), so make this
field optional when parsing the netstat line.
2016-01-14 22:53:38 -05:00
Stephan Renatus
5c17f8b643 regexp github url targets, add tests for Inspec::Targests::UrlHelper
replacing occuring http:// with https:// is probably ok, github
redirects to https anyways
2016-01-14 12:05:58 -05:00
Jacob McCann
f25ab3a373 Fix systemd service enabled check 2016-01-11 15:32:33 -06:00
Christoph Hartmann
a1ddbe4cf2 explicitly ignore supports for inspec check 2016-01-10 23:59:57 -05:00
Stephan Renatus
a26dbe146d fix reading profiles bug
For reading the profiles metadata, we're using the train mock backend
through Inspec::Runner. The new `supports` feature never agrees with the
mock backend.

Now, it we figure out if this is a mock class and then just say that it
supports whatever we're asking for.

Tl;dr: there's probably a more beautiful solution to this.

Added a test case, but it fails -- while the command line interface
works fine.
2016-01-07 15:16:49 -08:00
Dominik Richter
5c5ed106dd dummy holder for ex2 creds in kitchen 2016-01-04 03:45:58 +01:00
Christoph Hartmann
b1d6906d16 update readme for aws integration tests 2016-01-04 03:45:58 +01:00
Christoph Hartmann
b24ed632a1 add yml, csv, json and ini to windows integration tests 2016-01-04 03:43:21 +01:00
Christoph Hartmann
a72ba94f10 handle mount results with multiple entries 2016-01-03 00:03:24 +01:00
Christoph Hartmann
e1402a16d9 split integration tests for mount 2016-01-03 00:03:24 +01:00
Christoph Hartmann
50d2ef4db5 add integration tests for mountpoints 2016-01-03 00:03:24 +01:00
Christoph Hartmann
a5acb03e49 add mount resource 2016-01-03 00:03:24 +01:00
Christoph Hartmann
c7b7eccb5d update unit test for new parser 2016-01-03 00:03:24 +01:00
Christoph Hartmann
167aa6bdfb add test for unsupported os 2016-01-02 21:27:40 +01:00
Dominik Richter
d6f48d3534 catch empty support clause 2015-12-31 17:57:59 +01:00
Dominik Richter
af8e4e93ca add supports keyword to profiles 2015-12-31 17:54:13 +01:00
Dominik Richter
526932584d fix metadata validation 2015-12-28 13:35:38 +01:00
Dominik Richter
7473dea1f2 ignore auto-generated controls during verify check 2015-12-23 11:11:49 +01:00
Dominik Richter
b2e0fac625 change check errors on summary+title to warnings 2015-12-23 09:18:59 +01:00
Christoph Hartmann
ca33ac9288 Merge pull request #321 from jeremymv2/security_policy_fixes
Fixing issue with security policy always returning nil
2015-12-17 17:55:01 +01:00
Jeremy J. Miller
7c279c7d04 helper.rb now reflects the new commands in the security_policy resource 2015-12-17 10:08:28 -05:00
Jeremy J. Miller
9210c97840 Cleaned up extra spaces in file 2015-12-16 21:46:27 -05:00
Jeremy J. Miller
0163d24b72 Adding security_policy integration test 2015-12-16 21:44:18 -05:00
Stephan Renatus
3a1dcb7669 teach cmp matcher octal tricks 2015-12-16 11:32:31 +01:00
troyready
29f954f7f3 add release to el pkg version & catch missing linebreaks
Package release info (e.g. '19.el7') is often required to determine if
a system has been properly patched.

Lines like the following from rpm are messing up the version returned
by the package resource:
"...\nVersion     : 1.8.6p3                           Vendor: Red Hat, Inc.\n..."
Correcting this with a new conditional check.
2015-12-11 13:05:22 -08:00
Christoph Hartmann
c461ffe7e7 add integration test for compare matcher 2015-12-11 17:03:12 +01:00
Stephan Renatus
652d51e9dc [resource/port] add port(addr, port) variant 2015-12-08 20:33:36 +01:00
Stephan Renatus
8532dd7034 [resource/port] change attribute names to plural, indicating arrays
see discussion in #256
2015-12-08 20:33:36 +01:00
Adam Leff
c146a76679 File permission checks should return false unless file exists
Currently, #readable?, #writeable?, and #executable? will incorrectly
return true if the file does not exist.

In addition, I took the opportunity to refactor the File resource to
make it easier to write unit tests and supplied a full unit test
suite for this resource.
2015-12-08 19:57:34 +01:00
Stephan Renatus
7a1cd660c3 [resources/processes] add users, states attribute; update docs
processes('bash').user does not actually make much sense for a resource
that is a list -- different entries can belong to different users.
Analogous for processes('bash').state.

The attributes 'users' and 'states' expose the unique values
corresponding to that property of entries in the process list.

Fixes #295.
2015-12-08 13:06:27 +01:00
Christoph Hartmann
dcb09802d3 support string and symbol for os resource 2015-12-07 11:11:55 +01:00
Stephan Renatus
79f48afa6c [resources/apache_conf]: add tests, fix bug
before, the resource would throw an exception when include_files
returned nil (i.e., [].flatten!)

added basic unit tests capturing the include_files behaviour
2015-12-07 10:50:48 +01:00
Christoph Hartmann
7c393a1891 Merge pull request #291 from chef/sr/fix-find_files
revert to old find_files interface
2015-12-04 14:41:36 +01:00
Stephan Renatus
324ba14a6b fix optional type argument handling 2015-12-04 14:27:32 +01:00
Stephan Renatus
390e0fcca7 restore old find_files interface
- fixes #276
- basic test for find_files
2015-12-04 14:15:45 +01:00
Adam Leff
e0c356dae7 Adding support for Wind River Linux
WRL is used as the OS on Cisco Nexus devices and acts like a Red
Hat variant. These changes add support for WRL.
2015-12-03 17:41:11 -05:00
Artem Sidorenko
46f60f05af Support mint in the integration tests 2015-12-02 06:33:07 +01:00
Christoph Hartmann
2c8a8ccb25 improvement: add etc_group support for centos and add integration test 2015-12-01 10:40:12 +01:00
Christoph Hartmann
9231833cad add unit tests for user resource that cover ldap groups 2015-11-24 18:35:10 +01:00
Christoph Hartmann
a8e50cd2cf implement integration tests for ini, csv, json and yaml resources 2015-11-24 16:46:17 +01:00
Christoph Hartmann
0531976a40 implement unit tests for ini resource 2015-11-24 16:46:17 +01:00
Christoph Hartmann
921c2b886c add more case-insensitive tests 2015-11-23 16:25:33 +01:00
Alex Pop
25acd86c88 add NTLMMinServerSec test 2015-11-23 14:43:47 +00:00
Seth Chisamore
beade346bf Add Windows support to the os_env resource
This change allows checks like:

```
describe os_env('PATH') do
  its('split') { should include('C:\wix') }
end
```
2015-11-19 15:41:00 +01:00
Dominik Richter
d9ded1d38d test for multiple computed calls to flat describe 2015-11-19 14:28:37 +01:00
Dominik Richter
3afd0d556d fix typos
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-11-19 14:17:18 +01:00
Christoph Hartmann
2a82905096 simplify cookbook 2015-11-17 22:28:11 +01:00
Christoph Hartmann
83a1e7180e add integration test for registry key 2015-11-17 22:28:11 +01:00
Christoph Hartmann
27de925c2b update mock command for registry key 2015-11-17 22:28:11 +01:00
Christoph Hartmann
38e982709e update unit test 2015-11-17 22:28:11 +01:00
Christoph Hartmann
07f142593e move registry key test into new directory 2015-11-17 22:28:11 +01:00
Alex Pop
c95cbe340a add registry_key recipe and spec tests 2015-11-17 22:28:11 +01:00
Christoph Hartmann
8a85e68695 bugfix: run integration tests on windows 2015-11-17 22:14:05 +01:00
Christoph Hartmann
7fe79fdf57 add integration test for port scan 2015-11-16 20:34:21 +01:00
Dominik Richter
17ce88b63d api: don't force root on os_env 2015-11-13 12:10:22 +01:00
Christoph Hartmann
b33717fa55 add test case for upstart with systemv service 2015-11-13 09:54:30 +01:00
Christoph Hartmann
e703ef3bf8 move test files to work with default test-kitchen 2015-11-13 09:54:30 +01:00
Dominik Richter
8d682973b0 extend csv tests, remove dot-resolver 2015-10-27 15:58:02 +01:00
Dominik Richter
e0874b47b1 extend yaml tests, remove dot-resolver 2015-10-27 15:58:02 +01:00
Dominik Richter
a55e240a0f extend json tests, remove dot-resolver 2015-10-27 15:58:02 +01:00
Dominik Richter
32e5e3ec29 move to symbols-based fields in profile params 2015-10-27 02:29:11 +01:00
Dominik Richter
7779cdb469 add simple tests for profile 2015-10-27 02:29:11 +01:00
Christoph Hartmann
8738687a89 update to new kitchen-inspect 2015-10-26 19:33:53 +01:00
Dominik Richter
414bf6b1fa bugfix: handle empty processes result 2015-10-26 16:49:26 +01:00
Dominik Richter
6dc0a3b638 rename inetd_config -> inetd_conf
be consistent with the filename
2015-10-26 16:21:51 +01:00
Dominik Richter
95242bf9c2 add content parser tests 2015-10-26 15:50:57 +01:00
Dominik Richter
b58a4b3f43 rename vulcanosec -> inspec 2015-10-26 12:34:15 +01:00
Christoph Hartmann
126ce88bce fix unit tests 2015-10-26 12:16:38 +01:00
Christoph Hartmann
2fe8ba56a3 add folder test and test more file matcher 2015-10-25 21:36:49 +01:00
Christoph Hartmann
3c76ed6e37 integration test for file 2015-10-24 11:15:53 +02:00
Christoph Hartmann
2ba34c302c integration test: create sample file 2015-10-24 11:15:53 +02:00
Christoph Hartmann
a199796b5e add integration test for group 2015-10-24 11:15:52 +02:00
Christoph Hartmann
3a5d091efb add apt repository integration test 2015-10-24 11:15:52 +02:00
Christoph Hartmann
7080aaf346 install nginx repo on debian and ubuntu for integration test 2015-10-24 11:15:52 +02:00
Christoph Hartmann
857e5ed28e add kernel_module integration tests 2015-10-23 13:58:20 +02:00
Christoph Hartmann
1d61c0e042 add integration test for kernel_parameter 2015-10-23 13:44:20 +02:00
Christoph Hartmann
191ef73c65 add integration test for user resource 2015-10-23 12:14:00 +02:00
Christoph Hartmann
ea0814939a add prepare cookbook for package integration test 2015-10-23 12:14:00 +02:00
Christoph Hartmann
f15d05fd22 add package tests 2015-10-23 12:14:00 +02:00
Christoph Hartmann
65761233ba update comments 2015-10-23 12:14:00 +02:00
Christoph Hartmann
b7f179ae55 add tests for service 2015-10-23 12:14:00 +02:00
Christoph Hartmann
7d909f01dd run test with sudo 2015-10-23 12:14:00 +02:00
Christoph Hartmann
f38b278b50 setup test-kitchen workflow 2015-10-23 12:14:00 +02:00
Dominik Richter
ecc04aab7b test: add dsl tests 2015-10-19 10:30:04 +02:00
Dominik Richter
f6aa71d0ed provide better errors on docker_run tests 2015-10-19 10:21:05 +02:00
Dominik Richter
20dae26925 split methods for processing rules and checks after loading 2015-10-19 09:49:40 +02:00
Dominik Richter
d66f874e1c feature: support expect keyword in rules 2015-10-18 19:14:22 +02:00
Dominik Richter
f2e955eb37 test: add tests for rule.describe 2015-10-18 19:11:56 +02:00
Dominik Richter
b38adfc6b2 test: add profile context tests 2015-10-18 19:11:56 +02:00
Dominik Richter
ec0931ef9c test: group resource tests 2015-10-17 22:53:21 +02:00
Dominik Richter
56b88cba1d create factory for backend creation 2015-10-15 22:42:06 +02:00
Dominik Richter
dcb0b8e557 remove runner tests while migrating to train 2015-10-15 00:47:07 +02:00
Dominik Richter
132019a6d9 move backend creation to profile context
keeping it in the runner will create conflicts with rspec runners
2015-10-14 23:44:15 +02:00
Dominik Richter
be614e9056 migrate backend to Train project 2015-10-14 23:13:49 +02:00
Christoph Hartmann
7635a20756 flatten describe tests 2015-10-12 13:35:16 +02:00
Christoph Hartmann
7096b3cd9a remove let in tests 2015-10-12 13:35:15 +02:00
Christoph Hartmann
dd2fb7938f ease windows feature test 2015-10-12 13:35:15 +02:00
Christoph Hartmann
d666ce84a2 fix describe in unit tests 2015-10-12 13:35:15 +02:00
Christoph Hartmann
128eb4a7f6 add tests for iptables 2015-10-12 10:34:24 +02:00
Christoph Hartmann
9774ec7984 add test coverage for apt 2015-10-10 23:28:03 +02:00
Christoph Hartmann
1dec6a60b8 remove ruby warnings in helper 2015-10-09 19:55:16 +02:00
Christoph Hartmann
c14e364b93 add mock commands for linux 2015-10-09 19:55:06 +02:00
Christoph Hartmann
2176039120 add linux tests for host 2015-10-09 19:27:29 +02:00
Christoph Hartmann
5a70133330 add mock files for host windows tests 2015-10-09 19:27:07 +02:00
Christoph Hartmann
80b38412e6 add tests for windows 2015-10-09 19:21:55 +02:00
Christoph Hartmann
3126a46b1e add bridge unit tests for windows 2015-10-09 15:26:59 +02:00
Christoph Hartmann
74729f5779 add more unit test cases 2015-10-09 15:10:43 +02:00
Christoph Hartmann
b2ed180885 add bridge test for linux 2015-10-09 15:07:58 +02:00
Christoph Hartmann
9d92abf524 add windows support to network adapter 2015-10-08 13:01:50 +02:00
Christoph Hartmann
153c670952 introduce better network interface abstraction, add test cases 2015-10-08 13:01:50 +02:00
Christoph Hartmann
46853e74b6 fix lint issues 2015-10-08 13:01:50 +02:00
Dominik Richter
4176d1b227 improvement: add default print method to resources 2015-10-08 11:06:20 +02:00
Christoph Hartmann
d2997400df add author information 2015-10-07 18:45:08 +02:00
Christoph Hartmann
9c893c5653 add mock result for GetWin32 Group 2015-10-07 18:45:08 +02:00
Christoph Hartmann
737df5348a add test coverage for group resource 2015-10-07 18:45:08 +02:00
Christoph Hartmann
537728b41b test case where group or os is not available 2015-10-07 18:45:08 +02:00
Christoph Hartmann
c17be0438a add unit tests for group resource 2015-10-07 18:45:07 +02:00
Christoph Hartmann
e57505739e improvement: return gids in etc_group as integer 2015-10-07 18:45:07 +02:00
Christoph Hartmann
028e7f977e filter comments in /etc/group 2015-10-07 18:45:07 +02:00
Christoph Hartmann
df9411e529 rename test from etcgroup 2015-10-07 18:45:07 +02:00
Christoph Hartmann
9295a60913 add test case for script resource 2015-10-07 13:13:37 +02:00
Christoph Hartmann
8fff2ee989 add author header 2015-10-06 18:55:44 +02:00
Dominik Richter
a72dc86442 bugfix: configure test runners correctly to updated backend
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-10-06 15:35:37 +02:00
Dominik Richter
5662bb7383 migrate transport runner tests 2015-10-06 00:06:13 +02:00
Dominik Richter
6d54b6e2c5 simplify mock resource creation
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-10-05 23:22:13 +02:00
Christoph Hartmann
f38ce7d5f4 bugfix: fix error, where the winrm default path is not set properly by default 2015-10-05 15:35:02 +02:00
Christoph Hartmann
6b2064ad89 return password expiry information for linux 2015-10-05 11:50:49 +02:00
Christoph Hartmann
cab93a178a add tests for user resource 2015-10-05 11:50:49 +02:00
Dominik Richter
369e61d0cd feature: add path to target specification
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-10-03 23:39:09 +02:00
Christoph Hartmann
e139070923 increase test coverage for oneget 2015-10-03 13:27:20 +02:00
Dominik Richter
8b97bdbaa7 expose simpleconfig groups
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-30 12:18:09 +02:00
Dominik Richter
4d70aed6ee add tests for simple config
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-30 12:14:38 +02:00
Dominik Richter
4e15e425a4 move darwin to bsd type
see: https://en.wikipedia.org/wiki/Darwin_%28operating_system%29#/media/File:Unix_timeline.en.svg
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-28 12:14:40 +02:00
Dominik Richter
4f0c0d7f21 add unit tests to os common detection
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-28 11:52:50 +02:00
Dominik Richter
c77a0a1c81 api: make mock backend quiet by default
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-28 11:27:19 +02:00
Christoph Hartmann
62ebb6fe17 lint tests 2015-09-25 19:34:25 +02:00
Christoph Hartmann
ec7a743f21 Merge pull request #51 from chef/ssh-transport
Verify ssh transport backend
2015-09-25 15:06:00 +02:00
Dominik Richter
31a960e2b6 add ssh backend to runner kitchen tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-25 14:09:41 +02:00
Christoph Hartmann
a53b2d66c5 add comments 2015-09-25 12:58:34 +02:00
Christoph Hartmann
46fcb334da bugfix: use debian 8 for systemd unit test 2015-09-25 12:58:26 +02:00
Christoph Hartmann
007d292890 rewrite systemv service implementation, read enabled services from rc 2015-09-25 12:58:03 +02:00
Christoph Hartmann
2901dde219 add systemv service unit tests 2015-09-25 12:54:19 +02:00
Christoph Hartmann
11ffdeddad improvement: return nil, if no description for service is available 2015-09-25 12:54:08 +02:00
Christoph Hartmann
86cd56c5c3 add unit test for service resource on ubuntu 15.04 2015-09-25 12:53:55 +02:00
Christoph Hartmann
5be574693f add unit tests for freebsd service resource 2015-09-25 12:53:40 +02:00
Christoph Hartmann
d5d517af0a improve service handling for mac and add unit tests 2015-09-25 12:51:12 +02:00
Christoph Hartmann
36ad0dd5a0 add arch linux support for service resource 2015-09-25 12:48:57 +02:00
Christoph Hartmann
45081735ad add debian 8 mock test for service resource 2015-09-25 12:48:48 +02:00
Christoph Hartmann
cb3d170ce6 add centos 7 unit mock for service resource 2015-09-25 12:48:21 +02:00
Christoph Hartmann
1936383120 add service unit tests for ubuntu 14.04 2015-09-25 11:52:33 +02:00
Christoph Hartmann
24885e2d4d add ubuntu 15.05 to mock os 2015-09-25 11:52:33 +02:00
Christoph Hartmann
3e16791f52 bugfix: catch case in service resource, where the OS is not supported 2015-09-25 11:52:33 +02:00
Christoph Hartmann
cf8a75f233 improvement: make service tests os dependent 2015-09-25 11:52:33 +02:00
Dominik Richter
3858606fb7 make ssh tests work with vagrant ssh user
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-25 00:55:54 +02:00
Dominik Richter
e2190d0fff run local and ssh runner backend tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-24 22:46:02 +02:00
Dominik Richter
4e40f00cbd add ssh connection tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-24 22:46:02 +02:00
Dominik Richter
519d60c9d6 add local ssh config to runner kitchen tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-24 22:45:51 +02:00
Dominik Richter
a67a5b6deb add description to runner test recipe
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-24 19:48:58 +02:00
Dominik Richter
250d437c6a inform about scheduled docker test runs
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-24 11:55:18 +02:00
Dominik Richter
add788314e increase docker test concurrency
To 2 parallel pulls and 4 parallel runs

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-24 11:55:18 +02:00
Dominik Richter
30c638a227 add docker runner test containers + boostrap
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-24 10:36:20 +02:00
Dominik Richter
7522547f71 add test script for testing the docker runner
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-24 10:36:20 +02:00
Dominik Richter
a7cd08564f split runner test.rb into helper.rb
share common tests

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-24 10:36:20 +02:00
Dominik Richter
112c615de1 dont default to test.yaml in docker_run tests
Catch errors instead where the test config file was not specified.

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-24 10:36:20 +02:00
Dominik Richter
6e6d220e4f add provisioner to docker tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-24 10:36:20 +02:00
Christoph Hartmann
3807a7412c add package unit test for windows 2015-09-23 23:30:31 +02:00
Christoph Hartmann
5151f42d7d add package unit test for unsupported os 2015-09-23 23:30:31 +02:00
Christoph Hartmann
61143907c2 add versions to package unit tests 2015-09-23 23:30:31 +02:00
Christoph Hartmann
52e4459d61 rename pacman mock file 2015-09-23 23:30:31 +02:00
Christoph Hartmann
943eef4ef3 make package unit tests os dependent 2015-09-23 23:30:31 +02:00
Christoph Hartmann
66c7fa6fea add arch as os, reorder mock os list 2015-09-23 23:30:31 +02:00
Christoph Hartmann
672f196a76 update port tests 2015-09-23 23:15:40 +02:00
Christoph Hartmann
cd6dbd03a1 add sockstat mock result 2015-09-23 23:15:37 +02:00
Christoph Hartmann
d889f0b0b1 port resource support for FreeBSD 2015-09-23 23:08:54 +02:00
Christoph Hartmann
c07fce741b add missing port command to mock backend on windows 2015-09-23 23:08:31 +02:00
Christoph Hartmann
b47ec509fd port resource support for Windows 2015-09-23 23:08:19 +02:00
Christoph Hartmann
4eeb84945c port resource support for MacOS 2015-09-23 23:07:07 +02:00
Christoph Hartmann
c187230336 implement port resource for linux 2015-09-23 18:12:51 +02:00
Christoph Hartmann
f505148abe add undefined to test behavior on unsupported os 2015-09-23 18:12:51 +02:00
Dominik Richter
a85b47b5b4 split up tests for travis 2015-09-23 01:51:51 +02:00
Dominik Richter
9399c527bc timeout container tests to 60min
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-23 01:02:48 +02:00
Dominik Richter
16e2b8ce3d skip ssh resource tests until containers support them
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 19:43:11 +02:00
Dominik Richter
8e8274cf90 skip file.mounted? tests in docker for now
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 19:43:11 +02:00
Dominik Richter
afb9d4877f fix link_path in file tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 19:43:11 +02:00
Christoph Hartmann
48f0615d17 simplify os default setting 2015-09-22 19:35:38 +02:00
Christoph Hartmann
bdb9a59264 simplify unit tests 2015-09-22 18:33:05 +02:00
Christoph Hartmann
39b697ccb7 implement os mock in unit tests 2015-09-22 18:31:21 +02:00
Dominik Richter
b779308f3d bugfix: handle NotImplementedError on docker tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 18:02:28 +02:00
Dominik Richter
a2138e6d31 chain docker pull + log out
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 18:02:28 +02:00
Dominik Richter
dfe112a7e7 pull docker images that are missing
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 18:02:28 +02:00
Dominik Richter
0bc1b8a110 improve error handling and output on failures
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 18:02:28 +02:00
Dominik Richter
8c280789c0 split docker container tester into runner+tests 2015-09-22 18:02:28 +02:00
Christoph Hartmann
7155ca8f45 fix description with colon 2015-09-22 02:27:04 +02:00
Christoph Hartmann
4ea5a0bf97 fix description with colon 2015-09-22 02:27:04 +02:00
Christoph Hartmann
693d9cd0cf add example.csv for unit test 2015-09-22 02:27:04 +02:00
Christoph Hartmann
5f7910a0cf fix title 2015-09-22 02:27:04 +02:00
Christoph Hartmann
cf3dddf1a3 add csv support 2015-09-22 02:27:04 +02:00
Christoph Hartmann
b9d4fc6d8c add yaml resource 2015-09-22 02:27:04 +02:00
Christoph Hartmann
0e43d4ca6a add json resource 2015-09-22 02:27:04 +02:00
Dominik Richter
523263b4b6 simplify and extend tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:04 +02:00
Christoph Hartmann
8fc108bcd7 add tests 2015-09-22 02:27:04 +02:00
Christoph Hartmann
baee8daae8 add unit tests for windows feature 2015-09-22 02:27:03 +02:00
Dominik Richter
052143bdb8 adjust serverspec yum deprecation test
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:03 +02:00
Dominik Richter
bb18ce52e2 update function+test calls from exists? -> exist? 2015-09-22 02:27:03 +02:00
Dominik Richter
9de015ae2d improvement: simplify runner configuration
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:02 +02:00
Christoph Hartmann
e06eed2178 Merge pull request #19 from chef/improvements
Improvements
2015-09-22 02:27:01 +02:00
Dominik Richter
38a77efb4a fix failing tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:01 +02:00
Dominik Richter
c23e98c902 folders on freebsd have content when read
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:00 +02:00
Dominik Richter
b03f878502 support freebsd default wheel group in tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:00 +02:00
Dominik Richter
5b336f2c87 support freebsd in test cookbook
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:27:00 +02:00
Christoph Hartmann
9a6063c267 add resource test for windows 2015-09-22 02:26:59 +02:00
Dominik Richter
7758945f6b support opensuse directory size == 0
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:26:59 +02:00
Dominik Richter
432640ee27 support fedora in selinux label tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:26:59 +02:00
Dominik Richter
50f3103358 deep_duplicate hashes for selinux label tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:26:59 +02:00
Dominik Richter
9521653f54 fix test /tmp/block_device for centos 5.11
CentOS 5.11 doesnt recognize minor #20 for the block device, but can connect #7. Make the adjustment so that reading content from block_device doesnt error out.

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:26:58 +02:00
Dominik Richter
261cb6a485 extract selinux label handling for test
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:26:58 +02:00
Dominik Richter
c80b712287 skip run_command stderr for specinfra local execution
It fails in most cases, works in others. Skip it for now until this is solved

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:26:58 +02:00
Dominik Richter
682fe8f261 fix selinux label tests for redhat family
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:26:58 +02:00
Dominik Richter
daf0602b93 test for empty block device 2015-09-22 02:26:58 +02:00
Dominik Richter
dda75d7c67 create dummy block device 2015-09-22 02:26:58 +02:00
Dominik Richter
2a46af5f3d extend modify time and inode size 2015-09-22 02:26:58 +02:00
Dominik Richter
29e2105c52 add pipe resource to test cookbook 2015-09-22 02:26:52 +02:00
Dominik Richter
45d59ab3f8 add file integration tests for missing paths
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:25:52 +02:00
Dominik Richter
ffcd12ba97 split up file integration tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:25:52 +02:00
Dominik Richter
6b64e12afa add pipe/fifo integration tests 2015-09-22 02:25:41 +02:00
Dominik Richter
ee0c1bb16a add block device integration tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
15c002ba98 add character device tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
b04cfc688d add folder integration tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
2727918205 add test provisioner for folder and symlink
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
12c45d0e7a clean test.rb file
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
0969a04853 add symlink file integration tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:30 +02:00
Dominik Richter
7c436baf3c implement remaining file tests for runner
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:29 +02:00
Dominik Richter
1c522d185e extend file tests 2015-09-22 02:17:29 +02:00
Dominik Richter
5557c92923 start file runner integration tests 2015-09-22 02:17:29 +02:00
Dominik Richter
bd00ab93a4 move to test runner with multiple backends 2015-09-22 02:17:29 +02:00
Dominik Richter
cafa45e84e add local specinfra backend to integration tests 2015-09-22 02:17:29 +02:00
Dominik Richter
b0203127ab add all test boxes to kitchen 2015-09-22 02:17:29 +02:00
Dominik Richter
45df094004 complete backend run_command integration tests 2015-09-22 02:17:29 +02:00
Dominik Richter
1e7d365cad switch kitchen provisioner shell -> chef
Reason: Tempering around older ubuntu distros to get their ruby to work just right is error-prone and wasteful. Just install chef from omnibus, grab its ruby to run the tests and use chef to bootstrap the nodes.
2015-09-22 02:17:29 +02:00
Dominik Richter
ba1750e496 add simple localized test environment 2015-09-22 02:17:29 +02:00
Dominik Richter
1e43feef79 add bento boxes
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:29 +02:00
Dominik Richter
8595aa402a print docker test errors
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:28 +02:00
Dominik Richter
cf6db59fc8 improve docker test runner structure
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:28 +02:00
Dominik Richter
54b37b0b96 unify reporting on concurrent tests
Take control of the rspec runner loop and make sure all of our concurrent tests are executed in one reporting chain. It goes: Start reporting, concurrently run container+test+kill, stop and publish reporting.

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:28 +02:00
Dominik Richter
c6f896cad3 run full docker test in parallel
With just one more issue left: the formatter is going to report multiple time, including spitting out errors multiple times. Also need to remove some of the custom formatting around the current state of containers.

As a bonus: This further improved testing speed (30% on the current environment) and will allow us to grow the supported platforms for tests easily.

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:27 +02:00
Dominik Richter
37ad8f9531 run test setup concurrently + only once
Instead of having RSpec re-run its world multiple times, run it only once with all tests.

Which leaves us with one more thing to solve: we want to start tests as soon as the container is up and they are set up. At the moment, the containers come up and are set up concurrently, including test registry, but the tests themselves are in simple sequence.

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:27 +02:00
Dominik Richter
ee11a25f6e run docker tests start/stop concurrently
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:27 +02:00
Dominik Richter
92758ca732 use concurrent container start/stop in tests
As a limitation right now: We cannot yet run all tests concurrently with the current backend. Until this is done, at least speed up container creation and teardown for testing.

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:17:27 +02:00
Christoph Hartmann
33f9dd8e87 add oneget resource 2015-09-22 02:17:21 +02:00
Dominik Richter
ddbaebae46 add mysql unit tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:42 +02:00
Christoph Hartmann
c2c46b3651 update test helper 2015-09-22 02:15:41 +02:00
Christoph Hartmann
238f1b2016 add pip resource to verify gem packages 2015-09-22 02:15:41 +02:00
Christoph Hartmann
bdb859b730 add npm resource to verify gem packages 2015-09-22 02:15:41 +02:00
Christoph Hartmann
0171b2e2f2 add gem resource to verify gem packages 2015-09-22 02:15:41 +02:00
Christoph Hartmann
02afd48576 add mock resources for package resource 2015-09-22 02:15:41 +02:00
Christoph Hartmann
9783751741 implement package resource 2015-09-22 02:15:41 +02:00
Dominik Richter
a6c47a2e39 rubocop
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:40 +02:00
Dominik Richter
ae44b904e1 use specinfra+docker for now
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 02:15:40 +02:00
Dominik Richter
8a79edb37e split up ssh client and server config
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 01:42:27 +02:00
Dominik Richter
557faf6905 add ssh config integration tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 01:42:27 +02:00
Dominik Richter
905f2a0a6f remove duplicate key in test
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 01:42:26 +02:00
Dominik Richter
0125bcace8 add call tracing to mock backend
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 01:42:26 +02:00
Dominik Richter
98fcbb5231 add simplecov
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 01:42:26 +02:00
Dominik Richter
72570aea01 list tests for integration at the beginning
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 01:42:26 +02:00
Dominik Richter
ecad431bc6 move mock_command into mock, out of helper
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 01:23:08 +02:00
Dominik Richter
90b56f069e fix lint warning on IO::File
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 01:23:08 +02:00
Dominik Richter
383738add2 overhaul test helper for mock data
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 01:23:08 +02:00
Dominik Richter
305bb39668 add missing local backend
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-22 01:23:08 +02:00
Christoph Hartmann
a7efec310b implement yum resource 2015-09-22 01:10:56 +02:00
Christoph Hartmann
9554a4ac32 add audit_daemon resource test cases 2015-09-21 14:12:11 +02:00
Christoph Hartmann
90935e75e1 add unit test for audit_policy resource 2015-09-21 14:09:16 +02:00
Christoph Hartmann
888f8588fb add unit test for registry_key resource 2015-09-21 14:08:27 +02:00
Christoph Hartmann
57ab2a816b fix rubocop issues for bond unit test 2015-09-21 14:08:20 +02:00
Christoph Hartmann
ca2e0ed6cb add unit tests for etc_group resource 2015-09-21 14:07:32 +02:00
Christoph Hartmann
fb3b4b1369 add unit test for inetd_conf 2015-09-21 14:05:42 +02:00
Christoph Hartmann
158e4ac1ab add unit test for limits.conf 2015-09-21 14:03:24 +02:00
Christoph Hartmann
797d24c14a add login_def resource unit test 2015-09-21 14:01:51 +02:00
Christoph Hartmann
faf7f44a42 add os_env unit test 2015-09-21 13:58:22 +02:00
Christoph Hartmann
0adf3314af add ntp unit test 2015-09-21 13:57:42 +02:00
Christoph Hartmann
413267c322 add passwd unit test 2015-09-21 13:55:51 +02:00
Christoph Hartmann
1b643ae1da implement security policy resource tests 2015-09-21 13:51:43 +02:00
Christoph Hartmann
08ad9704a7 move mock files to new sub-directory 2015-09-21 13:43:09 +02:00
Christoph Hartmann
03a7dd7176 implement unit test for processes resource 2015-09-21 13:43:09 +02:00
Christoph Hartmann
ae514959d2 add ssh unit tests 2015-09-21 13:38:54 +02:00
Christoph Hartmann
6a00ce8ebe add utf-8 header to tests 2015-09-03 18:04:13 +02:00
Christoph Hartmann
abae94ba4e improve test style 2015-09-03 18:03:51 +02:00
Christoph Hartmann
cf77e56118 add unit test for bond resource 2015-09-03 17:34:11 +02:00
Dominik Richter
d8cfd094ac extend integration tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-03 17:24:45 +02:00
Dominik Richter
c9fcb2913a complete all file tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-03 16:17:52 +02:00
Dominik Richter
f54fa6537a use string for backend conf
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-03 14:56:08 +02:00
Dominik Richter
f618fa391b bugfix: specinfra file type detection
mask & tmask returns non-zero values, if some bits fit the file-type. this leads to overlapping results. make sure the mask result has the full mask present, then use it.

Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-03 14:14:57 +02:00
Dominik Richter
d3d91c8c3f move test container handling to test/docker
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-03 14:06:43 +02:00
Dominik Richter
a005add5ae start integration tests + add test for resource/command
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-03 13:22:15 +02:00
Dominik Richter
5ae3b13b38 use let instead of before
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-03 10:25:27 +02:00
Dominik Richter
199cb84ab3 not implemented only throws on missing methods
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-02 17:30:49 +02:00
Dominik Richter
1c2ab098f5 specify methods all backends must implement
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-02 11:53:25 +02:00
Dominik Richter
05b4167971 start backend and file tests
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-02 04:55:22 +02:00
Dominik Richter
32964c1e4e tests for backend
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
2015-09-02 04:19:23 +02:00