/// <summary>
        /// Verify that <paramref name="propertyValue"/> is equal to <paramref name="expectedValue"/>.
        /// </summary>
        public static void AreEqual(object expectedValue, object propertyValue, string propertyName, string errorLocation, string customMessage = null)
        {
            InternalContract.RequireNotNull(errorLocation, nameof(errorLocation));
            InternalContract.RequireNotNull(propertyName, nameof(propertyName));
            var message = customMessage ?? $"Expected property {propertyName} ({propertyValue}) to be equal to ({expectedValue}).";

            GenericAssert <FulcrumAssertionFailedException> .AreEqual(expectedValue, propertyValue, errorLocation, message);
        }
 /// <summary>
 /// Verify that <paramref name="actualValue"/> is equal to <paramref name="expectedValue"/>.
 /// </summary>
 public static void AreEqual(object expectedValue, object actualValue, string errorLocation, string customMessage = null)
 {
     InternalContract.RequireNotNull(errorLocation, nameof(errorLocation));
     GenericAssert <FulcrumAssertionFailedException> .AreEqual(expectedValue, actualValue, errorLocation, customMessage);
 }