Package: non-venomous
🌑 🌘 🌗 🌖 🌕 🌔 🌓 🌒 🌑🌑 🌒 🌓 🌔 🌕 🌖 🌗 🌘 🌑🌑 🌘 🌗 🌖 🌕 🌔 🌓 🌒 🌑Bravo!  You have received a Medical Diploma in "non_venomous" fromthe Orbital Convergence University International Air and WaterEmbassy of the Tangerine Planet 🍊.You are now officially certified to include "non_venomous" in yourpractice.🐍 non_venomousIt seems like every kind of known "python" is non-venomous.However, pythons are constrictors that kill prey bywrapping around them and squeezing tightly.Species like the "reticulated python" can grow to over 20 feetand thusly can squeeze and kill a human very fast.Dangers aside, pythons are great companions for organic crop
farming as they reduce the rodent population.🥧 descriptionThis is can ascertainthe health status of a python3.pybiome.It's like a testing framework.⛲ licensingGNU General Public License v3.0 - GNU Project - Free Software Foundation (FSF)The complete license is included in the modulein the "./__license/options" directory.⛑️ installThis utilizes:https://pypi.org/project/xonsh[xonsh] pip install non_venomous📖 documentation[xonsh] non_venomous helpThis opens a server process that can be opened in a browser.⚕️ internal status tests of the module[xonsh] non_venomous internal-statusThese checks are run with pypi "body_scan";"non_venomous" is built from a fork of "body_scan".The "body_scan" checks are written with "unittest".🌌 TutorialThe structure📁 performance
	📜 status_1.pyThe checks# status_1.py

def check_1 ():
	print ("check 1")
	
def check_2 ():
	print ("check 2")
	
def check_3 ():
	raise Exception ("not 110%")

checks = {
	"check 1": check_1,
	"check 2": check_2,
	"check 3": check_3
}The procedureFrom theperformancedirectory,[xonsh] non_venomous statusThe reportThis is the report that is (hopefully) written to the terminal.paths: [
	{
		"path": "status_1.py",
		"empty": false,
		"parsed": true,
		"stats": {
			"passes": 2,
			"alarms": 1
		},
		"checks": [
			{
				"check": "check 1",
				"passed": true,
				"elapsed": [
					4.054199962411076e-05,
					"seconds"
				]
			},
			{
				"check": "check 2",
				"passed": true,
				"elapsed": [
					1.72930003827787e-05,
					"seconds"
				]
			},
			{
				"check": "check 3",
				"passed": false,
				"exception": "Exception('not 110%')",
				"exception trace": [
					"Traceback (most recent call last):",
					"  File \"/non_venomous/processes/scan/process/keg/check.py\", line 68, in start",
					"    checks [ check ] ()",
					"  File \"<string>\", line 13, in check_3",
					"Exception: not 110%"
				]
			}
		]
	}
]
alarms: [
	{
		"path": "status_1.py",
		"checks": [
			{
				"check": "check 3",
				"passed": false,
				"exception": "Exception('not 110%')",
				"exception trace": [
					"Traceback (most recent call last):",
					"  File \"/non_venomous/processes/scan/process/keg/check.py\", line 68, in start",
					"    checks [ check ] ()",
					"  File \"<string>\", line 13, in check_3",
					"Exception: not 110%"
				]
			}
		]
	}
]
stats: {
	"alarms": 0,
	"empty": 0,
	"checks": {
		"passes": 2,
		"alarms": 1
	}
}NotesChecks are started simultaneously, unless--simultaneous no[xonsh] non_venomous status --simultaneous noThe fractory glob pattern is "**/status_*.py", but can be changed with--glob-string[xonsh] non_venomous status --glob-string "**/performance_*.py"Advanced TutorialIt's recommended to run non_venomous in a .py script.An example of this can be found in the "_book/advanced tutorial"section of the documentation.📡 ContactsBryan@Status600.com