Ejemplo n.º 1
0
def test_initialize_library():
    library.initialize_library(None)
    assert os.environ["DATA_LIBRARY"]

    _ = os.environ.pop("DATA_LIBRARY")
    library.initialize_library(pytest.library)
    assert os.environ["DATA_LIBRARY"] == pytest.library
Ejemplo n.º 2
0
    def __init__(self, config, library_path=None, weather=None):
        """
        Creates and instance of ProjectManager.

        Parameters
        ----------
        config : dict
            Project configuration.
        library_path: str, default: None
            The absolute path to the project library.
        weather : np.ndarray
            Site weather timeseries.
        """

        initialize_library(library_path)
        config = deepcopy(config)
        config = extract_library_data(
            config,
            additional_keys=[
                *config.get("design_phases", []),
                *config.get("install_phases", []),
            ],
        )
        self.config = self.resolve_project_capacity(config)
        self.weather = self.transform_weather_input(weather)

        self.phase_starts = {}
        self.phase_times = {}
        self.phase_costs = {}
        self._output_logs = []
        self._phases = {}

        self.design_results = {}
        self.detailed_outputs = {}
Ejemplo n.º 3
0
def pytest_configure():
    """Creates the default library for pytest testing suite and initializes it
    when required.
    """

    test_dir = os.path.split(os.path.abspath(__file__))[0]
    pytest.library = os.path.join(test_dir, "data", "library")
    initialize_library(pytest.library)
Ejemplo n.º 4
0
    def initialize_library(self, config, **kwargs):
        """
        Initializes the library if a path is given.

        Parameters
        ----------
        config : dict
            Configuration dictionary.
        library_path : str
            Path to the data library.
        """

        initialize_library(kwargs.get("library_path", None))
        return extract_library_data(config)
Ejemplo n.º 5
0
__copyright__ = "Copyright 2019, National Renewable Energy Laboratory"
__maintainer__ = "Jake Nunemaker"
__email__ = "*****@*****.**"

from copy import deepcopy

import numpy as np
import pandas as pd
import pytest

from wisdem.test.test_orbit.data import test_weather
from wisdem.orbit.library import initialize_library, extract_library_specs
from wisdem.orbit.core._defaults import process_times as pt
from wisdem.orbit.phases.install import TurbineInstallation

initialize_library(pytest.library)
config_wtiv = extract_library_specs("config", "turbine_install_wtiv")
config_wtiv_feeder = extract_library_specs("config", "turbine_install_feeder")
config_wtiv_multi_feeder = deepcopy(config_wtiv_feeder)
config_wtiv_multi_feeder["num_feeders"] = 2


@pytest.mark.parametrize(
    "config",
    (config_wtiv, config_wtiv_feeder, config_wtiv_multi_feeder),
    ids=["wtiv_only", "single_feeder", "multi_feeder"],
)
def test_simulation_setup(config):

    sim = TurbineInstallation(config)
    assert sim.config == config
Ejemplo n.º 6
0
def test_extract_library_specs_fail():
    library.initialize_library(pytest.library)
    with pytest.raises(LibraryItemNotFoundError):
        library.extract_library_specs("turbine", "unknown.yaml")