# Path: auxi/modelling/process/materials/core.py
# class Material(NamedObject):
#     """
#     Represents a material consisting of multiple chemical compounds, having
#     the ability to do thermochemical calculations.
# 
#     :param name: A name for the material.
#     :param state_of_matter: The material's state of matter, e.g. liquid.
#     :param file_path: The location of the file containing the material's data.
#     :param description: the material's description
#     """
# 
#     def __init__(self, name, state_of_matter=StateOfMatter.unknown,
#                  property_models=None, description=None):
#         super().__init__(name, description)
# 
#         self.mstate = state_of_matter
#         """State of matter."""
# 
#         if 'alpha' in property_models:
#             self.alpha = property_models['alpha']
# 
#         if 'beta' in property_models:
#             self.beta = property_models['beta']
# 
#         if 'Cp' in property_models:
#             self.Cp = property_models['Cp']
# 
#         if 'k' in property_models:
#             self.k = property_models['k']
# 
#         if 'mu' in property_models:
#             self.mu = property_models['mu']
# 
#         if 'nu' in property_models:
#             self.nu = property_models['nu']
# 
#         if 'rho' in property_models:
#             self.rho = property_models['rho']
# 
#     def alpha(self, **state):
#         """
#         Calculate the alpha value given the material state.
# 
#         :param **state: material state
# 
#         :returns: float
#         """
# 
#         return self.k(**state) / self.rho(**state) / self.Cp(**state)
# 
#     def beta(self, **state):
#         """
#         Calculate the alpha value given the material state.
# 
#         :param **state: material state
# 
#         :returns: float
#         """
#         raise NotImplementedError()
# 
#     def Cp(self, **state):
#         """
#         Calculate the Cp value given the material state.
# 
#         :param **state: material state
# 
#         :returns: float
#         """
#         raise NotImplementedError()
# 
#     def k(self, **state):
#         """
#         Calculate the k value given the material state.
# 
#         :param **state: material state
# 
#         :returns: float
#         """
#         raise NotImplementedError()
# 
#     def mu(self, **state):
#         """
#         Calculate the mu value given the material state.
# 
#         :param **state: material state
# 
#         :returns: float
#         """
#         raise NotImplementedError()
# 
#     def nu(self, **state):
#         """
#         Calculate the nu value given the material state.
# 
#         :param **state: material state
# 
#         :returns: float
#         """
#         return self.mu(**state) / self.rho(**state)
# 
#     def rho(self, **state):
#         """
#         Calculate the rho value given the material state.
# 
#         :param **state: material state
# 
#         :returns: float
#         """
#         raise NotImplementedError()
# 
# Path: auxi/tools/materialphysicalproperties/gases.py
# def _path(relative_path):
# def _create_ds_dict(namelist):
# def _create_polynomial_model(
#     name: str,
#     symbol: str,
#     degree: int,
#     ds: DataSet,
#     dss: dict):
# def _create_air():
# def _create_argon():
# def _create_ammonia():
# def _create_carbon_dioxide():
# def _create_carbon_monoxide():
# def _create_nitrogen():
# def _create_oxygen():
# def _create_water_vapour():
#     def __init__(self):
#     def calculate(self, **state):
#         def phi(i, j, mu_i, mu_j):
#     def plot(self, xs, datasets, path, show=False):
#     def __init__(self):
#     def calculate(self, **state):
#     def plot(self, xs, datasets, path, show=False):
#     def __init__(self):
#     def calculate(self, **state):
#     def plot(self, xs, datasets, path, show=False):
# class WilkeMuTx(Model):
# class HerningZippererMuTx(Model):
# class IdealCpTx(Model):
#         T = state['T']
#         T = state['T']
#         T = state["T"]


import unittest
from auxi.modelling.process.materials.core import Material
from auxi.tools.materialphysicalproperties.gases import air_dict
#!/usr/bin/env python3
"""
This module provides testing code for classes in the chem module.
"""




__version__ = '0.3.6'
__license__ = 'LGPL v3'
__copyright__ = 'Copyright 2016, Ex Mente Technologies (Pty) Ltd'
__author__ = 'Johan Zietsman'
__credits__ = ['Johan Zietsman']
__maintainer__ = 'Johan Zietsman'
__email__ = 'johan.zietsman@ex-mente.co.za'
__status__ = 'Planning'


class MaterialTester(unittest.TestCase):
    """
    Tester for the auxi.modelling.process.materials.core.Material class.
    """

    def test_constructor(self):
        Material('Test Material', air_dict, 'Test material.')

    def test_beta(self):

# Path: auxi/modelling/process/materials/core.py
# class Material(NamedObject):
#     """
#     Represents a material consisting of multiple chemical compounds, having
#     the ability to do thermochemical calculations.
# 
#     :param name: A name for the material.
#     :param state_of_matter: The material's state of matter, e.g. liquid.
#     :param file_path: The location of the file containing the material's data.
#     :param description: the material's description
#     """
# 
#     def __init__(self, name, state_of_matter=StateOfMatter.unknown,
#                  property_models=None, description=None):
#         super().__init__(name, description)
# 
#         self.mstate = state_of_matter
#         """State of matter."""
# 
#         if 'alpha' in property_models:
#             self.alpha = property_models['alpha']
# 
#         if 'beta' in property_models:
#             self.beta = property_models['beta']
# 
#         if 'Cp' in property_models:
#             self.Cp = property_models['Cp']
# 
#         if 'k' in property_models:
#             self.k = property_models['k']
# 
#         if 'mu' in property_models:
#             self.mu = property_models['mu']
# 
#         if 'nu' in property_models:
#             self.nu = property_models['nu']
# 
#         if 'rho' in property_models:
#             self.rho = property_models['rho']
# 
#     def alpha(self, **state):
#         """
#         Calculate the alpha value given the material state.
# 
#         :param **state: material state
# 
#         :returns: float
#         """
# 
#         return self.k(**state) / self.rho(**state) / self.Cp(**state)
# 
#     def beta(self, **state):
#         """
#         Calculate the alpha value given the material state.
# 
#         :param **state: material state
# 
#         :returns: float
#         """
#         raise NotImplementedError()
# 
#     def Cp(self, **state):
#         """
#         Calculate the Cp value given the material state.
# 
#         :param **state: material state
# 
#         :returns: float
#         """
#         raise NotImplementedError()
# 
#     def k(self, **state):
#         """
#         Calculate the k value given the material state.
# 
#         :param **state: material state
# 
#         :returns: float
#         """
#         raise NotImplementedError()
# 
#     def mu(self, **state):
#         """
#         Calculate the mu value given the material state.
# 
#         :param **state: material state
# 
#         :returns: float
#         """
#         raise NotImplementedError()
# 
#     def nu(self, **state):
#         """
#         Calculate the nu value given the material state.
# 
#         :param **state: material state
# 
#         :returns: float
#         """
#         return self.mu(**state) / self.rho(**state)
# 
#     def rho(self, **state):
#         """
#         Calculate the rho value given the material state.
# 
#         :param **state: material state
# 
#         :returns: float
#         """
#         raise NotImplementedError()
# 
# Path: auxi/tools/materialphysicalproperties/gases.py
# def _path(relative_path):
# def _create_ds_dict(namelist):
# def _create_polynomial_model(
#     name: str,
#     symbol: str,
#     degree: int,
#     ds: DataSet,
#     dss: dict):
# def _create_air():
# def _create_argon():
# def _create_ammonia():
# def _create_carbon_dioxide():
# def _create_carbon_monoxide():
# def _create_nitrogen():
# def _create_oxygen():
# def _create_water_vapour():
#     def __init__(self):
#     def calculate(self, **state):
#         def phi(i, j, mu_i, mu_j):
#     def plot(self, xs, datasets, path, show=False):
#     def __init__(self):
#     def calculate(self, **state):
#     def plot(self, xs, datasets, path, show=False):
#     def __init__(self):
#     def calculate(self, **state):
#     def plot(self, xs, datasets, path, show=False):
# class WilkeMuTx(Model):
# class HerningZippererMuTx(Model):
# class IdealCpTx(Model):
#         T = state['T']
#         T = state['T']
#         T = state["T"]


# Path: auxi/modelling/process/materials/core_test.py
import unittest
from auxi.modelling.process.materials.core import Material
from auxi.tools.materialphysicalproperties.gases import air_dict

#!/usr/bin/env python3
"""
This module provides testing code for classes in the chem module.
"""




__version__ = '0.3.6'
__license__ = 'LGPL v3'
__copyright__ = 'Copyright 2016, Ex Mente Technologies (Pty) Ltd'
__author__ = 'Johan Zietsman'
__credits__ = ['Johan Zietsman']
__maintainer__ = 'Johan Zietsman'
__email__ = 'johan.zietsman@ex-mente.co.za'
__status__ = 'Planning'


class MaterialTester(unittest.TestCase):
    """
    Tester for the auxi.modelling.process.materials.core.Material class.
    """

    def test_constructor(self):
        Material('Test Material', air_dict, 'Test material.')

    def test_beta(self):

        m = Material('Test Material', air_dict, 'Test material.')