# 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


from collections import OrderedDict
from copy import deepcopy
from raccoon.utils import assert_series_equal
import pytest
import raccoon as rc
    compare = ('a', 100, 99)
    assert srs.select_index(compare, 'value') == []

    compare = (None, None, None)
    assert srs.select_index(compare) == [True] * 6

    srs = rc.Series([1, 2, 3, 4, 5, 6])
    assert srs.select_index(3) == [False, False, False, True, False, False]
    assert srs.select_index(3, 'value') == [3]


def test_isin():
    srs = rc.Series([1, 2, 3, 4, 5])

    assert srs.isin([2, 3, 4]) == [False, True, True, True, False]
    assert srs.isin([3]) == [False, False, True, False, False]
    assert srs.isin([6, 7]) == [False, False, False, False, False]


def test_reset_index():
    # no index defined
    srs = rc.Series([4, 5, 6])
    srs.reset_index()
    expected = rc.Series([4, 5, 6])
    assert_series_equal(srs, expected)

    # with index and index name defined
    srs = rc.Series([1, 2, 3], index=['x', 'y', 'z'], index_name='jelo')
    srs.reset_index()
    expected = rc.Series([1, 2, 3], [0, 1, 2], sort=False)

# 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_series.py
from collections import OrderedDict
from copy import deepcopy
from raccoon.utils import assert_series_equal
import pytest
import raccoon as rc

    compare = ('a', 100, 99)
    assert srs.select_index(compare, 'value') == []

    compare = (None, None, None)
    assert srs.select_index(compare) == [True] * 6

    srs = rc.Series([1, 2, 3, 4, 5, 6])
    assert srs.select_index(3) == [False, False, False, True, False, False]
    assert srs.select_index(3, 'value') == [3]


def test_isin():
    srs = rc.Series([1, 2, 3, 4, 5])

    assert srs.isin([2, 3, 4]) == [False, True, True, True, False]
    assert srs.isin([3]) == [False, False, True, False, False]
    assert srs.isin([6, 7]) == [False, False, False, False, False]


def test_reset_index():
    # no index defined
    srs = rc.Series([4, 5, 6])
    srs.reset_index()
    expected = rc.Series([4, 5, 6])
    assert_series_equal(srs, expected)

    # with index and index name defined
    srs = rc.Series([1, 2, 3], index=['x', 'y', 'z'], index_name='jelo')
    srs.reset_index()
    expected = rc.Series([1, 2, 3], [0, 1, 2], sort=False)

    assert_series_equal(srs, expected)