Skip to content

dwomble/EDMC-PluginLib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EDMC-PluginLib

Bringing EDMC plugin development out of the dark ages.

tests

A unit testing tool for EDMC that mocks up EDMC functionality in order to run pytest unit tests, use the python debugger, and pycov test coverage analysis.

Code test coverage Debugging a plugin

Features

  • Replay journal events with customization
  • Mock (or live) HTTPS requests
  • A read and writable mock EDMC config object
  • Mock state handling
  • Mock CAPI event handling
  • A mock overlay
  • Mock localization functions

This is a work in progress, not all EDMC or tool functionality is mocked up yet and it may take a little effort to get it working with your plugin, but it does work with some quite complex plugins that use a wide range of EDMC features.

But if you want to run unit tests, replay ED logs, or run your plugin with a debugger it may be worth it.

Examples using the harness include Navl's Neutron Dancer, BGS-Tally and EDMC Mining Analytics.

utils

A Library of utilities for EDMC plugins and an EDMC headless test harness. Some utilities are drop-in ready to go, some may require some configuration, and others may need adapting to your plugin. They have comments or README's describing their functionality.

.github/workflows

Some useful GitHub workflow scripts.

release.yml

Creates a release .zip and puts it through VirusTotal and adds the result to the release notes

unit-testing.yml

Runs flake8 and pytest when code is pushed to the main branch or a PR is created for the main branch.

About

An EDMC plugin test harness and library of utilities

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages