コード例 #1
0
ファイル: serv.py プロジェクト: nikoloss/cellnest
def init(conf_file):
    global exporter
    #automic scan dirs
    files_list = os.listdir(path.BIZ_PATH)
    files_list = set([x[:x.rfind(".")] for x in files_list if x.endswith(".py")])
    map(__import__, ['biz.' + x for x in files_list])
    sock = context.socket(zmq.DEALER)
    sock.connect('tcp://' + conf_file)
    exporter = Exporter(sock)
    Router.register_urls(exporter)
    IOLoop.instance().set_idel_call(functools.partial(exporter.send, ['echo']))
コード例 #2
0
ファイル: napoli.py プロジェクト: gengo/napoli
 def wsgi(self, environ, start_response):
     """
     All per request initialization goes here
     """
     # initialize router
     router = Router(self.routes)
     router.route(environ['PATH_INFO'])
     # dispatch
     dispatcher = Dispatcher(Request(environ), router)
     res = dispatcher.dispatch()
     return res
コード例 #3
0
    def test_static_file(self):
        router = Router()
        router.pipe('/data')(StaticMiddleware(dir=os.getcwd()))

        @router.get()
        def index(req, res):
            res.set_data('Index')
            return res

        c = Client(router.build(), Response)
        res = c.get('/data/text.txt')
        self.assertEqual(res.data, b'Test data')
コード例 #4
0
ファイル: serv.py プロジェクト: wancy86/cellnest
def init(conf_file):
    global exporter
    #automic scan dirs
    files_list = os.listdir(path.BIZ_PATH)
    files_list = set(
        [x[:x.rfind(".")] for x in files_list if x.endswith(".py")])
    map(__import__, ['biz.' + x for x in files_list])
    sock = context.socket(zmq.DEALER)
    sock.connect('tcp://' + conf_file)
    exporter = Exporter(sock)
    Router.register_urls(exporter)
    IOLoop.instance().set_idel_call(functools.partial(exporter.send, ['echo']))
コード例 #5
0
    def test_decorators(self):
        self.middleware_called = False
        self.endpoint_called = False
        self.middleware_a_called = False
        self.endpoint_a_called = False

        router = Router()

        @router.pipe()
        def middleware(req, res, next):
            self.middleware_called = True
            return next(req, res)

        @router.pipe('/a')
        def middleware_a(req, res, next):
            self.middleware_a_called = True
            return next(req, res)

        @router.get('/a')
        def index_a(req, res):
            self.endpoint_a_called = True
            res.set_data('Index /a')
            return res

        @router.get()
        def index(req, res):
            self.endpoint_called = True
            res.set_data('Index /')
            return res

        c = Client(router.build(), Response)
        res = c.get('/')
        self.assertEqual(res.data, b'Index /')
        self.assertTrue(self.middleware_called)
        self.assertTrue(self.endpoint_called)
        self.assertFalse(self.endpoint_a_called)
        self.assertFalse(self.middleware_a_called)

        self.middleware_called = False
        self.endpoint_called = False
        self.middleware_a_called = False
        self.endpoint_a_called = False

        res = c.get('/a')
        self.assertEqual(res.data, b'Index /a')
        self.assertTrue(self.middleware_called)
        self.assertTrue(self.endpoint_a_called)
        self.assertTrue(self.middleware_a_called)
        self.assertFalse(self.endpoint_called)
コード例 #6
0
    def test_index(self):
        self.index_called = False

        def index(req, res):
            self.index_called = True
            res.set_data('Index')
            return res

        router = Router()
        router._create_endpoint(index, '/', ['GET'])

        c = Client(router.build(), Response)
        res = c.get('/')
        self.assertTrue(self.index_called)
        self.assertEqual(res.data, b'Index')
コード例 #7
0
    def test_compression(self):

        router = Router()

        router.pipe()(CompressionMiddleware())

        @router.get()
        def index(req, res):
            res.set_data('Index')
            return res

        c = Client(router.build(), Response)

        res = c.get('/', headers={'Accept-Encoding': 'gzip'})
        self.assertEqual(res.headers.get('Content-Encoding'), 'gzip')
コード例 #8
0
    def test_method(self):
        self.index_get_called = False
        self.index_post_called = False

        def index_get(req, res):
            self.index_get_called = True
            res.set_data('Index_get')
            return res

        def index_post(req, res):
            self.index_post_called = True
            res.set_data('Index_post')
            return res

        router = Router()
        router._create_endpoint(index_get, '/', ['GET'])
        router._create_endpoint(index_post, '/', ['POST'])

        c = Client(router.build(), Response)
        res = c.get('/')
        self.assertTrue(self.index_get_called)
        self.assertFalse(self.index_post_called)
        self.assertEqual(res.data, b'Index_get')

        self.index_get_called = False
        self.index_post_called = False

        res = c.post('/')
        self.assertFalse(self.index_get_called)
        self.assertTrue(self.index_post_called)
        self.assertEqual(res.data, b'Index_post')
コード例 #9
0
    def test_script_name(self):
        self.middleware_called = False
        router = Router()

        @router.pipe('/img')
        def images(req, res, next):
            self.middleware_called = True
            self.assertEqual(req.environ['SCRIPT_NAME'], '/flower/')
            return next(req, res)

        @router.get('/img/flower')
        def index(req, res):
            res.set_data('Flower')
            return res

        c = Client(router.build(), Response)

        res = c.get('/img/flower')
        self.assertEqual(res.data, b'Flower')
        self.assertTrue(self.middleware_called)
コード例 #10
0
ファイル: test_session.py プロジェクト: hakrac/wsgitools
    def test_session(self):
        self.session_id = uuid.uuid4()
        def genId(req):
            return self.session_id.hex

        router = Router()
        sessionManager = BaseSessionManager(genId)

        router.pipe()(sessionManager)

        @router.get()
        def index(req, res):
            if 'alice' in sessionManager.session:
                res.set_data(sessionManager.session['alice'])
            else:
                sessionManager.session['alice'] = 'bob'
                res.set_data('Index')
            return res
        
        c = Client(router.build(), Response)
        res = c.get('/')
        self.assertEqual(res.data, b'Index')
        res = c.get('/')
        self.assertEqual(res.data, b'bob')

        c = Client(router.build(), Response)
        self.session_id = uuid.uuid4()
        res = c.get('/')
        self.assertEqual(res.data, b'Index')
コード例 #11
0
    def test_wildcard(self):
        self.middleware_called = False
        self.endpoint_called = False
        self.endpoint_a_called = False

        def middleware(req, res, next):
            self.middleware_called = True
            return next(req, res)

        def endpoint_a(req, res):
            self.endpoint_a_called = True
            res.set_data('a')
            return res

        def endpoint(req, res):
            self.endpoint_called = True
            res.set_data('Index')
            return res

        router = Router()
        router._create_middleware(middleware, '%', ['GET'])
        router._create_endpoint(endpoint_a, '/a', ['GET'])
        router._create_endpoint(endpoint, '/', ['GET'])

        c = Client(router.build(), Response)
        res = c.get('/')
        self.assertTrue(self.middleware_called)
        self.assertTrue(self.endpoint_called)
        self.assertFalse(self.endpoint_a_called)
        self.assertEqual(res.data, b'Index')

        self.middleware_called = False
        self.endpoint_called = False
        self.endpoint_a_called = False

        c = Client(router._application, Response)
        res = c.get('/a')
        self.assertTrue(self.middleware_called)
        self.assertFalse(self.endpoint_called)
        self.assertTrue(self.endpoint_a_called)
        self.assertEqual(res.data, b'a')
コード例 #12
0
config_file = 'config.json'

if not os.path.isfile(config_file):
	raise Exception('Config file is not exists')

try:
	config = json.load(open('config.json'))
except Exception as e:
	print(e)
	exit(0)

if not config or not config['google_sheet'] or not config['router']:
	raise Exception('Config file is invalid')

now = datetime.datetime.now()
router = Router(config['router']['url'], config['router']['login'], config['router']['password'])
hosts_count = router.get_lan_hosts_count()

speed_test_result = speed_tester.get_result()

client = (f"{speed_test_result['client']['isp']} \n"
          f"{speed_test_result['client']['ip']} \n{speed_test_result['client']['country']}"
          )

server = (f"{speed_test_result['server']['sponsor']} \n{speed_test_result['server']['host']}\n"
          f"{speed_test_result['server']['name']} \n{speed_test_result['server']['country']}"
          )

google_sheet = GoogleSheet(
	config['google_sheet']['sheet_id'],
	config['google_sheet']['page']
コード例 #13
0
ファイル: tp-link.py プロジェクト: developerdost/tp-link
**************************************************
        TP-Link Wireless N Router WR841N
             Model No. TL-WR841N
**************************************************
{}
1. Execute Task             2. Reset Connection
3. Default IP Address       4. Target IP Address
5. Read Configuration       6. Reboot Router
7. Configure WAN            8. WAN Details
0. Exit/Logout
    """.format(color_heading, color_options)

    # Create an object of database module
    database = Database()
    # Create an object of router module
    router = Router('192.168.0.1', 'admin', 'admin')

    try:
        if router.login():  # login success
            # Create an database file that store device credentials
            database.config()

            check = False
            output = ''

            # create a continuous loop
            while True:
                # clear the screen
                os.system('clear')
                # print the result
                if not output == '':
コード例 #14
0
import json, csv, time, string, itertools, copy, yaml
import numpy as np
import pandas as pd
import datetime as dt
import matplotlib.pyplot as plt
from matplotlib import colors as mcolors

CONFIG_FILE_NAME = '002.01_config'
config = yaml.load(stream=file(DIR_TASK + '\\' + CONFIG_FILE_NAME +
                               '.yml', 'r'))
#yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') )

sys.path.append(DIR_LIB)

from lib.router import Router
router = Router()
print '>> Walk, Don`t Run'
# --------------------------------------------------------------------------
#STEP: modify version?

configVersion = config['version']
config['version'] = round(
    float(configVersion) +
    .1, 1) if config['options']['increment-version'] == True else configVersion

#STEP: prepare Plot
plt.xlabel('xLabel')
plt.ylabel("yLabel")

#STEP: load
sourcePath = router.getRoute(
コード例 #15
0
import json, csv, time, string, itertools, copy, yaml
import datetime as dt
import urllib

os.chdir(os.path.dirname(__file__))

CONFIG_FILE_NAME = '001.01_config'
config = yaml.load(stream=file(DIR_TASK + '\\' + CONFIG_FILE_NAME + '.yml',
                               'r'),
                   Loader=yaml.FullLoader)
#yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') )

sys.path.append(DIR_LIB)

from lib.router import Router
router = Router()
print '>> Walk, Don`t Run'


def tsToDate(miliTs):
    #convert Drawdate To Timestamp
    tss = float(str(miliTs)[:-3])
    return dt.datetime.fromtimestamp(tss).strftime('%Y-%m-%d')


# --------------------------------------------------------------------------

outputPath = router.getRoute(
    config['target']['route']) + config['target']['dir']

#com: create output folder
コード例 #16
0
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.action_chains import ActionChains
from selenium.common.exceptions import NoSuchElementException

CONFIG_FILE_NAME = '006.00_config'
config = yaml.load(stream=file(DIR_TASK + '\\' + CONFIG_FILE_NAME +
                               '.yml', 'r'))
#yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') )

sys.path.append(DIR_LIB)

from lib.router import Router
router = Router()

# --------------------------------------------------------------------------

today = dt.datetime.now().strftime("%Y-%m-%d--%H-%M")

#STEP: modify version?
configVersion = config['version']
config['version'] = round(
    float(configVersion) +
    .1, 1) if config['options']['increment-version'] == True else configVersion

sourcePathFile = router.getRoute(
    config['source']
    ['route']) + config['source']['dir'] + config['source']['file']
rawObj = open(sourcePathFile, 'r')
コード例 #17
0
import json, csv, time, string, itertools, copy, yaml
import numpy as np
import pandas as pd
import datetime as dt

import urllib2

CONFIG_FILE_NAME = '003.00_config.yml'
config = yaml.load(stream=file(DIR_TASK + '\\' + CONFIG_FILE_NAME, 'r'))
#yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') )

sys.path.append(DIR_LIB)

from lib.router import Router

router = Router()

# _____________________________________________________________________________________ INIT

#STEP: modify version?
configVersion = config['version']
config['version'] = round(
    float(configVersion) +
    .1, 1) if config['options']['increment_version'] == True else configVersion


#DEF
def getInfosAB(station_a, station_b):
    global log
    YOUR_API_KEY = config['params']['api_key']
    ORIGIN = str(station_a['coord'][1]) + ',' + str(station_a['coord'][0])
コード例 #18
0
ファイル: test_router.py プロジェクト: hakrac/wsgitools
            app.route('/<name>/' + str(i))(route)

    c = Client(app.wsgi_app, Response)
    with time_it('call route from flask', fd=fd):
        res = c.get('/hakim/30000')
        print(res.data)
        # assert res.data == b'900 route'
    
    new_mem = process.memory_info().rss 
    print(new_mem - mem)
    mem = new_mem
    


    router = Router()
    with time_it('create 60000 routes wsgitools router', fd=fd):
        for i in range(60000):
            route_desc = copy.copy(str(i) + ' route')
            @router.get(rule='/<name>/' + str(i))
            def route(req, res):
                res.set_data(route_desc)
                return res 
    

    c = Client(router.build(), Response)
    with time_it('call route from wsgitools.router', fd=fd):
        res = c.get('/hakim/30000')
        print(res.data)
        # assert res.data == b'900 route'
    
DIR_LIB = os.path.abspath(os.path.join(os.path.dirname(__file__), "../"))
DIR_TASK = os.path.dirname(os.path.abspath(__file__))

import json, csv, time, string, itertools, copy, yaml
import pyodbc
import numpy as np
import pandas as pd
import datetime as dt

config = yaml.load(stream=file(DIR_TASK + '\\config.yml', 'r'))
#yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') )

sys.path.append(DIR_LIB)

from lib.router import Router
router = Router()

# --------------------------------------------------------------------------

#STEP: modify version?

configVersion = config['version']
config['version'] = round(
    float(configVersion) +
    .1, 1) if config['options']['increment-version'] == True else configVersion

#STEP: Save dta to DB

cnxn = pyodbc.connect(
    r'Driver={SQL Server};Server=.\SQLEXPRESS;Database=qlik_medical;Trusted_Connection=yes;'
)
コード例 #20
0
import numpy as np
import pandas as pd
import datetime as dt

from os import listdir
from os.path import isfile, join
import requests

CONFIG_FILE_NAME = '006-R0_config'
config = yaml.load( stream = file( DIR_TASK + '\\' + CONFIG_FILE_NAME + '.yml', 'r'))
#yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') )

sys.path.append( DIR_LIB )

from lib.router import Router
router = Router( )

# --------------------------------------------------------------------------
today = dt.datetime.now().strftime("%Y-%m-%d--%H-%M") 

#STEP: modify version?

configVersion = config['version']
config['version'] =  round( float(configVersion) + .1, 1 ) if config['options']['increment-version'] == True else configVersion


#STEP: load file json

sourcePathFile = router.getRoute( config['secret']['route'] ) + config['secret']['dir'] + config['secret']['file']
rawObj = open( sourcePathFile , 'r')
secretFile = json.load( rawObj )
コード例 #21
0
    def test_subrouter(self):
        self.middleware_called = False
        self.endpoint_called = False
        self.middleware_a_called = False
        self.endpoint_a_called = False

        def middleware(req, res, next):
            self.middleware_called = True
            return next(req, res)

        def endpoint(req, res):
            self.endpoint_called = True
            res.set_data('Index')
            return res

        router = Router()
        router._create_middleware(middleware, '/', ['GET'])
        router._create_endpoint(endpoint, '/', ['GET'])

        def middleware_a(req, res, next):
            self.middleware_a_called = True
            return next(req, res)

        def endpoint_a(req, res):
            self.endpoint_a_called = True
            res.set_data('A')
            return res

        router_a = Router()
        router_a._create_middleware(middleware_a, '/b', ['GET'])
        router_a._create_endpoint(endpoint_a, '/b', ['GET'])
        router.mount('/a', router_a)

        with self.subTest('test / path'):
            c = Client(router.build(), Response)
            res = c.get('/')
            self.assertTrue(self.middleware_called)
            self.assertTrue(self.endpoint_called)
            self.assertFalse(self.endpoint_a_called)
            self.assertEqual(res.data, b'Index')

        self.middleware_called = False
        self.endpoint_called = False
        self.middleware_a_called = False
        self.endpoint_a_called = False

        with self.subTest('test /a path'):
            c = Client(router._application, Response)
            res = c.get('/a/b')
            self.assertTrue(self.middleware_called)
            self.assertFalse(self.endpoint_called)
            self.assertTrue(self.middleware_a_called)
            self.assertTrue(self.endpoint_a_called)
            self.assertEqual(res.data, b'A')
コード例 #22
0
import json, csv, time, string, itertools, copy, yaml, re
import pyodbc
import numpy as np
import pandas as pd
import datetime as dt
from time import clock
import threading

CONFIG_FILE = 'config_1.b.1.yml'
config = yaml.load(stream=file(DIR_TASK + CONFIG_FILE, 'r'))
#yaml.dump( config, file( DIR_TASK + CONFIG_FILE, 'w') )

sys.path.append(DIR_LIB)

from lib.router import Router
router = Router()

# ---------------------------------- INIT
print '>> Walk, Don`t Run'

#----------------------------------- STEP: modify version?

configVersion = config['version']
config['version'] = round(
    float(configVersion) +
    .1, 1) if config['options']['increment-version'] == True else configVersion

pItemsFileLimit = config['params']['itemsFileLimit']

#----------------------------------- STEP: Collect dimension tables
コード例 #23
0
import json, csv, time, string, itertools, copy, yaml
import numpy as np
import pandas as pd
import datetime as dt

import io
from os import listdir
from os.path import isfile, join

CONFIG_FILE_NAME = '001.02_config.yml'
config = yaml.load( stream = file( DIR_TASK + '\\' + CONFIG_FILE_NAME, 'r'))

sys.path.append( DIR_LIB )

from lib.router import Router
router = Router( )

# _____________________________________________________________________________________ INIT

#STEP: modify version?
configVersion = config['version']
config['version'] =  round( float(configVersion) + .1, 1 ) if config['options']['increment_version'] == True else configVersion

#STEP: output-file
outputPath =  router.getRoute( config['target']['route'] ) + config['target']['dir'] 

#COM: create output folder
if not os.path.exists( outputPath ):
  os.makedirs( outputPath )

コード例 #24
0
import json, csv, time, string, itertools, copy, yaml
import numpy as np
import pandas as pd
import datetime as dt

import math
import re

CONFIG_FILE_NAME = '010.00_config'
config = yaml.load( stream = file( DIR_TASK + '\\' + CONFIG_FILE_NAME + '.yml', 'r'))
#yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') )

sys.path.append( DIR_LIB )

from lib.router import Router
router = Router( )

# --------------------------------------------------------------------------
today = dt.datetime.now().strftime("%Y-%m-%d--%H-%M") 


#STEP: modify version?

configVersion = config['version']
config['version'] =  round( float(configVersion) + .1, 1 ) if config['options']['increment-version'] == True else configVersion


#STEP: load source files
source = config['source']['source_quotes']
fileIdx = 0
sourcePathFile = router.getRoute( source['route'] ) + source['dir'] + source['files'][fileIdx]
コード例 #25
0
import sys
import os
from os import listdir
from os.path import isfile, join

currentFullRoute = os.path.abspath(
    os.path.join(os.path.dirname(__file__), "./"))
currentDir = os.path.basename(os.getcwd())
currentFileName = os.path.basename(__file__)

libDir = os.path.abspath(os.path.join(os.path.dirname(__file__), "../"))
sys.path.append(libDir)
print libDir

from lib.router import Router
router = Router()
ROUTES = router.getRoutes()

from lib.loader import Loader
loader = Loader(currentFullRoute, ROUTES)

from lib.helper import Helper
helper = Helper()

from lib.filewriter import FileWriter
filewriter = FileWriter()

from lib.reporter import Reporter
reporter = Reporter(ROUTES)

# return to current path
コード例 #26
0
ファイル: test_session.py プロジェクト: hakrac/wsgitools
from lib.session import SessionManager, User
from lib.response import Response
from werkzeug import redirect
from lib.request import Request
from lib.router import Router
from wsgiref import simple_server

router = Router()
sessionManager = SessionManager('test')

@sessionManager.get_user
def get_user(user_id):
    user = User()
    user.id = user_id
    user.username = '******'
    user.password = '******'
    return user

@router.pipe()
def handle(next, req, res):
    try:
        return next(req, res)
    except FileNotFoundError:
        res.status_code = 404
        return res

router.pipe()(sessionManager)

@router.get('/signin')
def signin(req:Request, res: Response):
    if sessionManager.user is None:
コード例 #27
0
DIR_TASK = os.path.dirname(os.path.abspath(__file__))

import json, csv, time, string, itertools, copy, yaml
import numpy as np
import pandas as pd
import datetime as dt

CONFIG_FILE_NAME = '004.00_config'
config = yaml.load(stream=file(DIR_TASK + '\\' + CONFIG_FILE_NAME +
                               '.yml', 'r'))
#yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') )

sys.path.append(DIR_LIB)

from lib.router import Router
router = Router()
print '>> Walk, Don`t Run'
# --------------------------------------------------------------------------
#STEP: modify version?

configVersion = config['version']
config['version'] = round(
    float(configVersion) +
    .1, 1) if config['options']['increment-version'] == True else configVersion

halfFinalDate = config['params']['half-final_date']
d = dt.datetime.strptime(halfFinalDate, '%d.%m.%Y')
filePrefix = 'teams_' + d.strftime('%Y-%m-%d')

#STEP: load web-likes from half-final day
sourcePath = router.getRoute(config['source']['web-teams']
コード例 #28
0
DIR_TASK = os.path.dirname(os.path.abspath(__file__))

import json, csv, time, string, itertools, copy, yaml
import numpy as np
import pandas as pd
import datetime as dt

CONFIG_FILE_NAME = '011-R.00_config'
config = yaml.load(stream=file(DIR_TASK + '\\' + CONFIG_FILE_NAME +
                               '.yml', 'r'))
#yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') )

sys.path.append(DIR_LIB)

from lib.router import Router
router = Router()

# --------------------------------------------------------------------------
today = dt.datetime.now().strftime('%Y-%m-%d--%H-%M')


#DEF:
def getSourceFile(_sourceKey, _fileIdx):
    sourceName = config['source'][_sourceKey]
    sourcePathFile = router.getRoute(
        sourceName['route']
    ) + sourceName['dir'] + sourceName['files'][_fileIdx]
    return open(sourcePathFile, 'r')


#STEP: modify version?
コード例 #29
0
from flask import Flask
from lib.router import Router

app = Flask(__name__)

Router.run(app)