TST: assert_series_equal not using check_less_precision if check_datetime_compat is provided

I am referring to this part of the code:
```python
if check_exact:
        assert_numpy_array_equal(left.get_values(), right.get_values(),
                                 check_dtype=check_dtype,
                                 obj='{obj}'.format(obj=obj),)
    elif check_datetimelike_compat:
        # we want to check only if we have compat dtypes
        # e.g. integer and M|m are NOT compat, but we can simply check
        # the values in that case
        if (is_datetimelike_v_numeric(left, right) or
            is_datetimelike_v_object(left, right) or
            needs_i8_conversion(left) or
                needs_i8_conversion(right)):

            # datetimelike may have different objects (e.g. datetime.datetime
            # vs Timestamp) but will compare equal
            if not Index(left.values).equals(Index(right.values)):
                msg = ('[datetimelike_compat=True] {left} is not equal to '
                       '{right}.').format(left=left.values, right=right.values)
                raise AssertionError(msg)
        else:
            assert_numpy_array_equal(left.get_values(), right.get_values(),
                                     check_dtype=check_dtype)
   

```
#### Problem description

,

In pandas.util.testing, the assert_series_equal function does an exact check if check_datetimelike_compat is True and the actual series doesn't contain date like data (line 1264 in the source code). It doesn't care about check_less_precision in that case.

It would make more sense to do an 'almost equal' check in that case' since reaching that part of the code implies that the check_exact flag is False

Note that this is mostly an issue when using assert_frame_equal (which calls assert_series_equals) since there are situations where we want to compare date columns using check_datetimelike_compat=True and number columns with check_less_precise at the same time.

Sorry for any typo,writing this from my phone

```python
import pandas
#### Expected Output
df1 = pandas.DataFrame ({'A':[0.1],'B':['date1']})
df2 = pandas.DataFrame ({'A':[0.09999],'B':['date1']})

#this works
assert_frame_equal (df1,df2,check_exact=False,check_less_precise=3)

#this fails
assert_frame_equal (df1,df2,check_exact=False,check_less_precise=3,check_datetimelike_compat=True)
```
