# Path: lcopt/data_store.py
# class LcoptStorage():
#     def __init__(self):
#     def load_config(self):
#     def refresh(self):
#     def write_default_config(self):
#     def write_config(self, config):
#     def models(self):
#     def search_indices(self):
#     def project_type(self):
#     def single_project_name(self):
#     def ecoinvent_version(self):
#     def ecoinvent_system_model(self):
#     def save_option(self):
# 
# Path: lcopt/settings.py
# ALLOWED_TYPES = [str, bool, int, float]
# class SettingsDict(object):
# class LcoptSettings(object):
#     def __init__(self, contents, write_function, **kwargs):
#     def __repr__(self):
#     def __setattr__(self, name, value):
#     def delete(self, attr):
#     def as_dict(self):
#     def __init__(self, **kwargs):
#     def as_dict(self):
#     def __repr__(self):
#     def refresh(self, **kwargs):
#     def write(self):
#     def launch_interact(self):


import pytest
from lcopt.data_store import storage
from lcopt.settings import settings




def test_load_settings():

	print(settings)
	print(settings.ecoinvent)
	settings.write()

	assert list(settings.config.keys()) == list(storage.config.keys())

	for section, content in settings.config.items():
		for k, v in content.items():
			assert str(v) == str(storage.config[section][k])

def test_change_existing_string():
	expected = '3.3'
	settings.ecoinvent.version = '3.3'
	assert settings.ecoinvent.version == expected

# Path: lcopt/data_store.py
# class LcoptStorage():
#     def __init__(self):
#     def load_config(self):
#     def refresh(self):
#     def write_default_config(self):
#     def write_config(self, config):
#     def models(self):
#     def search_indices(self):
#     def project_type(self):
#     def single_project_name(self):
#     def ecoinvent_version(self):
#     def ecoinvent_system_model(self):
#     def save_option(self):
# 
# Path: lcopt/settings.py
# ALLOWED_TYPES = [str, bool, int, float]
# class SettingsDict(object):
# class LcoptSettings(object):
#     def __init__(self, contents, write_function, **kwargs):
#     def __repr__(self):
#     def __setattr__(self, name, value):
#     def delete(self, attr):
#     def as_dict(self):
#     def __init__(self, **kwargs):
#     def as_dict(self):
#     def __repr__(self):
#     def refresh(self, **kwargs):
#     def write(self):
#     def launch_interact(self):


# Path: tests/test_settings.py
import pytest
from lcopt.data_store import storage
from lcopt.settings import settings





def test_load_settings():

	print(settings)
	print(settings.ecoinvent)
	settings.write()

	assert list(settings.config.keys()) == list(storage.config.keys())

	for section, content in settings.config.items():
		for k, v in content.items():
			assert str(v) == str(storage.config[section][k])

def test_change_existing_string():
	expected = '3.3'
	settings.ecoinvent.version = '3.3'
	assert settings.ecoinvent.version == expected

	assert storage.config['ecoinvent']['version'] == expected