# Path: converge/framework/datastore.py
# class Datastore(object):
#         class NotFound(KeyError):
#     def __new__(cls, *args):
#     def __init__(self, name, *fields):
#     def clear_all():
#     def clear(self):
#     def find(self, **kwargs):
#     def create_with_key(self, key, **kwargs):
#     def create(self, **kwargs):
#     def read(self, key):
#     def update(self, key, **kwargs):
#     def delete(self, key):
# 
# Path: converge/framework/scenario.py
# def list_all(directory):
#     def load_all(cls, directory):
#     def __init__(self, name, path):
#     def __call__(self, _event_loop, **global_env):
# class Scenario(object):


import functools
import logging
import unittest
import converge
import converge.processes
from converge.framework import datastore
from converge.framework import scenario
#!/usr/bin/env python





def with_scenarios(TestCase):
    loader = unittest.defaultTestLoader

    def create_test_func(generic_test, params):
        @functools.wraps(generic_test)
        def test_func(testcase, *args, **kwargs):
            for key, value in params.items():
                setattr(testcase, key, value)
            return generic_test(testcase, *args, **kwargs)

        return test_func

    for test_name in loader.getTestCaseNames(TestCase):
        base_test = getattr(TestCase, test_name)


# Path: converge/framework/datastore.py
# class Datastore(object):
#         class NotFound(KeyError):
#     def __new__(cls, *args):
#     def __init__(self, name, *fields):
#     def clear_all():
#     def clear(self):
#     def find(self, **kwargs):
#     def create_with_key(self, key, **kwargs):
#     def create(self, **kwargs):
#     def read(self, key):
#     def update(self, key, **kwargs):
#     def delete(self, key):
# 
# Path: converge/framework/scenario.py
# def list_all(directory):
#     def load_all(cls, directory):
#     def __init__(self, name, path):
#     def __call__(self, _event_loop, **global_env):
# class Scenario(object):


# Path: test_converge.py
import functools
import logging
import unittest
import converge
import converge.processes
from converge.framework import datastore
from converge.framework import scenario

#!/usr/bin/env python





def with_scenarios(TestCase):
    loader = unittest.defaultTestLoader

    def create_test_func(generic_test, params):
        @functools.wraps(generic_test)
        def test_func(testcase, *args, **kwargs):
            for key, value in params.items():
                setattr(testcase, key, value)
            return generic_test(testcase, *args, **kwargs)

        return test_func

    for test_name in loader.getTestCaseNames(TestCase):
        base_test = getattr(TestCase, test_name)


        for scenario in getattr(TestCase, 'scenarios', []):