use config class which reads from .env file remove obsolete functions update requirements
		
			
				
	
	
		
			197 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			197 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
| #!python3
 | |
| """
 | |
| inkycal_weather unittest
 | |
| """
 | |
| import logging
 | |
| import sys
 | |
| import unittest
 | |
| from inkycal.modules import Weather as Module
 | |
| 
 | |
| from inkycal.modules.inky_image import Inkyimage
 | |
| from inkycal.tests import Config
 | |
| preview = Inkyimage.preview
 | |
| merge = Inkyimage.merge
 | |
| 
 | |
| owm_api_key = Config.OPENWEATHERMAP_API_KEY
 | |
| location = 'Stuttgart, DE'
 | |
| 
 | |
| tests = [
 | |
|     {
 | |
|         "position": 1,
 | |
|         "name": "Weather",
 | |
|         "config": {
 | |
|             "size": [500, 100],
 | |
|             "api_key": owm_api_key,
 | |
|             "location": location,
 | |
|             "round_temperature": True,
 | |
|             "round_windspeed": True,
 | |
|             "forecast_interval": "daily",
 | |
|             "units": "metric",
 | |
|             "hour_format": "12",
 | |
|             "use_beaufort": True,
 | |
|             "padding_x": 10,
 | |
|             "padding_y": 10,
 | |
|             "fontsize": 12,
 | |
|             "language": "en"
 | |
|         }
 | |
|     },
 | |
|     {
 | |
|         "position": 1,
 | |
|         "name": "Weather",
 | |
|         "config": {
 | |
|             "size": [500, 150],
 | |
|             "api_key": owm_api_key,
 | |
|             "location": "2643123",
 | |
|             "round_temperature": True,
 | |
|             "round_windspeed": True,
 | |
|             "forecast_interval": "daily",
 | |
|             "units": "metric",
 | |
|             "hour_format": "12",
 | |
|             "use_beaufort": True,
 | |
|             "padding_x": 10,
 | |
|             "padding_y": 10,
 | |
|             "fontsize": 12,
 | |
|             "language": "en"
 | |
|         }
 | |
|     },
 | |
|     {
 | |
|         "position": 1,
 | |
|         "name": "Weather",
 | |
|         "config": {
 | |
|             "size": [500, 200],
 | |
|             "api_key": owm_api_key,
 | |
|             "location": location,
 | |
|             "round_temperature": False,
 | |
|             "round_windspeed": True,
 | |
|             "forecast_interval": "daily",
 | |
|             "units": "metric",
 | |
|             "hour_format": "12",
 | |
|             "use_beaufort": True,
 | |
|             "padding_x": 10,
 | |
|             "padding_y": 10,
 | |
|             "fontsize": 12,
 | |
|             "language": "en"
 | |
|         }
 | |
|     },
 | |
|     {
 | |
|         "position": 1,
 | |
|         "name": "Weather",
 | |
|         "config": {
 | |
|             "size": [500, 100],
 | |
|             "api_key": owm_api_key,
 | |
|             "location": location,
 | |
|             "round_temperature": True,
 | |
|             "round_windspeed": False,
 | |
|             "forecast_interval": "daily",
 | |
|             "units": "metric",
 | |
|             "hour_format": "12",
 | |
|             "use_beaufort": True,
 | |
|             "padding_x": 10,
 | |
|             "padding_y": 10,
 | |
|             "fontsize": 12,
 | |
|             "language": "en"
 | |
|         }
 | |
|     },
 | |
|     {
 | |
|         "position": 1,
 | |
|         "name": "Weather",
 | |
|         "config": {
 | |
|             "size": [500, 150],
 | |
|             "api_key": owm_api_key,
 | |
|             "location": location,
 | |
|             "round_temperature": True,
 | |
|             "round_windspeed": True,
 | |
|             "forecast_interval": "hourly",
 | |
|             "units": "metric",
 | |
|             "hour_format": "12",
 | |
|             "use_beaufort": True,
 | |
|             "padding_x": 10,
 | |
|             "padding_y": 10,
 | |
|             "fontsize": 12,
 | |
|             "language": "en"
 | |
|         }
 | |
|     },
 | |
|     {
 | |
|         "position": 1,
 | |
|         "name": "Weather",
 | |
|         "config": {
 | |
|             "size": [500, 150],
 | |
|             "api_key": owm_api_key,
 | |
|             "location": location,
 | |
|             "round_temperature": True,
 | |
|             "round_windspeed": True,
 | |
|             "forecast_interval": "daily",
 | |
|             "units": "imperial",
 | |
|             "hour_format": "12",
 | |
|             "use_beaufort": True,
 | |
|             "padding_x": 10,
 | |
|             "padding_y": 10,
 | |
|             "fontsize": 12,
 | |
|             "language": "en"
 | |
|         }
 | |
|     },
 | |
|     {
 | |
|         "position": 1,
 | |
|         "name": "Weather",
 | |
|         "config": {
 | |
|             "size": [500, 100],
 | |
|             "api_key": owm_api_key,
 | |
|             "location": location,
 | |
|             "round_temperature": True,
 | |
|             "round_windspeed": True,
 | |
|             "forecast_interval": "daily",
 | |
|             "units": "metric",
 | |
|             "hour_format": "24",
 | |
|             "use_beaufort": True,
 | |
|             "padding_x": 10,
 | |
|             "padding_y": 10,
 | |
|             "fontsize": 12,
 | |
|             "language": "en"
 | |
|         }
 | |
|     },
 | |
|     {
 | |
|         "position": 1,
 | |
|         "name": "Weather",
 | |
|         "config": {
 | |
|             "size": [500, 100],
 | |
|             "api_key": owm_api_key,
 | |
|             "location": location,
 | |
|             "round_temperature": True,
 | |
|             "round_windspeed": True,
 | |
|             "forecast_interval": "daily",
 | |
|             "units": "metric",
 | |
|             "hour_format": "12",
 | |
|             "use_beaufort": False,
 | |
|             "padding_x": 10,
 | |
|             "padding_y": 10,
 | |
|             "fontsize": 12,
 | |
|             "language": "en"
 | |
|         }
 | |
|     },
 | |
| ]
 | |
| 
 | |
| 
 | |
| class module_test(unittest.TestCase):
 | |
|     def test_get_config(self):
 | |
|         print('getting data for web-ui...', end="")
 | |
|         Module.get_config()
 | |
|         print('OK')
 | |
| 
 | |
|     def test_generate_image(self):
 | |
|         for test in tests:
 | |
|             print(f'test {tests.index(test) + 1} generating image..')
 | |
|             module = Module(test)
 | |
|             im_black, im_colour = module.generate_image()
 | |
|             print('OK')
 | |
|             if Config.USE_PREVIEW:
 | |
|                 preview(merge(im_black, im_colour))
 | |
| 
 | |
| 
 | |
| 
 | |
| if __name__ == '__main__':
 | |
|     logger = logging.getLogger()
 | |
|     logger.level = logging.DEBUG
 | |
|     logger.addHandler(logging.StreamHandler(sys.stdout))
 | |
| 
 | |
|     unittest.main()
 |