Sem descrição

JoostSijm 045cfc96cc Update readme há 4 anos atrás
src b9989f0941 Improve logging and move logfile há 4 anos atrás
tests 7582662543 Fix some false negative tests há 4 anos atrás
.gitignore 49457a811c Update gitignore há 4 anos atrás
LICENSE baaed2455a Add setup.py and license, moved some files há 4 anos atrás
Pipfile d2cda50cf6 Add missing packages há 4 anos atrás
Pipfile.lock 0fe85ed080 Improve code syntax, update piplock há 4 anos atrás
README.md 045cfc96cc Update readme há 4 anos atrás
setup.py d2cda50cf6 Add missing packages há 4 anos atrás
tox.ini 5bdd799a79 Remove python 2.7 from tox test há 4 anos atrás

README.md

Rival-Regions-Wrapper

This library will functions as an authenticator an API wrapper for interaction with Rival Regions. Use at your own risk.

Install

The following steps can be used to install the package with pip:

  • clone the repository: git clone git@github.com:jjoo914/rival_regions_wrapper.git
  • use pip to install the package: pip install rival_regions_wrapper

Alternative option:

  • run pip install git+https://github.com/jjoo914/rival_regions_wrapper#egg=rival_regions_wrapper

The package should be available globaly.

Pipenv

When you want to add the package to a Pipfile, use the folowing command:

pipenv install -e git+https://github.com/jjoo914/rival_regions_wrapper#egg=rival_regions_wrapper

Testing

This appplication supports unit tests, these are located in rival_regions_wrapper/tests/. Intall required dependancies using pipenv install --dev. After installing you should be able to test the python package with pytest. Requests are cached for quick testing using VCR.py located at rival_regions_wrapper/tests/cassettes/. If you run in problems with testing you are advised to them run again after remvong the cassettes directory.

The tests read login credentials from the following environment variables: LOGIN_METHOD, USERNAME, PASSWORD. You can set those by creating an file named .env with te following:

LOGIN_METHOD=PLACEHOLDER
USERNAME=PLACEHOLDER
PASSWORD=PLACEHOLDER

Replace PLACEHOLDER with your credentials.

Middleware

The API wrapper uses middleware to decide where how to send the request. Middlewares can also be used to write direct requests to Rival Regions.

Current middleware

LocalAuthentication

Use username, password, and login method to log in local instance of the authenticator.

RemoteAuthentication

Connect through a remote API using URL and authentication key.

Examples

Create local authentication middleware and log in with environ variables

import os
from rival_regions_wrapper import LocalAuthentication

authentication = LocalAuthentication(
  os.environ["USERNAME"],
  os.environ["PASSWORD"],
  os.environ["LOGIN_METHOD"]
)

request region page from Rival Regions

region = authentication.get('listed/upgrades/{}'.format(region_id))

Example of API wrapper to get oil current available resources from a state

from rival_regions_wrapper import apiWrapper
from rival_regions_wrapper.api_wrapper import ResourceState

api_wrapper = ApiWrapper(authentication)

state = 3382
resource = 'oil'
response = ResourceState(api_wrapper, state).info(resource)

For more examples look at the unit tests.

Contact