# Path: raccoon/utils.py
# def assert_series_equal(left, right, data_function=None, data_args=None):
#     """
#     For unit testing equality of two Series.
# 
#     :param left: first Series
#     :param right: second Series
#     :param data_function: if provided will use this function to assert compare the df.data
#     :param data_args: arguments to pass to the data_function
#     :return: nothing
#     """
#     assert type(left) == type(right)
#     if data_function:
#         data_args = {} if not data_args else data_args
#         data_function(left.data, right.data, **data_args)
#     else:
#         assert left.data == right.data
#     assert left.index == right.index
#     assert left.data_name == right.data_name
#     assert left.index_name == right.index_name
#     assert left.sort == right.sort
#     if isinstance(left, rc.ViewSeries):
#         assert left.offset == right.offset
#     if isinstance(left, rc.Series):
#         assert left.dropin == right.dropin


import pytest
import raccoon as rc
from raccoon.utils import assert_series_equal
        actual.get(100)

    with pytest.raises(ValueError):
        actual.get(12)


def test_get_rows():
    srs = rc.Series([1, 2, 3, 4], index=[10, 11, 12, 99], index_name='start_10', sort=False)

    expected = rc.Series([2, 3], index=[11, 12], index_name='start_10', sort=False)
    actual = srs.get([11, 12])
    assert_series_equal(actual, expected)

    # test with boolean list
    actual = srs.get([False, True, True, False])
    assert_series_equal(actual, expected)

    # index out of order
    expected = rc.Series([4, 1], index=[99, 10], index_name='start_10', sort=False)
    actual = srs.get([99, 10])
    assert_series_equal(actual, expected)

    # get as a list
    assert srs.get([11, 12], as_list=True) == [2, 3]

    # get as a list
    assert srs.get([False, True, True, False], as_list=True) == [2, 3]

    # items not in index raise errors
    with pytest.raises(ValueError):

# Path: raccoon/utils.py
# def assert_series_equal(left, right, data_function=None, data_args=None):
#     """
#     For unit testing equality of two Series.
# 
#     :param left: first Series
#     :param right: second Series
#     :param data_function: if provided will use this function to assert compare the df.data
#     :param data_args: arguments to pass to the data_function
#     :return: nothing
#     """
#     assert type(left) == type(right)
#     if data_function:
#         data_args = {} if not data_args else data_args
#         data_function(left.data, right.data, **data_args)
#     else:
#         assert left.data == right.data
#     assert left.index == right.index
#     assert left.data_name == right.data_name
#     assert left.index_name == right.index_name
#     assert left.sort == right.sort
#     if isinstance(left, rc.ViewSeries):
#         assert left.offset == right.offset
#     if isinstance(left, rc.Series):
#         assert left.dropin == right.dropin


# Path: tests/test_series/test_get.py
import pytest
import raccoon as rc
from raccoon.utils import assert_series_equal

        actual.get(100)

    with pytest.raises(ValueError):
        actual.get(12)


def test_get_rows():
    srs = rc.Series([1, 2, 3, 4], index=[10, 11, 12, 99], index_name='start_10', sort=False)

    expected = rc.Series([2, 3], index=[11, 12], index_name='start_10', sort=False)
    actual = srs.get([11, 12])
    assert_series_equal(actual, expected)

    # test with boolean list
    actual = srs.get([False, True, True, False])
    assert_series_equal(actual, expected)

    # index out of order
    expected = rc.Series([4, 1], index=[99, 10], index_name='start_10', sort=False)
    actual = srs.get([99, 10])
    assert_series_equal(actual, expected)

    # get as a list
    assert srs.get([11, 12], as_list=True) == [2, 3]

    # get as a list
    assert srs.get([False, True, True, False], as_list=True) == [2, 3]

    # items not in index raise errors
    with pytest.raises(ValueError):

        srs.get([11, 88], as_list=True)