def METHOD_NAME(self):
    """
    If the original list is empty, treat is just as if it's undefined.
    This is a change in behavior from version 2
    (where the input list would just be completly ignored), because
    in version 3 the difference between an uninitialized and empty list
    is not obvious to the user.
    """
    layout = go.Layout(annotations=[])
    layout.update(
        annotations=[
            go.layout.Annotation(text="one"),
            go.layout.Annotation(text="two"),
        ]
    )
    expected = {"annotations": [{"text": "one"}, {"text": "two"}]}
    self.assertEqual(len(layout.annotations), 2)
    self.assertEqual(layout.to_plotly_json(), expected)