# Path: pygeoid/simple/prism.py
# def _limits_sum(function):
#     def wraper(self, x, y, z):
# def _radius(x, y, z):
#     def __init__(self, bounds, density=1.0):
#     def potential(self, x, y, z):
#     def gx(self, x, y, z):
#     def gy(self, x, y, z):
#     def gz(self, x, y, z):
#     def gxx(self, x, y, z):
#     def gyy(self, x, y, z):
#     def gzz(self, x, y, z):
#     def gxz(self, x, y, z):
#     def gyz(self, x, y, z):
#     def gxy(self, x, y, z):
# class Prism(ForwardModel):


import pytest
import numpy as np
from pygeoid.simple import prism



def test_bounds():
    bounds = (0, 100, 0, 100, 0, 100)
    density = 2670
    p = prism.Prism(bounds, density=density)
    with pytest.raises(ValueError):
        p.gxx(50, 50, 50)
    with pytest.raises(ValueError):
        p.gxx(100, 100, 0)


def test_gxx_gyy_gzz():

    bounds = (0, 100, 0, 100, 0, 100)
    density = 2670

# Path: pygeoid/simple/prism.py
# def _limits_sum(function):
#     def wraper(self, x, y, z):
# def _radius(x, y, z):
#     def __init__(self, bounds, density=1.0):
#     def potential(self, x, y, z):
#     def gx(self, x, y, z):
#     def gy(self, x, y, z):
#     def gz(self, x, y, z):
#     def gxx(self, x, y, z):
#     def gyy(self, x, y, z):
#     def gzz(self, x, y, z):
#     def gxz(self, x, y, z):
#     def gyz(self, x, y, z):
#     def gxy(self, x, y, z):
# class Prism(ForwardModel):


# Path: pygeoid/simple/test/test_prism.py
import pytest
import numpy as np
from pygeoid.simple import prism




def test_bounds():
    bounds = (0, 100, 0, 100, 0, 100)
    density = 2670
    p = prism.Prism(bounds, density=density)
    with pytest.raises(ValueError):
        p.gxx(50, 50, 50)
    with pytest.raises(ValueError):
        p.gxx(100, 100, 0)


def test_gxx_gyy_gzz():

    bounds = (0, 100, 0, 100, 0, 100)
    density = 2670

    p = prism.Prism(bounds, density=density)