old_contents: from s3tests import realistic
  import shutil
  import tempfile
  
  
  # XXX not used for now
  def create_files(mean=2000):
      return realistic.files2(
          mean=1024 * mean,
          stddev=1024 * 500,
          seed=1256193726,
          numfiles=4,
      )
  
  
  class TestFiles(object):
      # the size and seed is what we can get when generating a bunch of files
      # with pseudo random numbers based on sttdev, seed, and mean.
  
      # this fails, demonstrating the (current) problem
      #def test_random_file_invalid(self):
      #    size = 2506764
      #    seed = 3391518755
      #    source = realistic.RandomContentFile(size=size, seed=seed)
      #    t = tempfile.SpooledTemporaryFile()
      #    shutil.copyfileobj(source, t)
      #    precomputed = realistic.PrecomputedContentFile(t)
      #    assert precomputed.valid()
  
      #    verifier = realistic.FileVerifier()
      #    shutil.copyfileobj(precomputed, verifier)
  
      #    assert verifier.valid()
  
      # this passes
      def test_random_file_valid(self):
          size = 2506001
          seed = 3391518755
          source = realistic.RandomContentFile(size=size, seed=seed)
          t = tempfile.SpooledTemporaryFile()
          shutil.copyfileobj(source, t)
          precomputed = realistic.PrecomputedContentFile(t)
          assert precomputed.valid()
  
          #verifier = realistic.FileVerifier()
          #shutil.copyfileobj(precomputed, verifier)
  
          #assert verifier.valid()
          #assert 0
  
  
  # new implementation
  class TestFileValidator(object):
  
      def test_new_file_is_valid(self):
          size = 2506001
          contents = realistic.generate_file_contents(size)
          t = tempfile.SpooledTemporaryFile()
          t.write(contents)
          t.seek(0)
          fp = realistic.FileValidator(t)
          assert fp.valid()
  
      def test_new_file_is_valid_when_size_is_1(self):
          size = 1
          contents = realistic.generate_file_contents(size)
          t = tempfile.SpooledTemporaryFile()
          t.write(contents)
          t.seek(0)
          fp = realistic.FileValidator(t)
          assert fp.valid()
  
      def test_new_file_is_valid_on_several_calls(self):
          size = 2506001
          contents = realistic.generate_file_contents(size)
          t = tempfile.SpooledTemporaryFile()
          t.write(contents)
          t.seek(0)
          fp = realistic.FileValidator(t)
          assert fp.valid()
          assert fp.valid()
  
new_contents: from s3tests import realistic
  import shutil
  import tempfile
  
  
  # XXX not used for now
  def create_files(mean=2000):
      return realistic.files2(
          mean=1024 * mean,
          stddev=1024 * 500,
          seed=1256193726,
          numfiles=4,
      )
  
  
  class TestFiles(object):
      # the size and seed is what we can get when generating a bunch of files
      # with pseudo random numbers based on sttdev, seed, and mean.
  
      # this fails, demonstrating the (current) problem
      #def test_random_file_invalid(self):
      #    size = 2506764
      #    seed = 3391518755
      #    source = realistic.RandomContentFile(size=size, seed=seed)
      #    t = tempfile.SpooledTemporaryFile()
      #    shutil.copyfileobj(source, t)
      #    precomputed = realistic.PrecomputedContentFile(t)
      #    assert precomputed.valid()
  
      #    verifier = realistic.FileVerifier()
      #    shutil.copyfileobj(precomputed, verifier)
  
      #    assert verifier.valid()
  
      # this passes
      def test_random_file_valid(self):
          size = 2506001
          seed = 3391518755
          source = realistic.RandomContentFile(size=size, seed=seed)
          t = tempfile.SpooledTemporaryFile()
          shutil.copyfileobj(source, t)
          precomputed = realistic.PrecomputedContentFile(t)
  
          verifier = realistic.FileVerifier()
          shutil.copyfileobj(precomputed, verifier)
  
          assert verifier.valid()
  
  
  # new implementation
  class TestFileValidator(object):
  
      def test_new_file_is_valid(self):
          size = 2506001
          contents = realistic.generate_file_contents(size)
          t = tempfile.SpooledTemporaryFile()
          t.write(contents)
          t.seek(0)
          fp = realistic.FileValidator(t)
          assert fp.valid()
  
      def test_new_file_is_valid_when_size_is_1(self):
          size = 1
          contents = realistic.generate_file_contents(size)
          t = tempfile.SpooledTemporaryFile()
          t.write(contents)
          t.seek(0)
          fp = realistic.FileValidator(t)
          assert fp.valid()
  
      def test_new_file_is_valid_on_several_calls(self):
          size = 2506001
          contents = realistic.generate_file_contents(size)
          t = tempfile.SpooledTemporaryFile()
          t.write(contents)
          t.seek(0)
          fp = realistic.FileValidator(t)
          assert fp.valid()
          assert fp.valid()
  
subject: fix broken/commented tests