added fake_addressGenerator module

This commit is contained in:
navjot 2021-04-02 01:51:10 +05:30
parent e333b26588
commit b7d68db7f2
No known key found for this signature in database
GPG Key ID: 9EE70AFD71357F1C
3 changed files with 65 additions and 3 deletions

View File

@ -3,7 +3,8 @@ import shutil
import tempfile
from telenium.tests import TeleniumTestCase
from threads import addressGenerator, sqlThread
from threads import sqlThread
_files = (

View File

@ -0,0 +1,60 @@
"""
A thread for creating addresses
"""
import queues
import state
from bmconfigparser import BMConfigParser
from network.threads import StoppableThread
fake_addresses = [
'BM-2cXDconV3bk6nPwWgBwN7wXaqZoT1bEzGv',
'BM-2cTWjUVedYftZJbnZfs7MWts92v1R35Try',
'BM-2cV1UN3er2YVQBcmJaaeYMXvpwBVokJNTo',
'BM-2cWVkWk3TyKUscdcn9E7s9hrwpv2ZsBBog',
'BM-2cW2a5R1KidMGNByqPKn6nJDDnHtazoere'
]
class FakeAddressGenerator(StoppableThread):
"""A thread for creating fake addresses"""
name = "addressGenerator"
def stopThread(self):
try:
queues.addressGeneratorQueue.put(("stopThread", "data"))
except:
pass
super(addressGenerator, self).stopThread()
def run(self):
"""
Process the requests for addresses generation
from `.queues.addressGeneratorQueue`
"""
while state.shutdown == 0:
queueValue = queues.addressGeneratorQueue.get()
streamNumber = 1
try:
if len(BMConfigParser().addresses()) > 0:
address = fake_addresses[len(BMConfigParser().addresses())]
else:
address = fake_addresses[0]
label = queueValue[3]
BMConfigParser().add_section(address)
BMConfigParser().set(address, 'label', label)
BMConfigParser().set(address, 'enabled', 'true')
BMConfigParser().set(
address, 'privencryptionkey', '5KUayt1aPSsNWsxMJnk27kv79wfRE3cWVPYLazyLQc752bXfQP3')
BMConfigParser().save()
queues.UISignalQueue.put((
'updateStatusBar', ""
))
queues.UISignalQueue.put(('writeNewAddressToTable', (
label, address, streamNumber)))
queues.addressGeneratorQueue.task_done()
except IndexError:
self.logger.error(
'Program error: you can only create 5 fake addresses')

View File

@ -1,12 +1,13 @@
"""This module is for thread start."""
import state
from bitmessagekivy.mpybit import NavigateApp
from threads import addressGenerator, sqlThread
from fake_addressGenerator import FakeAddressGenerator
from threads import sqlThread
def main():
if state.enableObjProc:
# Start the address generation thread
addressGeneratorThread = addressGenerator()
addressGeneratorThread = FakeAddressGenerator()
# close the main program even if there are threads left
addressGeneratorThread.daemon = True
addressGeneratorThread.start()