Should assert_frame_equal allow for a 'None' diff when there is actually a difference?
#### Code Sample, a copy-pastable example if possible

From this module used in dataframes' comparison [here](https://github.com/pandas-dev/pandas/blob/master/pandas/util/testing.py#L829).

#### Problem description

First of all, great job, I am excited to be using Pandas and thanks for everything! :)

While asserting for dataframe equality in PyTest using PyCharm I get a message that some values are different (100.0%) but the diff is None (diff = None). This is rather confusing and since there is no obvious difference between these values I struggle to find it. 

#### Expected Output
If diff is none, I would expect for `assert_frame_equal` method to not throw an exception and return true. If the assertion is false and an exception is being raised I would expect it to always have some diff to show. If for any reason, having a "diff" is not feasible, I would expect this to be injected in the output message.

#### Output of ``pd.show_versions()``

<details>
Latest
</details>
