Add tests for win_stat module.

This commit is contained in:
Chris Church 2014-06-19 11:20:11 -05:00 committed by Matt Martz
parent 90c98ada7c
commit edbe7a4514
4 changed files with 89 additions and 3 deletions

View file

@ -27,7 +27,8 @@ description:
options: options:
path: path:
description: description:
- The full path of the file/object to get the facts of - The full path of the file/object to get the facts of; both forward and
back slashes are accepted.
required: true required: true
default: null default: null
aliases: [] aliases: []

View file

@ -19,16 +19,20 @@
$params = Parse-Args $args; $params = Parse-Args $args;
$path = ''; $path = $FALSE;
If ($params.path.GetType) If ($params.path.GetType)
{ {
$path = $params.path; $path = $params.path;
} }
If ($path -eq $FALSE)
{
Fail-Json (New-Object psobject) "missing required argument: path";
}
$get_md5 = $TRUE; $get_md5 = $TRUE;
If ($params.get_md5.GetType) If ($params.get_md5.GetType)
{ {
$get_md5 = $params.get_md5; $get_md5 = $params.get_md5 | ConvertTo-Bool;
} }
$result = New-Object psobject @{ $result = New-Object psobject @{

View file

@ -0,0 +1,80 @@
# test code for the win_stat module
# (c) 2014, Chris Church <chris@ninemoreminutes.com>
# This file is part of Ansible
#
# Ansible is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Ansible is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Ansible. If not, see <http://www.gnu.org/licenses/>.
- name: test win_stat module on file
win_stat: path="C:/Windows/win.ini"
register: win_stat_file
- name: check win_stat file result
assert:
that:
- "win_stat_file.stat.exists"
- "not win_stat_file.stat.isdir"
- "win_stat_file.stat.size > 0"
- "win_stat_file.stat.md5"
- "not win_stat_file|failed"
- "not win_stat_file|changed"
- name: test win_stat module on file without md5 and backslashes
win_stat: path="C:\Windows\win.ini" get_md5=no
register: win_stat_file_no_md5
- name: check win_stat file result without md
assert:
that:
- "win_stat_file_no_md5.stat.exists"
- "not win_stat_file_no_md5.stat.isdir"
- "win_stat_file_no_md5.stat.size > 0"
- "not win_stat_file_no_md5.stat.md5|default('')"
- "not win_stat_file_no_md5|failed"
- "not win_stat_file_no_md5|changed"
- name: test win_stat module on directory
win_stat: path="C:\\Windows"
register: win_stat_dir
- name: check win_stat dir result
assert:
that:
- "win_stat_dir.stat.exists"
- "win_stat_dir.stat.isdir"
- "not win_stat_dir|failed"
- "not win_stat_dir|changed"
- name: test win_stat module non-existent path
win_stat: path="C:/this_file_should_not_exist.txt"
register: win_stat_missing
- name: check win_stat missing result
assert:
that:
- "not win_stat_missing.stat.exists"
- "not win_stat_missing|failed"
- "not win_stat_missing|changed"
- name: test win_stat module without path argument
action: win_stat
register: win_stat_no_args
ignore_errors: true
- name: check win_stat result witn no path argument
assert:
that:
- "win_stat_no_args|failed"
- "win_stat_no_args.msg"
- "not win_stat_no_args|changed"

View file

@ -8,3 +8,4 @@
- { role: test_win_ping, tags: test_win_ping } - { role: test_win_ping, tags: test_win_ping }
- { role: test_win_slurp, tags: test_win_slurp } - { role: test_win_slurp, tags: test_win_slurp }
- { role: test_win_fetch, tags: test_win_fetch } - { role: test_win_fetch, tags: test_win_fetch }
- { role: test_win_stat, tags: test_win_stat }