Hide keyboard shortcuts

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

1""" 

2test all the different configurations types in 

3config.py 

4""" 

5import pytest 

6 

7 

8class TestAppConfigs: 

9 @pytest.mark.parametrize("app_type", ["development"]) 

10 def test_dev_app_config(self, app): 

11 

12 config = app.config 

13 

14 assert "ENV" in config 

15 assert config["ENV"] == "development" 

16 assert "DEBUG" in config 

17 assert config["DEBUG"] is True 

18 assert config["LOGIN_DISABLED"] is not None 

19 assert "SECRET_KEY" in config 

20 assert config["SECRET_KEY"] is not None 

21 assert "SQLALCHEMY_DATABASE_URI" in config 

22 assert config["SQLALCHEMY_DATABASE_URI"] is not None 

23 assert config["MAIL_SERVER"] in ["localhost", "console"] 

24 assert "MAIL_PORT" in config 

25 assert "MAIL_USERNAME" in config 

26 assert "MAIL_PASSWORD" in config 

27 assert "MAIL_DEFAULT_SENDER" in config 

28 

29 @pytest.mark.parametrize("app_type", ["production"]) 

30 def test_prod_app_config(self, app): 

31 """ 

32 Test the productions configs. Environment variable 

33 configs(private configs) are loaded from .test.prod.env just 

34 to make sure these are loaded correctly 

35 """ 

36 config = app.config 

37 

38 assert "ENV" in config 

39 assert config["ENV"] == "production" 

40 assert "DEBUG" in config 

41 assert config["DEBUG"] is False 

42 assert "SECRET_KEY" in config 

43 assert config["SECRET_KEY"] == "secret" 

44 assert "EMAIL_CONFIRMATION_DISABLED" in config 

45 assert config["MAIL_SERVER"] not in ["localhost", "console"] 

46 assert "MAIL_PORT" in config 

47 assert "MAIL_USERNAME" in config 

48 assert config["MAIL_USERNAME"] == "foo@gmail.com" 

49 assert "MAIL_PASSWORD" in config 

50 assert config["MAIL_PASSWORD"] == "pass" 

51 assert "MAIL_DEFAULT_SENDER" in config 

52 assert config["MAIL_DEFAULT_SENDER"] == "foo@gmail.com" 

53 assert "SQLALCHEMY_DATABASE_URI" in config 

54 assert ( 

55 config["SQLALCHEMY_DATABASE_URI"] 

56 == "mysql+pymysql://db_username:db_password@db_host/db_name" 

57 )