Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
1from __future__ import print_function
2from builtins import str
3import os
4import unittest
5import shutil
6import unittest
7import yaml
8from fundamentals.utKit import utKit
9from fundamentals import tools
10from os.path import expanduser
11home = expanduser("~")
13packageDirectory = utKit("").get_project_root()
14settingsFile = packageDirectory + "/test_settings.yaml"
15# settingsFile = home + "/.config/soxspipe.recipes/soxspipe.recipes.yaml"
16su = tools(
17 arguments={"settingsFile": settingsFile},
18 docString=__doc__,
19 logLevel="DEBUG",
20 options_first=False,
21 projectName=None,
22 defaultSettingsFile=False
23)
24arguments, settings, log, dbConn = su.setup()
26# SETUP AND TEARDOWN FIXTURE FUNCTIONS FOR THE ENTIRE MODULE
27moduleDirectory = os.path.dirname(__file__)
28utKit = utKit(moduleDirectory)
29log, dbConn, pathToInputDir, pathToOutputDir = utKit.setupModule()
30utKit.tearDownModule()
32try:
33 shutil.rmtree(pathToOutputDir)
34except:
35 pass
36# COPY INPUT TO OUTPUT DIR
37shutil.copytree(pathToInputDir, pathToOutputDir)
39# Recursively create missing directories
40if not os.path.exists(pathToOutputDir):
41 os.makedirs(pathToOutputDir)
43dbSettings = settings["database settings"]["atlasMovers"]
44dbSettings2 = settings["database settings"]["unit_tests"]
47class test_database(unittest.TestCase):
49 # def test_tunnel(self):
51 # from fundamentals.mysql import database
52 # db = database(
53 # log=log,
54 # dbSettings=dbSettings
55 # )
56 # sshPort = db._setup_tunnel(
57 # tunnelParameters=dbSettings["tunnel"]
58 # )
60 # return
62 def test_no_tunnel(self):
64 from fundamentals.mysql import database
65 db = database(
66 log=log,
67 dbSettings=dbSettings2
68 ).connect()
70 return
72 def test_database_function(self):
74 # SETUP ALL DATABASE CONNECTIONS
75 from fundamentals.mysql import database
76 dbConn = database(
77 log=log,
78 dbSettings=dbSettings2
79 ).connect()
81 from fundamentals.mysql import readquery
82 sqlQuery = u"""
83 SELECT VERSION();
84 """ % locals()
85 rows = readquery(
86 log=log,
87 sqlQuery=sqlQuery,
88 dbConn=dbConn,
89 quiet=False
90 )
91 # print(rows)
93 def test_database_function_exception(self):
95 from fundamentals.mysql import database
96 try:
97 this = database(
98 log=log,
99 dbSettings=dbSettings2,
100 fakeKey="break the code"
101 )
102 this.get()
103 assert False
104 except Exception as e:
105 assert True
106 # print(str(e))
108 # x-print-testpage-for-pessto-marshall-web-object
110 # x-class-to-test-named-worker-function