class_docstr: Tests the S3Driver
  
  This was largely ported over from test_lookup_tables.py from the old implementation.
class_docstr_tok: ["Tests","the","S3Driver","This","was","largely","ported","over","from","test_lookup_tables.py","from","the","old","implementation","."]
docstr: LookupTables - Drivers - DynamoDB Driver - Refresh - Barely Does not need refresh
docstr_tok: ["LookupTables","-","Drivers","-","DynamoDB","Driver","-","Refresh","-","Barely","Does","not","need","refresh"]
code: def test_barely_does_not_need_refresh(self, mock_logger):
      """LookupTables - Drivers - DynamoDB Driver - Refresh - Barely Does not need refresh"""
      self._driver.initialize()
  
      # Mess up some of the data so we fake that it's "stale"
      self._driver._cache._clock.time_machine(
          datetime(year=3000, month=1, day=1)
      )
      self._driver._cache.set("bbbb:1", "stale", 3)  # 3-minute ttl
  
      # Wind the "clock" forward JUST before it needs a refresh
      self._driver._cache._clock.time_machine(
          datetime(year=3000, month=1, day=1, minute=2, second=59)
      )
  
      assert_equal(self._driver.get("bbbb:1"), "stale")
  
      mock_logger.assert_any_call(
          "LookupTable (%s): Key %s does not need refresh. TTL: %s",
          "dynamodb:table_name",
          "bbbb:1",
          datetime(year=3000, month=1, day=1, minute=3),
      )
  
imports: from datetime import datetime
  from mock import patch
  from botocore.exceptions import ReadTimeoutError
  from moto import mock_dynamodb2
  from nose.tools import assert_equal, assert_false, assert_raises, assert_true
  from streamalert.shared.config import load_config
  from streamalert.shared.lookup_tables.drivers_factory import construct_persistence_driver
  from streamalert.shared.lookup_tables.errors import LookupTablesInitializationError
  from tests.unit.helpers.aws_mocks import put_mock_dynamod_data
label_desc: Use image node_id 11 for calling the TestDynamoDBDriver obj's underlying member method code with example usage: obj.test_barely_does_not_need_refresh(mock_logger) without return types