Repository: great-expectations/great_expectations

Issue:
Use cleaner solution for non-truncating division in python 2
Prefer `from __future__ import division` to `1.*x/y`


Discussion:
Done inline during improve_partitions push.

Resolving patch:
diff --git a/great_expectations/core/expectation_validation_result.py b/great_expectations/core/expectation_validation_result.py
--- a/great_expectations/core/expectation_validation_result.py
+++ b/great_expectations/core/expectation_validation_result.py
@@ -79,6 +79,16 @@ def __eq__(self, other):
             # Delegate comparison to the other instance's __eq__.
             return NotImplemented
         try:
+            if self.result and other.result:
+                common_keys = set(self.result.keys()) & other.result.keys()
+                result_dict = self.to_json_dict()["result"]
+                other_result_dict = other.to_json_dict()["result"]
+                contents_equal = all(
+                    [result_dict[k] == other_result_dict[k] for k in common_keys]
+                )
+            else:
+                contents_equal = False
+
             return all(
                 (
                     self.success == other.success,
@@ -95,8 +105,7 @@ def __eq__(self, other):
                     # Result is a dictionary allowed to have nested dictionaries that are still of complex types (e.g.
                     # numpy) consequently, series' comparison can persist. Wrapping in all() ensures comparison is
                     # handled appropriately.
-                    (self.result is None and other.result is None)
-                    or (all(self.result) == all(other.result)),
+                    not (self.result or other.result) or contents_equal,
                     self.meta == other.meta,
                     self.exception_info == other.exception_info,
                 )


Test patch:
diff --git a/tests/data_asset/test_data_asset_internals.py b/tests/data_asset/test_data_asset_internals.py
--- a/tests/data_asset/test_data_asset_internals.py
+++ b/tests/data_asset/test_data_asset_internals.py
@@ -285,20 +285,27 @@ def expect_second_value_to_be(
         result={
             "observed_value": 3,
             "element_count": 5,
-            "missing_count": 0,
-            "missing_percent": 0.0,
+            "missing_count": None,
+            "missing_percent": None,
         },
         success=False,
+        meta={},
+        expectation_config=None,
+        exception_info={
+            "raised_exception": False,
+            "exception_traceback": None,
+            "exception_message": None,
+        },
     )
 
     assert asset.test_column_aggregate_expectation_function(
         expect_second_value_to_be, column="x", value=3, include_config=False
     ) == ExpectationValidationResult(
         result={
-            "observed_value": 3.0,
+            "observed_value": 3,
             "element_count": 5,
-            "missing_count": 0,
-            "missing_percent": 0.0,
+            "missing_count": None,
+            "missing_percent": None,
         },
         success=True,
     )
diff --git a/tests/data_asset/test_expectation_decorators.py b/tests/data_asset/test_expectation_decorators.py
--- a/tests/data_asset/test_expectation_decorators.py
+++ b/tests/data_asset/test_expectation_decorators.py
@@ -181,8 +181,9 @@ def expectation_that_crashes_on_sixes(self, column):
             "unexpected_count": 0,
             "unexpected_index_list": [],
             "unexpected_list": [],
-            "unexpected_percent": 0.0,
+            "unexpected_percent": None,
             "unexpected_percent_nonmissing": None,
+            "unexpected_percent_total": None,
         },
         success=True,
     )
@@ -222,8 +223,8 @@ def expectation_that_crashes_on_sixes(self, column):
             "unexpected_count": 2,
             "unexpected_index_list": [5, 6],
             "unexpected_list": [2, 4],
-            "unexpected_percent": 20.0,
-            "unexpected_percent_nonmissing": (2 / 7 * 100),
+            "unexpected_percent": ((2.0 / 7) * 100),
+            "unexpected_percent_nonmissing": ((2.0 / 7) * 100),
         },
         success=False,
     )
@@ -335,10 +336,10 @@ def expect_column_median_to_be_odd(self, column):
 
     assert df.expect_column_median_to_be_odd("all_odd") == ExpectationValidationResult(
         result={
-            "observed_value": 5,
+            "observed_value": 5.0,
             "element_count": 5,
-            "missing_count": 0,
-            "missing_percent": 0,
+            "missing_count": None,
+            "missing_percent": None,
         },
         success=True,
     )
@@ -347,8 +348,8 @@ def expect_column_median_to_be_odd(self, column):
         result={
             "observed_value": 6,
             "element_count": 5,
-            "missing_count": 0,
-            "missing_percent": 0,
+            "missing_count": None,
+            "missing_percent": None,
         },
         success=False,
     )
@@ -357,10 +358,10 @@ def expect_column_median_to_be_odd(self, column):
         "all_even", result_format="SUMMARY"
     ) == ExpectationValidationResult(
         result={
-            "observed_value": 6,
+            "observed_value": 6.0,
             "element_count": 5,
-            "missing_count": 0,
-            "missing_percent": 0,
+            "missing_count": None,
+            "missing_percent": None,
         },
         success=False,
     )
@@ -378,10 +379,10 @@ def expect_column_median_to_be_odd(self, column):
         "all_even", result_format="BASIC"
     ) == ExpectationValidationResult(
         result={
-            "observed_value": 6,
+            "observed_value": 6.0,
             "element_count": 5,
-            "missing_count": 0,
-            "missing_percent": 0,
+            "missing_count": None,
+            "missing_percent": None,
         },
         success=False,
     )
@@ -518,7 +519,7 @@ def expect_column_pair_values_to_be_different(
             "missing_count": 2,
             "unexpected_count": 3,
             "missing_percent": 40.0,
-            "unexpected_percent": 60.0,
+            "unexpected_percent": 100.0,
             "unexpected_percent_nonmissing": 100.0,
             "unexpected_list": [(1, 1.0), (3, 3.0), (5, 5.0)],
             "unexpected_index_list": [0, 1, 2],
diff --git a/tests/data_asset/test_filedata_asset.py b/tests/data_asset/test_filedata_asset.py
--- a/tests/data_asset/test_filedata_asset.py
+++ b/tests/data_asset/test_filedata_asset.py
@@ -155,12 +155,13 @@ def test_file_format_map_output():
     expected_result = ExpectationValidationResult(
         success=None,
         result={
-            "element_count": 11,
-            "missing_count": 11,
-            "missing_percent": 100.0,
+            "element_count": 0,
+            "missing_count": 0,
+            "missing_percent": None,
             "unexpected_count": 0,
-            "unexpected_percent": 0,
+            "unexpected_percent": None,
             "unexpected_percent_nonmissing": None,
+            "unexpected_percent_total": None,
             "partial_unexpected_list": [],
         },
     )
@@ -181,10 +182,11 @@ def test_file_format_map_output():
         result={
             "element_count": 9,
             "missing_count": 2,
-            "missing_percent": (2 / 9 * 100),
+            "missing_percent": ((2.0 / 9) * 100),
             "unexpected_count": 3,
-            "unexpected_percent": (3 / 9 * 100),
-            "unexpected_percent_nonmissing": (3 / 7 * 100),
+            "unexpected_percent": ((3.0 / 7) * 100),
+            "unexpected_percent_total": ((3.0 / 9) * 100),
+            "unexpected_percent_nonmissing": ((3.0 / 7) * 100),
             "partial_unexpected_list": ["A,C,1\n", "B,1,4\n", "A,1,4\n"],
             "partial_unexpected_counts": [
                 {"value": "A,1,4\n", "count": 1},
diff --git a/tests/dataset/test_pandas_dataset.py b/tests/dataset/test_pandas_dataset.py
--- a/tests/dataset/test_pandas_dataset.py
+++ b/tests/dataset/test_pandas_dataset.py
@@ -194,7 +194,7 @@ def test_expectation_decorator_summary_mode():
                     {"value": 7.0, "count": 2},
                     {"value": 6.0, "count": 1},
                 ],
-                "unexpected_percent": 30.0,
+                "unexpected_percent": 37.5,
                 "unexpected_percent_nonmissing": 37.5,
                 "partial_unexpected_list": [6.0, 7.0, 7.0],
                 "partial_unexpected_index_list": [5, 6, 7],
@@ -238,10 +238,10 @@ def test_positional_arguments():
         {
             "success": True,
             "result": {
-                "observed_value": 5,
+                "observed_value": 5.0,
                 "element_count": 5,
-                "missing_count": 0,
-                "missing_percent": 0.0,
+                "missing_count": None,
+                "missing_percent": None,
             },
         }
     )
@@ -359,10 +359,10 @@ def test_result_format_argument_in_decorators():
         {
             "success": True,
             "result": {
-                "observed_value": 5,
+                "observed_value": 5.0,
                 "element_count": 5,
-                "missing_count": 0,
-                "missing_percent": 0.0,
+                "missing_count": None,
+                "missing_percent": None,
             },
         }
     )
@@ -377,8 +377,8 @@ def test_result_format_argument_in_decorators():
                 "missing_count": 0,
                 "missing_percent": 0.0,
                 "partial_unexpected_counts": [
-                    {"count": 1, "value": 8},
                     {"count": 1, "value": 10},
+                    {"count": 1, "value": 8},
                 ],
                 "partial_unexpected_index_list": [3, 4],
                 "partial_unexpected_list": [8, 10],
diff --git a/tests/dataset/test_pandas_dataset_conditionals.py b/tests/dataset/test_pandas_dataset_conditionals.py
--- a/tests/dataset/test_pandas_dataset_conditionals.py
+++ b/tests/dataset/test_pandas_dataset_conditionals.py
@@ -57,7 +57,7 @@ def test_expectation_decorator_summary_mode():
                     {"value": 7.0, "count": 2},
                     {"value": 6.0, "count": 1},
                 ],
-                "unexpected_percent": 30.0,
+                "unexpected_percent": 37.5,
                 "unexpected_percent_nonmissing": 37.5,
                 "partial_unexpected_list": [6.0, 7.0, 7.0],
                 "partial_unexpected_index_list": [5, 6, 7],
@@ -132,10 +132,10 @@ def test_positional_arguments():
         {
             "success": True,
             "result": {
-                "observed_value": 5,
+                "observed_value": 5.0,
                 "element_count": 5,
-                "missing_count": 0,
-                "missing_percent": 0.0,
+                "missing_count": None,
+                "missing_percent": None,
             },
         }
     )
@@ -247,10 +247,10 @@ def test_result_format_argument_in_decorators():
         {
             "success": True,
             "result": {
-                "observed_value": 5,
+                "observed_value": 5.0,
                 "element_count": 5,
-                "missing_count": 0,
-                "missing_percent": 0.0,
+                "missing_count": None,
+                "missing_percent": None,
             },
         }
     )
@@ -278,8 +278,8 @@ def test_result_format_argument_in_decorators():
                 "missing_count": 0,
                 "missing_percent": 0.0,
                 "partial_unexpected_counts": [
-                    {"count": 1, "value": 8},
                     {"count": 1, "value": 10},
+                    {"count": 1, "value": 8},
                 ],
                 "partial_unexpected_index_list": [3, 4],
                 "partial_unexpected_list": [8, 10],
diff --git a/tests/expectations/core/test_expect_column_value_z_scores_to_be_less_than.py b/tests/expectations/core/test_expect_column_value_z_scores_to_be_less_than.py
--- a/tests/expectations/core/test_expect_column_value_z_scores_to_be_less_than.py
+++ b/tests/expectations/core/test_expect_column_value_z_scores_to_be_less_than.py
@@ -16,7 +16,7 @@
 from great_expectations.validator.validator import Validator
 
 
-def test_expect_column_value_z_scores_to_be_less_than_impl():
+def test_pandas_expect_column_value_z_scores_to_be_less_than_impl():
     df = pd.DataFrame({"a": [1, 5, 22, 3, 5, 10]})
     expectationConfiguration = ExpectationConfiguration(
         expectation_type="expect_column_value_z_scores_to_be_less_than",
@@ -32,6 +32,32 @@ def test_expect_column_value_z_scores_to_be_less_than_impl():
     result = expectation.validate(Validator(execution_engine=engine))
     assert result == ExpectationValidationResult(
         success=True,
+        expectation_config={
+            "expectation_type": "expect_column_value_z_scores_to_be_less_than",
+            "kwargs": {
+                "column": "a",
+                "mostly": 0.9,
+                "threshold": 4,
+                "double_sided": True,
+            },
+            "meta": {},
+        },
+        result={
+            "element_count": 6,
+            "unexpected_count": 0,
+            "unexpected_percent": 0.0,
+            "partial_unexpected_list": [],
+            "missing_count": 0,
+            "missing_percent": 0.0,
+            "unexpected_percent_total": 0.0,
+            "unexpected_percent_nonmissing": 0.0,
+        },
+        exception_info={
+            "raised_exception": False,
+            "exception_traceback": None,
+            "exception_message": None,
+        },
+        meta={},
     )
 
 
@@ -61,6 +87,32 @@ def test_sa_expect_column_value_z_scores_to_be_less_than_impl(postgresql_engine)
     result = expectation.validate(Validator(execution_engine=engine))
     assert result == ExpectationValidationResult(
         success=True,
+        expectation_config={
+            "expectation_type": "expect_column_value_z_scores_to_be_less_than",
+            "kwargs": {
+                "column": "a",
+                "mostly": 0.9,
+                "threshold": 4,
+                "double_sided": True,
+            },
+            "meta": {},
+        },
+        result={
+            "element_count": 6,
+            "unexpected_count": 0,
+            "unexpected_percent": 0.0,
+            "partial_unexpected_list": [],
+            "missing_count": 0,
+            "missing_percent": 0.0,
+            "unexpected_percent_total": 0.0,
+            "unexpected_percent_nonmissing": 0.0,
+        },
+        exception_info={
+            "raised_exception": False,
+            "exception_traceback": None,
+            "exception_message": None,
+        },
+        meta={},
     )
 
 
@@ -92,4 +144,30 @@ def test_spark_expect_column_value_z_scores_to_be_less_than_impl(
     result = expectation.validate(Validator(execution_engine=engine))
     assert result == ExpectationValidationResult(
         success=True,
+        expectation_config={
+            "expectation_type": "expect_column_value_z_scores_to_be_less_than",
+            "kwargs": {
+                "column": "a",
+                "mostly": 0.9,
+                "threshold": 4,
+                "double_sided": True,
+            },
+            "meta": {},
+        },
+        result={
+            "element_count": 6,
+            "unexpected_count": 0,
+            "unexpected_percent": 0.0,
+            "partial_unexpected_list": [],
+            "missing_count": 0,
+            "missing_percent": 0.0,
+            "unexpected_percent_total": 0.0,
+            "unexpected_percent_nonmissing": 0.0,
+        },
+        exception_info={
+            "raised_exception": False,
+            "exception_traceback": None,
+            "exception_message": None,
+        },
+        meta={},
     )
diff --git a/tests/profile/fixtures/expected_evrs_BasicSuiteBuilderProfiler_on_titanic_demo_mode.json b/tests/profile/fixtures/expected_evrs_BasicSuiteBuilderProfiler_on_titanic_demo_mode.json
--- a/tests/profile/fixtures/expected_evrs_BasicSuiteBuilderProfiler_on_titanic_demo_mode.json
+++ b/tests/profile/fixtures/expected_evrs_BasicSuiteBuilderProfiler_on_titanic_demo_mode.json
@@ -1,74 +1,57 @@
 {
-  "meta": {
-    "great_expectations_version": "0.9.11+19.g7f67c99e.dirty",
-    "expectation_suite_name": "default",
-    "run_id": "20200411T005539.492963Z",
-    "batch_kwargs": {
-      "ge_batch_id": "29669d54-7b8f-11ea-9d75-acde48001122"
-    },
-    "expectation_suite_meta": {},
-    "batch_markers": {},
-    "batch_parameters": {}
-  },
+  "evaluation_parameters": {},
   "statistics": {
     "evaluated_expectations": 32,
     "successful_expectations": 30,
     "unsuccessful_expectations": 2,
     "success_percent": 93.75
   },
-  "evaluation_parameters": {},
-  "success": false,
   "results": [
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_table_row_count_to_be_between",
         "kwargs": {
           "min_value": 1181,
           "max_value": 1444,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_table_row_count_to_be_between"
+        }
       },
-      "result": {
-        "observed_value": 1313
-      }
-    },
-    {
-      "meta": {},
-      "success": true,
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
         "exception_traceback": null
       },
+      "meta": {},
+      "result": {
+        "observed_value": 1313
+      },
+      "success": true
+    },
+    {
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_table_column_count_to_equal",
         "kwargs": {
           "value": 7,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_table_column_count_to_equal"
+        }
       },
-      "result": {
-        "observed_value": 7
-      }
-    },
-    {
-      "meta": {},
-      "success": true,
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
         "exception_traceback": null
       },
+      "meta": {},
+      "result": {
+        "observed_value": 7
+      },
+      "success": true
+    },
+    {
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_table_columns_to_match_ordered_list",
         "kwargs": {
           "column_list": [
             "Unnamed: 0",
@@ -80,10 +63,14 @@
             "SexCode"
           ],
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_table_columns_to_match_ordered_list"
+        }
       },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
+      },
+      "meta": {},
       "result": {
         "observed_value": [
           "Unnamed: 0",
@@ -94,168 +81,166 @@
           "Survived",
           "SexCode"
         ]
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_values_to_be_unique",
         "kwargs": {
           "column": "Unnamed: 0",
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_values_to_be_unique"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "element_count": 1313,
         "missing_count": 0,
         "missing_percent": 0.0,
         "unexpected_count": 0,
         "unexpected_percent": 0.0,
+        "unexpected_percent_total": 0.0,
         "unexpected_percent_nonmissing": 0.0,
         "partial_unexpected_list": [],
         "partial_unexpected_index_list": [],
         "partial_unexpected_counts": []
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_values_to_not_be_null",
         "kwargs": {
           "column": "Unnamed: 0",
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_values_to_not_be_null"
+        }
       },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
+      },
+      "meta": {},
       "result": {
         "element_count": 1313,
         "unexpected_count": 0,
         "unexpected_percent": 0.0,
+        "unexpected_percent_total": 0.0,
         "partial_unexpected_list": []
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_min_to_be_between",
         "kwargs": {
           "column": "Unnamed: 0",
           "min_value": 0,
           "max_value": 2,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_min_to_be_between"
+        }
       },
-      "result": {
-        "observed_value": 1,
-        "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0
-      }
-    },
-    {
-      "meta": {},
-      "success": true,
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
         "exception_traceback": null
       },
+      "meta": {},
+      "result": {
+        "observed_value": 1,
+        "element_count": 1313,
+        "missing_count": null,
+        "missing_percent": null
+      },
+      "success": true
+    },
+    {
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_max_to_be_between",
         "kwargs": {
           "column": "Unnamed: 0",
           "min_value": 1312,
           "max_value": 1314,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_max_to_be_between"
+        }
       },
-      "result": {
-        "observed_value": 1313,
-        "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0
-      }
-    },
-    {
-      "meta": {},
-      "success": true,
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
         "exception_traceback": null
       },
+      "meta": {},
+      "result": {
+        "observed_value": 1313,
+        "element_count": 1313,
+        "missing_count": null,
+        "missing_percent": null
+      },
+      "success": true
+    },
+    {
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_mean_to_be_between",
         "kwargs": {
           "column": "Unnamed: 0",
           "min_value": 656.0,
           "max_value": 658.0,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_mean_to_be_between"
+        }
       },
-      "result": {
-        "observed_value": 657.0,
-        "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0
-      }
-    },
-    {
-      "meta": {},
-      "success": true,
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
         "exception_traceback": null
       },
+      "meta": {},
+      "result": {
+        "observed_value": 657.0,
+        "element_count": 1313,
+        "missing_count": null,
+        "missing_percent": null
+      },
+      "success": true
+    },
+    {
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_median_to_be_between",
         "kwargs": {
           "column": "Unnamed: 0",
           "min_value": 656.0,
           "max_value": 658.0,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_median_to_be_between"
+        }
       },
-      "result": {
-        "observed_value": 657.0,
-        "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0
-      }
-    },
-    {
-      "meta": {},
-      "success": true,
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
         "exception_traceback": null
       },
+      "meta": {},
+      "result": {
+        "observed_value": 657.0,
+        "element_count": 1313,
+        "missing_count": null,
+        "missing_percent": null
+      },
+      "success": true
+    },
+    {
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_quantile_values_to_be_between",
         "kwargs": {
           "column": "Unnamed: 0",
           "quantile_ranges": {
@@ -291,10 +276,14 @@
           },
           "allow_relative_error": false,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_quantile_values_to_be_between"
+        }
       },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
+      },
+      "meta": {},
       "result": {
         "observed_value": {
           "quantiles": [
@@ -313,8 +302,8 @@
           ]
         },
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "success_details": [
             true,
@@ -324,30 +313,31 @@
             true
           ]
         }
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": false,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_values_to_be_unique",
         "kwargs": {
           "column": "Name",
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_values_to_be_unique"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "element_count": 1313,
         "missing_count": 0,
         "missing_percent": 0.0,
         "unexpected_count": 6,
         "unexpected_percent": 0.456968773800457,
+        "unexpected_percent_total": 0.456968773800457,
         "unexpected_percent_nonmissing": 0.456968773800457,
         "partial_unexpected_list": [
           "Carlsson, Mr Frans Olof",
@@ -379,92 +369,91 @@
             "count": 2
           }
         ]
-      }
+      },
+      "success": false
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_values_to_not_be_null",
         "kwargs": {
           "column": "Name",
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_values_to_not_be_null"
+        }
       },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
+      },
+      "meta": {},
       "result": {
         "element_count": 1313,
         "unexpected_count": 0,
         "unexpected_percent": 0.0,
+        "unexpected_percent_total": 0.0,
         "partial_unexpected_list": []
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_value_lengths_to_be_between",
         "kwargs": {
           "column": "Name",
           "min_value": 1,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_value_lengths_to_be_between"
+        }
       },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
+      },
+      "meta": {},
       "result": {
         "element_count": 1313,
         "missing_count": 0,
         "missing_percent": 0.0,
         "unexpected_count": 0,
         "unexpected_percent": 0.0,
+        "unexpected_percent_total": 0.0,
         "unexpected_percent_nonmissing": 0.0,
         "partial_unexpected_list": [],
         "partial_unexpected_index_list": [],
         "partial_unexpected_counts": []
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_values_to_not_be_null",
         "kwargs": {
           "column": "PClass",
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_values_to_not_be_null"
+        }
       },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
+      },
+      "meta": {},
       "result": {
         "element_count": 1313,
         "unexpected_count": 0,
         "unexpected_percent": 0.0,
+        "unexpected_percent_total": 0.0,
         "partial_unexpected_list": []
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_distinct_values_to_be_in_set",
         "kwargs": {
           "column": "PClass",
           "value_set": [
@@ -474,10 +463,14 @@
             "3rd"
           ],
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_distinct_values_to_be_in_set"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "observed_value": [
           "*",
@@ -486,8 +479,8 @@
           "3rd"
         ],
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "value_counts": [
             {
@@ -508,17 +501,13 @@
             }
           ]
         }
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_kl_divergence_to_be_less_than",
         "kwargs": {
           "column": "PClass",
           "partition_object": {
@@ -537,15 +526,19 @@
           },
           "threshold": 0.6,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_kl_divergence_to_be_less_than"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "observed_value": 0.0,
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "observed_partition": {
             "values": [
@@ -576,30 +569,31 @@
             ]
           }
         }
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": false,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_values_to_be_unique",
         "kwargs": {
           "column": "Age",
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_values_to_be_unique"
+        }
       },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
+      },
+      "meta": {},
       "result": {
         "element_count": 1313,
         "missing_count": 557,
         "missing_percent": 42.421934501142424,
         "unexpected_count": 748,
-        "unexpected_percent": 56.96877380045697,
+        "unexpected_percent": 98.94179894179894,
+        "unexpected_percent_total": 56.96877380045697,
         "unexpected_percent_nonmissing": 98.94179894179894,
         "partial_unexpected_list": [
           29.0,
@@ -727,141 +721,138 @@
             "count": 14
           }
         ]
-      }
+      },
+      "success": false
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_values_to_not_be_null",
         "kwargs": {
           "column": "Age",
           "mostly": 0.476,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_values_to_not_be_null"
+        }
       },
-      "result": {
-        "element_count": 1313,
-        "unexpected_count": 557,
-        "unexpected_percent": 42.421934501142424,
-        "partial_unexpected_list": []
-      }
-    },
-    {
-      "meta": {},
-      "success": true,
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
         "exception_traceback": null
       },
+      "meta": {},
+      "result": {
+        "element_count": 1313,
+        "unexpected_count": 557,
+        "unexpected_percent": 42.421934501142424,
+        "unexpected_percent_total": 42.421934501142424,
+        "partial_unexpected_list": []
+      },
+      "success": true
+    },
+    {
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_min_to_be_between",
         "kwargs": {
           "column": "Age",
           "min_value": -0.83,
           "max_value": 1.17,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_min_to_be_between"
+        }
       },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
+      },
+      "meta": {},
       "result": {
         "observed_value": 0.17,
         "element_count": 1313,
         "missing_count": 557,
         "missing_percent": 42.421934501142424
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_max_to_be_between",
         "kwargs": {
           "column": "Age",
           "min_value": 70.0,
           "max_value": 72.0,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_max_to_be_between"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "observed_value": 71.0,
         "element_count": 1313,
         "missing_count": 557,
         "missing_percent": 42.421934501142424
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_mean_to_be_between",
         "kwargs": {
           "column": "Age",
           "min_value": 29.397989417989418,
           "max_value": 31.397989417989418,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_mean_to_be_between"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "observed_value": 30.397989417989418,
         "element_count": 1313,
         "missing_count": 557,
         "missing_percent": 42.421934501142424
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_median_to_be_between",
         "kwargs": {
           "column": "Age",
           "min_value": 27.0,
           "max_value": 29.0,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_median_to_be_between"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "observed_value": 28.0,
         "element_count": 1313,
         "missing_count": 557,
         "missing_percent": 42.421934501142424
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_quantile_values_to_be_between",
         "kwargs": {
           "column": "Age",
           "quantile_ranges": {
@@ -897,10 +888,14 @@
           },
           "allow_relative_error": false,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_quantile_values_to_be_between"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "observed_value": {
           "quantiles": [
@@ -930,40 +925,37 @@
             true
           ]
         }
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_values_to_not_be_null",
         "kwargs": {
           "column": "Sex",
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_values_to_not_be_null"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "element_count": 1313,
         "unexpected_count": 0,
         "unexpected_percent": 0.0,
+        "unexpected_percent_total": 0.0,
         "partial_unexpected_list": []
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_distinct_values_to_be_in_set",
         "kwargs": {
           "column": "Sex",
           "value_set": [
@@ -971,18 +963,22 @@
             "male"
           ],
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_distinct_values_to_be_in_set"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "observed_value": [
           "female",
           "male"
         ],
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "value_counts": [
             {
@@ -995,17 +991,13 @@
             }
           ]
         }
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_kl_divergence_to_be_less_than",
         "kwargs": {
           "column": "Sex",
           "partition_object": {
@@ -1020,15 +1012,19 @@
           },
           "threshold": 0.6,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_kl_divergence_to_be_less_than"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "observed_value": 0.0,
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "observed_partition": {
             "values": [
@@ -1051,40 +1047,37 @@
             ]
           }
         }
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_values_to_not_be_null",
         "kwargs": {
           "column": "Survived",
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_values_to_not_be_null"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "element_count": 1313,
         "unexpected_count": 0,
         "unexpected_percent": 0.0,
+        "unexpected_percent_total": 0.0,
         "partial_unexpected_list": []
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_distinct_values_to_be_in_set",
         "kwargs": {
           "column": "Survived",
           "value_set": [
@@ -1092,18 +1085,22 @@
             1
           ],
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_distinct_values_to_be_in_set"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "observed_value": [
           0,
           1
         ],
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "value_counts": [
             {
@@ -1116,17 +1113,13 @@
             }
           ]
         }
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_kl_divergence_to_be_less_than",
         "kwargs": {
           "column": "Survived",
           "partition_object": {
@@ -1141,15 +1134,19 @@
           },
           "threshold": 0.6,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_kl_divergence_to_be_less_than"
+        }
       },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
+      },
+      "meta": {},
       "result": {
         "observed_value": 0.0,
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "observed_partition": {
             "values": [
@@ -1172,40 +1169,37 @@
             ]
           }
         }
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_values_to_not_be_null",
         "kwargs": {
           "column": "SexCode",
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_values_to_not_be_null"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "element_count": 1313,
         "unexpected_count": 0,
         "unexpected_percent": 0.0,
+        "unexpected_percent_total": 0.0,
         "partial_unexpected_list": []
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_distinct_values_to_be_in_set",
         "kwargs": {
           "column": "SexCode",
           "value_set": [
@@ -1213,18 +1207,22 @@
             1
           ],
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_distinct_values_to_be_in_set"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "observed_value": [
           0,
           1
         ],
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "value_counts": [
             {
@@ -1237,17 +1235,13 @@
             }
           ]
         }
-      }
+      },
+      "success": true
     },
     {
-      "meta": {},
-      "success": true,
-      "exception_info": {
-        "raised_exception": false,
-        "exception_message": null,
-        "exception_traceback": null
-      },
       "expectation_config": {
+        "meta": {},
+        "expectation_type": "expect_column_kl_divergence_to_be_less_than",
         "kwargs": {
           "column": "SexCode",
           "partition_object": {
@@ -1262,15 +1256,19 @@
           },
           "threshold": 0.6,
           "result_format": "SUMMARY"
-        },
-        "meta": {},
-        "expectation_type": "expect_column_kl_divergence_to_be_less_than"
+        }
+      },
+      "exception_info": {
+        "raised_exception": false,
+        "exception_message": null,
+        "exception_traceback": null
       },
+      "meta": {},
       "result": {
         "observed_value": 0.0,
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "observed_partition": {
             "values": [
@@ -1293,7 +1291,26 @@
             ]
           }
         }
-      }
+      },
+      "success": true
     }
-  ]
-}
+  ],
+  "meta": {
+    "great_expectations_version": "0.13.25+18.gef0fa6b73.dirty",
+    "expectation_suite_name": "default",
+    "run_id": {
+      "run_time": "2019-09-26T13:42:41+00:00",
+      "run_name": null
+    },
+    "batch_kwargs": {
+      "ge_batch_id": "82a8de80-e063-11e9-b1e4-acde48001122"
+    },
+    "batch_markers": {},
+    "batch_parameters": {},
+    "validation_time": "20190926T134241.000000Z",
+    "expectation_suite_meta": {
+      "great_expectations_version": "0.13.25+18.gef0fa6b73.dirty"
+    }
+  },
+  "success": false
+}
\ No newline at end of file
diff --git a/tests/profile/fixtures/expected_evrs_SuiteBuilderProfiler_on_titanic_with_configurations.json b/tests/profile/fixtures/expected_evrs_SuiteBuilderProfiler_on_titanic_with_configurations.json
--- a/tests/profile/fixtures/expected_evrs_SuiteBuilderProfiler_on_titanic_with_configurations.json
+++ b/tests/profile/fixtures/expected_evrs_SuiteBuilderProfiler_on_titanic_with_configurations.json
@@ -1,25 +1,6 @@
 {
-  "meta": {
-    "great_expectations_version": "0.9.11+20.gb9574e55.dirty",
-    "expectation_suite_name": "default",
-    "run_id": "20200411T010314.344479Z",
-    "batch_kwargs": {
-      "ge_batch_id": "3888859e-7b90-11ea-b685-acde48001122"
-    },
-    "expectation_suite_meta": {},
-    "batch_markers": {},
-    "batch_parameters": {}
-  },
-  "statistics": {
-    "evaluated_expectations": 22,
-    "successful_expectations": 20,
-    "unsuccessful_expectations": 2,
-    "success_percent": 90.9090909090909
-  },
-  "evaluation_parameters": {},
   "results": [
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -28,7 +9,6 @@
       "result": {
         "observed_value": 1313
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -37,10 +17,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_table_row_count_to_be_between"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -49,7 +30,6 @@
       "result": {
         "observed_value": 7
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -57,10 +37,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_table_column_count_to_equal"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -77,7 +58,6 @@
           "SexCode"
         ]
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -93,10 +73,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_table_columns_to_match_ordered_list"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -108,6 +89,7 @@
         "missing_percent": 0.0,
         "unexpected_count": 6,
         "unexpected_percent": 0.456968773800457,
+        "unexpected_percent_total": 0.456968773800457,
         "unexpected_percent_nonmissing": 0.456968773800457,
         "partial_unexpected_list": [
           "Carlsson, Mr Frans Olof",
@@ -140,7 +122,6 @@
           }
         ]
       },
-      "success": false,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -148,10 +129,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_values_to_be_unique"
-      }
+      },
+      "success": false,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -161,9 +143,9 @@
         "element_count": 1313,
         "unexpected_count": 0,
         "unexpected_percent": 0.0,
+        "unexpected_percent_total": 0.0,
         "partial_unexpected_list": []
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -171,10 +153,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_values_to_not_be_null"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -186,12 +169,12 @@
         "missing_percent": 0.0,
         "unexpected_count": 0,
         "unexpected_percent": 0.0,
+        "unexpected_percent_total": 0.0,
         "unexpected_percent_nonmissing": 0.0,
         "partial_unexpected_list": [],
         "partial_unexpected_index_list": [],
         "partial_unexpected_counts": []
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -200,10 +183,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_value_lengths_to_be_between"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -213,9 +197,9 @@
         "element_count": 1313,
         "unexpected_count": 0,
         "unexpected_percent": 0.0,
+        "unexpected_percent_total": 0.0,
         "partial_unexpected_list": []
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -223,10 +207,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_values_to_not_be_null"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -240,8 +225,8 @@
           "3rd"
         ],
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "value_counts": [
             {
@@ -263,7 +248,6 @@
           ]
         }
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -277,10 +261,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_distinct_values_to_be_in_set"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -289,8 +274,8 @@
       "result": {
         "observed_value": 0.0,
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "observed_partition": {
             "values": [
@@ -322,7 +307,6 @@
           }
         }
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -345,10 +329,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_kl_divergence_to_be_less_than"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -359,7 +344,8 @@
         "missing_count": 557,
         "missing_percent": 42.421934501142424,
         "unexpected_count": 748,
-        "unexpected_percent": 56.96877380045697,
+        "unexpected_percent": 98.94179894179894,
+        "unexpected_percent_total": 56.96877380045697,
         "unexpected_percent_nonmissing": 98.94179894179894,
         "partial_unexpected_list": [
           29.0,
@@ -488,7 +474,6 @@
           }
         ]
       },
-      "success": false,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -496,10 +481,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_values_to_be_unique"
-      }
+      },
+      "success": false,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -509,9 +495,9 @@
         "element_count": 1313,
         "unexpected_count": 557,
         "unexpected_percent": 42.421934501142424,
+        "unexpected_percent_total": 42.421934501142424,
         "partial_unexpected_list": []
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -520,10 +506,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_values_to_not_be_null"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -535,7 +522,6 @@
         "missing_count": 557,
         "missing_percent": 42.421934501142424
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -545,10 +531,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_min_to_be_between"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -560,7 +547,6 @@
         "missing_count": 557,
         "missing_percent": 42.421934501142424
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -570,10 +556,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_max_to_be_between"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -585,7 +572,6 @@
         "missing_count": 557,
         "missing_percent": 42.421934501142424
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -595,10 +581,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_mean_to_be_between"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -610,7 +597,6 @@
         "missing_count": 557,
         "missing_percent": 42.421934501142424
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -620,10 +606,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_median_to_be_between"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -659,7 +646,6 @@
           ]
         }
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -699,10 +685,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_quantile_values_to_be_between"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -712,9 +699,9 @@
         "element_count": 1313,
         "unexpected_count": 0,
         "unexpected_percent": 0.0,
+        "unexpected_percent_total": 0.0,
         "partial_unexpected_list": []
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -722,10 +709,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_values_to_not_be_null"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -737,8 +725,8 @@
           "male"
         ],
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "value_counts": [
             {
@@ -752,7 +740,6 @@
           ]
         }
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -764,10 +751,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_distinct_values_to_be_in_set"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -776,8 +764,8 @@
       "result": {
         "observed_value": 0.0,
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "observed_partition": {
             "values": [
@@ -801,7 +789,6 @@
           }
         }
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -820,10 +807,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_kl_divergence_to_be_less_than"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -833,9 +821,9 @@
         "element_count": 1313,
         "unexpected_count": 0,
         "unexpected_percent": 0.0,
+        "unexpected_percent_total": 0.0,
         "partial_unexpected_list": []
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -843,10 +831,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_values_to_not_be_null"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -858,8 +847,8 @@
           1
         ],
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "value_counts": [
             {
@@ -873,7 +862,6 @@
           ]
         }
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -885,10 +873,11 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_distinct_values_to_be_in_set"
-      }
+      },
+      "success": true,
+      "meta": {}
     },
     {
-      "meta": {},
       "exception_info": {
         "raised_exception": false,
         "exception_message": null,
@@ -897,8 +886,8 @@
       "result": {
         "observed_value": 0.0,
         "element_count": 1313,
-        "missing_count": 0,
-        "missing_percent": 0.0,
+        "missing_count": null,
+        "missing_percent": null,
         "details": {
           "observed_partition": {
             "values": [
@@ -922,7 +911,6 @@
           }
         }
       },
-      "success": true,
       "expectation_config": {
         "meta": {},
         "kwargs": {
@@ -941,8 +929,34 @@
           "result_format": "SUMMARY"
         },
         "expectation_type": "expect_column_kl_divergence_to_be_less_than"
-      }
+      },
+      "success": true,
+      "meta": {}
     }
   ],
-  "success": false
-}
+  "statistics": {
+    "evaluated_expectations": 22,
+    "successful_expectations": 20,
+    "unsuccessful_expectations": 2,
+    "success_percent": 90.9090909090909
+  },
+  "success": false,
+  "evaluation_parameters": {},
+  "meta": {
+    "great_expectations_version": "0.13.25+18.gef0fa6b73.dirty",
+    "expectation_suite_name": "default",
+    "run_id": {
+      "run_time": "2019-09-26T13:42:41+00:00",
+      "run_name": null
+    },
+    "batch_kwargs": {
+      "ge_batch_id": "82a8de80-e063-11e9-9828-acde48001122"
+    },
+    "batch_markers": {},
+    "batch_parameters": {},
+    "validation_time": "20190926T134241.000000Z",
+    "expectation_suite_meta": {
+      "great_expectations_version": "0.13.25+18.gef0fa6b73.dirty"
+    }
+  }
+}
\ No newline at end of file
diff --git a/tests/profile/test_basic_suite_builder_profiler.py b/tests/profile/test_basic_suite_builder_profiler.py
--- a/tests/profile/test_basic_suite_builder_profiler.py
+++ b/tests/profile/test_basic_suite_builder_profiler.py
@@ -489,6 +489,7 @@ def test_snapshot_BasicSuiteBuilderProfiler_on_titanic_in_demo_mode():
 
     # Version, run_id, batch id will be different
     del expected_evrs.meta["great_expectations_version"]
+    del expected_evrs.meta["expectation_suite_meta"]["great_expectations_version"]
     del evrs.meta["great_expectations_version"]
     del evrs.meta["expectation_suite_meta"]["great_expectations_version"]
 
@@ -498,6 +499,7 @@ def test_snapshot_BasicSuiteBuilderProfiler_on_titanic_in_demo_mode():
     del expected_evrs.meta["batch_kwargs"]["ge_batch_id"]
     del evrs.meta["batch_kwargs"]["ge_batch_id"]
 
+    del expected_evrs.meta["validation_time"]
     del evrs.meta["validation_time"]
 
     assert evrs == expected_evrs
@@ -1340,11 +1342,13 @@ def test_snapshot_BasicSuiteBuilderProfiler_on_titanic_with_builder_configuratio
         # Version and RUN-ID will be different
     del expected_evrs.meta["great_expectations_version"]
     del evrs.meta["great_expectations_version"]
+    del expected_evrs.meta["expectation_suite_meta"]["great_expectations_version"]
     del evrs.meta["expectation_suite_meta"]["great_expectations_version"]
     del expected_evrs.meta["run_id"]
-    del expected_evrs.meta["batch_kwargs"]["ge_batch_id"]
     del evrs.meta["run_id"]
+    del expected_evrs.meta["batch_kwargs"]["ge_batch_id"]
     del evrs.meta["batch_kwargs"]["ge_batch_id"]
+    del expected_evrs.meta["validation_time"]
     del evrs.meta["validation_time"]
 
     assert evrs == expected_evrs
diff --git a/tests/test_definitions/column_distributional_expectations/expect_column_chisquare_test_p_value_to_be_greater_than.json b/tests/test_definitions/column_distributional_expectations/expect_column_chisquare_test_p_value_to_be_greater_than.json
--- a/tests/test_definitions/column_distributional_expectations/expect_column_chisquare_test_p_value_to_be_greater_than.json
+++ b/tests/test_definitions/column_distributional_expectations/expect_column_chisquare_test_p_value_to_be_greater_than.json
@@ -53,8 +53,8 @@
         "result": {
           "observed_value": 5.1397782097623862e-53,
           "element_count": 1000,
-          "missing_count": 0,
-          "missing_percent": 0,
+          "missing_count": null,
+          "missing_percent": null,
           "details": {
             "observed_partition": {
               "values": ["A", "B", "C"],
diff --git a/tests/test_definitions/multicolumn_map_expectations/expect_compound_columns_to_be_unique.json b/tests/test_definitions/multicolumn_map_expectations/expect_compound_columns_to_be_unique.json
--- a/tests/test_definitions/multicolumn_map_expectations/expect_compound_columns_to_be_unique.json
+++ b/tests/test_definitions/multicolumn_map_expectations/expect_compound_columns_to_be_unique.json
@@ -103,7 +103,8 @@
           "missing_count": 1,
           "missing_percent": 10.0,
           "unexpected_count": 9,
-          "unexpected_percent": 90.0,
+          "unexpected_percent": 100.0,
+          "unexpected_percent_total": 90.0,
           "unexpected_percent_nonmissing": 100.0,
           "partial_unexpected_list": [
             {
@@ -144,9 +145,10 @@
             }
           ],
           "partial_unexpected_index_list": [0,1,2,3,4,5,6,7,8],
-          "partial_unexpected_counts": [
-            "partial_exception_counts requires a hashable type"
-          ],
+          "partial_unexpected_counts": [],
+          "details": {
+            "partial_unexpected_counts_error": "partial_unexpected_counts requested, but requires a hashable type"
+          },
           "unexpected_list": [
             {
               "a": 1.0,
diff --git a/tests/test_definitions/multicolumn_map_expectations/expect_select_column_values_to_be_unique_within_record.json b/tests/test_definitions/multicolumn_map_expectations/expect_select_column_values_to_be_unique_within_record.json
--- a/tests/test_definitions/multicolumn_map_expectations/expect_select_column_values_to_be_unique_within_record.json
+++ b/tests/test_definitions/multicolumn_map_expectations/expect_select_column_values_to_be_unique_within_record.json
@@ -56,6 +56,7 @@
     },{
       "title": "unexpected_values_exact_match_out",
       "exact_match_out" : true,
+      "suppress_test_for": ["spark"],
       "in": {
         "column_list": ["a", "b"]
       },
@@ -66,7 +67,8 @@
           "missing_count": 1,
           "missing_percent": 10.0,
           "unexpected_count": 5,
-          "unexpected_percent": 50.0,
+          "unexpected_percent": 55.55555555555556,
+          "unexpected_percent_total": 50.0,
           "unexpected_percent_nonmissing": 55.55555555555556,
           "partial_unexpected_list": [
             {
@@ -97,9 +99,10 @@
             5,
             7
           ],
-          "partial_unexpected_counts": [
-            "partial_exception_counts requires a hashable type"
-          ],
+          "partial_unexpected_counts": [],
+          "details": {
+            "partial_unexpected_counts_error": "partial_unexpected_counts requested, but requires a hashable type"
+          },
           "unexpected_list": [
             {
               "a": 1.0,
@@ -131,6 +134,72 @@
           ]
         }
       }
+    },{
+      "title": "unexpected_values_exact_match_out_without_unexpected_index_list",
+      "exact_match_out" : true,
+      "in": {
+        "column_list": ["a", "b"]
+      },
+      "out": {
+        "success": false,
+        "result": {
+          "element_count": 10,
+          "missing_count": 1,
+          "missing_percent": 10.0,
+          "unexpected_count": 5,
+          "unexpected_percent": 55.55555555555556,
+          "unexpected_percent_total": 50.0,
+          "unexpected_percent_nonmissing": 55.55555555555556,
+          "partial_unexpected_list": [
+            {
+              "a": 1.0,
+              "b": 1.0
+            },
+            {
+              "a": 1.0,
+              "b": 1.0
+            },
+            {
+              "a": 1.0,
+              "b": 1.0
+            },
+            {
+              "a": 2.0,
+              "b": 2.0
+            },
+            {
+              "a": 2.0,
+              "b": 2.0
+            }
+          ],
+          "partial_unexpected_counts": [],
+          "details": {
+            "partial_unexpected_counts_error": "partial_unexpected_counts requested, but requires a hashable type"
+          },
+          "unexpected_list": [
+            {
+              "a": 1.0,
+              "b": 1.0
+            },
+            {
+              "a": 1.0,
+              "b": 1.0
+            },
+            {
+              "a": 1.0,
+              "b": 1.0
+            },
+            {
+              "a": 2.0,
+              "b": 2.0
+            },
+            {
+              "a": 2.0,
+              "b": 2.0
+            }
+          ]
+        }
+      }
     }]
   }]
 }
diff --git a/tests/test_definitions/other_expectations/expect_table_columns_to_match_set_test_set.json b/tests/test_definitions/other_expectations/expect_table_columns_to_match_set_test_set.json
--- a/tests/test_definitions/other_expectations/expect_table_columns_to_match_set_test_set.json
+++ b/tests/test_definitions/other_expectations/expect_table_columns_to_match_set_test_set.json
@@ -193,7 +193,7 @@
           "observed_value": ["c1", "c2", "c3"],
           "details": {
             "mismatched": {
-              "missing": ["c1", "c2", "c3"]
+              "unexpected": ["c1", "c2", "c3"]
             }
           }
         }
diff --git a/tests/validator/test_validator.py b/tests/validator/test_validator.py
--- a/tests/validator/test_validator.py
+++ b/tests/validator/test_validator.py
@@ -356,17 +356,27 @@ def test_graph_validate_with_runtime_config(basic_datasource):
             result={
                 "element_count": 8,
                 "unexpected_count": 1,
-                "unexpected_percent": 12.5,
+                "unexpected_percent": 14.285714285714285,
                 "partial_unexpected_list": [332.0],
                 "missing_count": 1,
                 "missing_percent": 12.5,
+                "unexpected_percent_total": 12.5,
                 "unexpected_percent_nonmissing": 14.285714285714285,
-                "partial_unexpected_index_list": None,
+                "partial_unexpected_index_list": [1],
                 "partial_unexpected_counts": [{"value": 332.0, "count": 1}],
                 "unexpected_list": [332.0],
-                "unexpected_index_list": None,
+                "unexpected_index_list": [1],
+            },
+            expectation_config={
+                "expectation_type": "expect_column_value_z_scores_to_be_less_than",
+                "kwargs": {
+                    "column": "b",
+                    "mostly": 1,
+                    "threshold": 2,
+                    "double_sided": True,
+                },
+                "meta": {},
             },
-            expectation_config=None,
             exception_info=None,
         )
     ]