Merge branch 'dev'
This commit is contained in:
		
							
								
								
									
										2
									
								
								.coveragerc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								.coveragerc
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| [run] | ||||
| omit=venv/* | ||||
| @@ -1,6 +1,5 @@ | ||||
| import os | ||||
|  | ||||
| # Setup environment variables for testing | ||||
| os.environ["INITIAL_SERVERS"] = "192.168.111.22" | ||||
| os.environ["LOCAL_UUID"] = "d8b2e5e2-f675-4194-9324-af58e4b70c54" | ||||
| os.environ["REDIS_URL"] = "redis://192.168.111.121/0" | ||||
|   | ||||
| @@ -1,21 +1,22 @@ | ||||
| import json | ||||
| import os | ||||
| import db | ||||
| import pytest | ||||
| from flask import current_app | ||||
|  | ||||
|  | ||||
|  | ||||
| @pytest.fixture | ||||
| def client(): | ||||
|     current_app.config['TESTING'] = True | ||||
| def client(mocker): | ||||
|     mocker.patch("db.redis_client") | ||||
|     db.redis_client.get.side_effect=lambda a: None | ||||
|  | ||||
|     with current_app.test_client() as client: | ||||
|     from app import app | ||||
|  | ||||
|     app.config['TESTING'] = True | ||||
|  | ||||
|     with app.test_client() as client: | ||||
|         yield client | ||||
|  | ||||
|  | ||||
| def test_response_length(client): | ||||
|     data = { | ||||
|         "uuid": os.environ["LOCAL_UUID"], | ||||
|         "message": "Hello There!" | ||||
|     } | ||||
|     r = client.get('/consumers', data = json.dumps(data)) | ||||
|     assert len(r) == 0 | ||||
|     r = client.get('/consumers') | ||||
|  | ||||
|     assert r.status_code == 200 | ||||
|   | ||||
| @@ -1,16 +1,16 @@ | ||||
| import json | ||||
| import os | ||||
|  | ||||
| import db | ||||
| import pytest | ||||
|  | ||||
| from flask import current_app | ||||
|  | ||||
|  | ||||
| @pytest.fixture | ||||
| def client(): | ||||
|     current_app.config['TESTING'] = True | ||||
| def client(mocker): | ||||
|     mocker.patch("db.redis_client") | ||||
|     db.redis_client.get.side_effect=lambda a: None | ||||
|  | ||||
|     with current_app.test_client() as client: | ||||
|     from app import app | ||||
|  | ||||
|     app.config['TESTING'] = True | ||||
|  | ||||
|     with app.test_client() as client: | ||||
|         yield client | ||||
|  | ||||
|  | ||||
| @@ -22,9 +22,9 @@ def test_log_code_get(client): | ||||
|  | ||||
| def test_log_code_post(client): | ||||
|     data = { | ||||
|         "uuid": os.environ["LOCAL_UUID"], | ||||
|         "uuid": "asdasdasd", | ||||
|         "message": "Hello There!" | ||||
|     } | ||||
|     r = client.post('/log', data = json.dumps(data)) | ||||
|     r = client.post('/log', json=data) | ||||
|  | ||||
|     assert r.status_code == 204 | ||||
|   | ||||
| @@ -1,19 +1,20 @@ | ||||
| import json | ||||
| import os | ||||
|  | ||||
| import db | ||||
| import pytest | ||||
|  | ||||
| from flask import current_app | ||||
|  | ||||
|  | ||||
| @pytest.fixture | ||||
| def client(): | ||||
|     current_app.config['TESTING'] = True | ||||
| def client(mocker): | ||||
|     mocker.patch("db.redis_client") | ||||
|     db.redis_client.get.side_effect=lambda a: None | ||||
|  | ||||
|     with current_app.test_client() as client: | ||||
|     from app import app | ||||
|  | ||||
|     app.config['TESTING'] = True | ||||
|  | ||||
|     with app.test_client() as client: | ||||
|         yield client | ||||
|  | ||||
|  | ||||
|  | ||||
| def test_log_code_get(client): | ||||
|     r = client.get('/sync') | ||||
|  | ||||
| @@ -22,8 +23,8 @@ def test_log_code_get(client): | ||||
|  | ||||
| def test_log_code_post(client): | ||||
|     data = { | ||||
|         "uuid": os.environ["LOCAL_UUID"] | ||||
|         "uuid": "tesuuid" | ||||
|     } | ||||
|     r = client.post('/sync', data = json.dumps(data)) | ||||
|     r = client.post('/sync', json=data) | ||||
|  | ||||
|     assert r.status_code == 204 | ||||
|     assert r.status_code == 200 | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
| import json | ||||
|  | ||||
| from db import redis_client | ||||
| from flask import jsonify, request | ||||
| from flask import jsonify | ||||
| from flask_classful import FlaskView | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -9,6 +9,14 @@ class SyncView(FlaskView): | ||||
|  | ||||
|     def post(self): | ||||
|         remote_uuid = request.json['uuid'] | ||||
|  | ||||
|         if 'ip' in request.json: | ||||
|             remote_ip = request.json['ip'] | ||||
|  | ||||
|             if request.remote_addr != remote_ip: | ||||
|                 current_app.logger.debug(f"IP was overriden by the remote consumer {remote_ip} instead of {request.remote_addr}") | ||||
|  | ||||
|         else: | ||||
|             remote_ip = request.remote_addr | ||||
|  | ||||
|         cust_key = f"consumer_{remote_uuid}" | ||||
|   | ||||
							
								
								
									
										4
									
								
								requirements_dev.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								requirements_dev.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| pytest | ||||
| pytest-mock | ||||
| mock | ||||
| coverage | ||||
		Reference in New Issue
	
	Block a user