diff --git a/tests/sanity.py b/tests/sanity.py new file mode 100644 index 0000000..5a09e1e --- /dev/null +++ b/tests/sanity.py @@ -0,0 +1,51 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# This Modularity Testing Framework helps you to write tests for modules +# Copyright (C) 2017 Red Hat, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# he Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program 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 this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# +# Authors: Dominika Hodovska +# + +from avocado import main +from avocado.core import exceptions +from moduleframework import module_framework + + +class SanityCheck(module_framework.AvocadoTest): + """ + :avocado: enable + """ + + def test(self): + """ + Simple sanity test + """ + + self.start() + self.run("ls / | grep bin") + + def testSambaVersion(self): + """ + Check if httpd is installed in correct version + """ + version = "4.5" + self.start() + self.run("smbcontrol -V | grep {}".format(version)) + +if __name__ == '__main__': + main() \ No newline at end of file diff --git a/tests/smbconfig.py b/tests/smbconfig.py new file mode 100644 index 0000000..5ef2646 --- /dev/null +++ b/tests/smbconfig.py @@ -0,0 +1,57 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# This Modularity Testing Framework helps you to write tests for modules +# Copyright (C) 2017 Red Hat, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# he Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program 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 this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# +# Authors: Dominika Hodovska +# + +from avocado import main +from avocado.core import exceptions +from moduleframework import module_framework + + +class SmbConfCheck(module_framework.AvocadoTest): + """ + :avocado: enable + """ + def testTestParamFail(self): + """ + Valid failure of testparam + """ + + self.start() + + self.run("testparm -s > /smb-fail") + self.run("printf \"\\n[fail]\\n\\tcomment = bad config\\n\" >> /smb-fail") + # No path + self.run("testparm -s /smb-fail > /out.txt") + self.run("cat out.txt | grep \"available = No\"") + + self.run("rm /out.txt") + self.run("testparm -s > /smb-fail") + + # bad mask + self.run("printf \"\\n[fail]\\n\\tcomment = bad config\\n\" >> /smb-fail") + self.run("printf \"\\tcreate mask = 9999\\n\" >> /smb-fail") + self.run("testparm -s /smb-fail > /out.txt; [ $? -ne 0 ]") + + self.run("[ ! -s /out.txt ]") + +if __name__ == '__main__': + main()