123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- # -*- coding: utf-8 -*-
- from __future__ import absolute_import
- import os
- import pytest
- import salt.utils.files
- import salt.utils.platform
- from tests.support.case import ModuleCase
- from tests.support.runtests import RUNTIME_VARS
- from tests.support.unit import skipIf
- @skipIf(not salt.utils.platform.is_windows(), "Tests for only Windows")
- class DscModuleTest(ModuleCase):
- """
- Validate PowerShell DSC module
- """
- def setUp(self):
- self.ps1file = os.path.join(RUNTIME_VARS.TMP, "HelloWorld.ps1")
- with salt.utils.files.fopen(
- os.path.join(RUNTIME_VARS.FILES, "file", "base", "HelloWorld.ps1"), "rb"
- ) as sfp:
- with salt.utils.files.fopen(self.ps1file, "wb") as dfp:
- dfp.write(sfp.read())
- self.psd1file = os.path.join(RUNTIME_VARS.TMP, "HelloWorld.psd1")
- with salt.utils.files.fopen(
- os.path.join(RUNTIME_VARS.FILES, "file", "base", "HelloWorld.psd1"), "rb"
- ) as sfp:
- with salt.utils.files.fopen(self.psd1file, "wb") as dfp:
- dfp.write(sfp.read())
- super(DscModuleTest, self).setUp()
- def tearDown(self):
- if os.path.isfile(self.ps1file):
- os.remove(self.ps1file)
- if os.path.isfile(self.psd1file):
- os.remove(self.psd1file)
- super(DscModuleTest, self).tearDown()
- @pytest.mark.destructive_test
- def test_compile_config(self):
- ret = self.run_function(
- "dsc.compile_config",
- self.ps1file,
- config_name="HelloWorld",
- config_data=self.psd1file,
- )
- self.assertTrue(ret["Exists"])
|