diff --git a/pandas/tests/generic/test_frame.py b/pandas/tests/generic/test_frame.py
index 7fe22e77c5bf3..d2418d56e66eb 100644
--- a/pandas/tests/generic/test_frame.py
+++ b/pandas/tests/generic/test_frame.py
@@ -1,4 +1,5 @@
 from copy import deepcopy
+from datetime import datetime
 from distutils.version import LooseVersion
 from operator import methodcaller
 
@@ -280,3 +281,30 @@ def test_deepcopy_empty(self):
         empty_frame_copy = deepcopy(empty_frame)
 
         self._compare(empty_frame_copy, empty_frame)
+
+    def test_datetime_after_setitem_with_at(self):
+        # This test covers the unexpected behaviour of datetimeField when using
+        # setitem on another column as reported in issue #6942
+
+        start = pd.to_datetime("20140401")
+
+        result = pd.DataFrame(
+            index=pd.date_range(start, periods=1), columns=["timenow", "Live"]
+        )
+
+        result.at[start, "timenow"] = datetime.today()
+
+        new_datetime = datetime.today()
+
+        result.Live = True
+
+        # Changing the value in "timenow" column after "Live" colunn is set to True.
+        result.at[start, "timenow"] = new_datetime
+
+        expected = pd.DataFrame(
+            [[new_datetime, True]],
+            index=pd.date_range(start, periods=1),
+            columns=["timenow", "Live"],
+        )
+
+        tm.assert_frame_equal(result, expected)