code: def test_save_frames(self):
      dataset = fo.Dataset()
  
      sample = fo.Sample(filepath="video.mp4")
      dataset.add_sample(sample)
  
      frame = fo.Frame()
      sample.frames[1] = frame
  
      self.assertIsNone(frame.id)
      self.assertFalse(frame._in_db)
      self.assertEqual(len(sample.frames), 1)
      self.assertEqual(dataset.count("frames"), 0)
  
      sample.save()
  
      self.assertIsNotNone(frame.id)
      self.assertTrue(frame._in_db)
      self.assertEqual(len(sample.frames), 1)
      self.assertEqual(dataset.count("frames"), 1)
  
imports: from copy import deepcopy
  from datetime import date, datetime
  from bson import ObjectId
  import numpy
  import unittest
  import fiftyone
  import fiftyone.core.odm
  from fiftyone import ViewField
  from decorators import drop_datasets
label_desc: Use image node_id 11 for calling the VideoTests obj's underlying member method code with example usage: obj.test_save_frames() without return types