Skip to content

Commit 7dc9523

Browse files
committed
fix: fix circleci port bug
1 parent 6078431 commit 7dc9523

File tree

4 files changed

+167
-20
lines changed

4 files changed

+167
-20
lines changed

.gitignore

+154-2
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,154 @@
1-
# created by virtualenv automatically
2-
*
1+
### Python ###
2+
# Byte-compiled / optimized / DLL files
3+
__pycache__/
4+
*.py[cod]
5+
*$py.class
6+
7+
# C extensions
8+
*.so
9+
10+
# Distribution / packaging
11+
.Python
12+
build/
13+
develop-eggs/
14+
downloads/
15+
eggs/
16+
.eggs/
17+
lib/
18+
lib64/
19+
parts/
20+
sdist/
21+
var/
22+
wheels/
23+
share/python-wheels/
24+
*.egg-info/
25+
.installed.cfg
26+
*.egg
27+
MANIFEST
28+
29+
# PyInstaller
30+
# Usually these files are written by a python script from a template
31+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
32+
*.manifest
33+
*.spec
34+
35+
# Installer logs
36+
pip-log.txt
37+
pip-delete-this-directory.txt
38+
39+
# Unit test / coverage reports
40+
htmlcov/
41+
.tox/
42+
.nox/
43+
.coverage
44+
.coverage.*
45+
.cache
46+
nosetests.xml
47+
coverage.xml
48+
*.cover
49+
.hypothesis/
50+
.pytest_cache/
51+
52+
# Translations
53+
*.mo
54+
*.pot
55+
56+
# Sphinx documentation
57+
docs/_build/
58+
59+
# Jupyter Notebook
60+
.ipynb_checkpoints
61+
62+
# IPython
63+
profile_default/
64+
ipython_config.py
65+
66+
# pyenv
67+
.python-version
68+
69+
# Environments
70+
.env
71+
.venv
72+
env/
73+
venv/
74+
ENV/
75+
env.bak/
76+
venv.bak/
77+
78+
# mypy
79+
.mypy_cache/
80+
.dmypy.json
81+
dmypy.json
82+
83+
# Pyre type checker
84+
.pyre/
85+
86+
### Emacs ###
87+
*~
88+
\#*\#
89+
/.emacs.desktop
90+
/.emacs.desktop.lock
91+
*.elc
92+
auto-save-list
93+
tramp
94+
.\#*
95+
96+
# Org-mode
97+
.org-id-locations
98+
*_archive
99+
100+
# flymake-mode
101+
*_flymake.*
102+
103+
# eshell files
104+
/eshell/history
105+
/eshell/lastdir
106+
107+
# elpa packages
108+
/elpa/
109+
110+
# reftex files
111+
*.rel
112+
113+
# AUCTeX auto folder
114+
/auto/
115+
116+
# cask packages
117+
.cask/
118+
dist/
119+
120+
# Flycheck
121+
flycheck_*.el
122+
123+
# server auth directory
124+
/server/
125+
126+
# projectiles files
127+
.projectile
128+
129+
# directory configuration
130+
.dir-locals.el
131+
132+
# network security
133+
/network-security.data
134+
135+
### Vim ###
136+
# Swap
137+
[._]*.s[a-v][a-z]
138+
[._]*.sw[a-p]
139+
[._]s[a-rt-v][a-z]
140+
[._]ss[a-gi-z]
141+
[._]sw[a-p]
142+
143+
# Session
144+
Session.vim
145+
146+
# Temporary
147+
.netrwhist
148+
# Auto-generated tag files
149+
tags
150+
# Persistent undo
151+
[._]*.un~
152+
153+
### IntelliJ IDEA ###
154+
.idea/

powerapi/database/socket_db.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ def __init__(self, port):
4949
async def connect(self):
5050
self.queue = asyncio.Queue()
5151
# self.queue = Queue()
52-
self.server = await asyncio.start_server(self.gen_server_callback(), host='localhost', port=self.port)
52+
self.server = await asyncio.start_server(self.gen_server_callback(), host='127.0.0.1', port=self.port)
5353

5454
async def stop(self):
5555
self.server.close()

tests/acceptation/test_simple_architecture_socket_db.py

+6-9
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,6 @@
7575
from tests.mongo_utils import clean_base_db_test
7676

7777
DB_URI = "mongodb://localhost:27017/"
78-
PORT = random.randint(1000, 60000)
7978
LOG_LEVEL = logging.NOTSET
8079

8180

@@ -148,7 +147,7 @@ def check_db():
148147
'target': report['target']}) == 1
149148

150149

151-
def test_run(database, supervisor):
150+
def test_run(database, supervisor, unused_tcp_port):
152151
# Pusher
153152
output_mongodb = MongoDB(DB_URI, 'MongoDB1', 'test_result')
154153
pusher = PusherActor("pusher_mongodb", PowerModel(), output_mongodb, level_logger=LOG_LEVEL, max_size=0)
@@ -164,8 +163,7 @@ def test_run(database, supervisor):
164163
dispatcher = DispatcherActor('dispatcher', formula_factory, route_table, level_logger=LOG_LEVEL)
165164

166165
# Puller
167-
input_socket = SocketDB(PORT)
168-
print(PORT)
166+
input_socket = SocketDB(unused_tcp_port)
169167
report_filter = Filter()
170168
report_filter.filter(lambda msg: True, dispatcher)
171169
puller = PullerActor("puller_socket", input_socket, report_filter, HWPCModel(), level_logger=LOG_LEVEL, stream_mode=True, asynchrone=True)
@@ -174,12 +172,12 @@ def test_run(database, supervisor):
174172
supervisor.launch_actor(puller)
175173
time.sleep(1)
176174
json_reports = extract_json_report(10)
177-
client = ClientThread(json_reports, PORT)
175+
client = ClientThread(json_reports, unused_tcp_port)
178176
client.start()
179177
time.sleep(1)
180178
check_db()
181179

182-
def test_run_with_delay_between_message(database, supervisor):
180+
def test_run_with_delay_between_message(unused_tcp_port, database, supervisor):
183181
"""
184182
run the same test but set a delay of 1s after sendig the 5th first messages
185183
"""
@@ -198,7 +196,7 @@ def test_run_with_delay_between_message(database, supervisor):
198196
dispatcher = DispatcherActor('dispatcher', formula_factory, route_table, level_logger=LOG_LEVEL)
199197

200198
# Puller
201-
input_socket = SocketDB(PORT + 1)
199+
input_socket = SocketDB(unused_tcp_port)
202200
report_filter = Filter()
203201
report_filter.filter(lambda msg: True, dispatcher)
204202
puller = PullerActor("puller_socket", input_socket, report_filter, HWPCModel(), level_logger=LOG_LEVEL, stream_mode=True, asynchrone=True)
@@ -207,8 +205,7 @@ def test_run_with_delay_between_message(database, supervisor):
207205
supervisor.launch_actor(puller)
208206
time.sleep(1)
209207
json_reports = extract_json_report(10)
210-
client = ClientThreadDelay(json_reports, PORT + 1)
208+
client = ClientThreadDelay(json_reports, unused_tcp_port)
211209
client.start()
212210
time.sleep(2)
213211
check_db()
214-

tests/integration/database/test_socket_db.py

+6-8
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,6 @@
3737
from powerapi.database import SocketDB
3838
from powerapi.report_model import HWPCModel
3939

40-
PORT = 6789
41-
4240
def extract_json_report(n):
4341
json_file = open('tests/hwpc_reports.json', 'r')
4442
reports = json.load(json_file)
@@ -72,18 +70,18 @@ def assert_report_equals(hwpc_report, json_report):
7270

7371

7472
@pytest.fixture
75-
async def socket_db():
76-
socket_db = SocketDB(PORT)
73+
async def socket_db(unused_tcp_port):
74+
socket_db = SocketDB(unused_tcp_port)
7775
await socket_db.connect()
7876
yield socket_db
7977
await socket_db.stop()
8078

8179

8280
@pytest.mark.asyncio
83-
async def test_read_one_json_object_received_from_the_socket(socket_db):
81+
async def test_read_one_json_object_received_from_the_socket(socket_db, unused_tcp_port):
8482

8583
json_reports = extract_json_report(1)
86-
client = ClientThread(json_reports, PORT)
84+
client = ClientThread(json_reports, unused_tcp_port)
8785
client.start()
8886

8987
iterator = socket_db.iter(HWPCModel(), False)
@@ -93,9 +91,9 @@ async def test_read_one_json_object_received_from_the_socket(socket_db):
9391

9492

9593
@pytest.mark.asyncio
96-
async def test_read_two_json_object_received_from_the_socket(socket_db):
94+
async def test_read_two_json_object_received_from_the_socket(socket_db, unused_tcp_port):
9795
json_reports = extract_json_report(2)
98-
client = ClientThread(json_reports, PORT)
96+
client = ClientThread(json_reports, unused_tcp_port)
9997
client.start()
10098

10199
iterator = socket_db.iter(HWPCModel(), False)

0 commit comments

Comments
 (0)