code: def testAddedFields(self):
      a = sc_pb.ResponseObservation(
          observation=sc_pb.Observation(alerts=[sc_pb.AlertError])
      )
      b = sc_pb.ResponseObservation(
          observation=sc_pb.Observation(
              alerts=[sc_pb.AlertError, sc_pb.MergeComplete]
          ),
          player_result=[sc_pb.PlayerResult()],
      )
      diff = proto_diff.compute_diff(a, b)
      self.assertIsNotNone(diff)
      self.assertLen(diff.added, 2, diff)
      self.assertEqual(str(diff.added[0]), "observation.alerts[1]")
      self.assertEqual(str(diff.added[1]), "player_result")
      self.assertEqual(diff.added, diff.all_diffs())
      self.assertEqual(
          diff.report(),
          "Added observation.alerts[1].\n" "Added player_result.",
      )
  
imports: from absl.testing import absltest
  from pysc2.lib import proto_diff
  from s2clientprotocol import sc2api_pb2
  from s2clientprotocol import score_pb2
label_desc: Use image node_id 3 for calling the ProtoDiffTest obj's underlying member method code with example usage: obj.testAddedFields() without return types