# This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. from __future__ import absolute_import, print_function, unicode_literals import os import json import yaml import shutil import unittest import tempfile from .. import decision from mozunit import main class TestDecision(unittest.TestCase): def test_write_artifact_json(self): data = [{'some': 'data'}] tmpdir = tempfile.mkdtemp() try: decision.ARTIFACTS_DIR = os.path.join(tmpdir, "artifacts") decision.write_artifact("artifact.json", data) with open(os.path.join(decision.ARTIFACTS_DIR, "artifact.json")) as f: self.assertEqual(json.load(f), data) finally: if os.path.exists(tmpdir): shutil.rmtree(tmpdir) decision.ARTIFACTS_DIR = 'artifacts' def test_write_artifact_yml(self): data = [{'some': 'data'}] tmpdir = tempfile.mkdtemp() try: decision.ARTIFACTS_DIR = os.path.join(tmpdir, "artifacts") decision.write_artifact("artifact.yml", data) with open(os.path.join(decision.ARTIFACTS_DIR, "artifact.yml")) as f: self.assertEqual(yaml.safe_load(f), data) finally: if os.path.exists(tmpdir): shutil.rmtree(tmpdir) decision.ARTIFACTS_DIR = 'artifacts' if __name__ == '__main__': main()