# DO NOT MODIFY. This file was generated by
# github.com/GoogleCloudPlatform/google-cloud-common/testing/firestore/cmd/generate-firestore-tests/generate-firestore-tests.go.

# A Filter response whose count matches the size of the current state (docs in
# last snapshot + docs added - docs deleted) is a no-op.

description: "listen: Filter response with same size is a no-op"
listen: <
  responses: <
    document_change: <
      document: <
        name: "projects/projectID/databases/(default)/documents/C/d1"
        fields: <
          key: "a"
          value: <
            integer_value: 3
          >
        >
        create_time: <
          seconds: 1
        >
        update_time: <
          seconds: 1
        >
      >
      target_ids: 1
    >
  >
  responses: <
    document_change: <
      document: <
        name: "projects/projectID/databases/(default)/documents/C/d2"
        fields: <
          key: "a"
          value: <
            integer_value: 1
          >
        >
        create_time: <
          seconds: 1
        >
        update_time: <
          seconds: 1
        >
      >
      target_ids: 1
    >
  >
  responses: <
    target_change: <
      target_change_type: CURRENT
    >
  >
  responses: <
    target_change: <
      read_time: <
        seconds: 1
      >
    >
  >
  responses: <
    document_change: <
      document: <
        name: "projects/projectID/databases/(default)/documents/C/d3"
        fields: <
          key: "a"
          value: <
            integer_value: 1
          >
        >
        create_time: <
          seconds: 1
        >
        update_time: <
          seconds: 1
        >
      >
      target_ids: 1
    >
  >
  responses: <
    document_delete: <
      document: "projects/projectID/databases/(default)/documents/C/d1"
    >
  >
  responses: <
    filter: <
      count: 2
    >
  >
  responses: <
    target_change: <
      read_time: <
        seconds: 2
      >
    >
  >
  snapshots: <
    docs: <
      name: "projects/projectID/databases/(default)/documents/C/d2"
      fields: <
        key: "a"
        value: <
          integer_value: 1
        >
      >
      create_time: <
        seconds: 1
      >
      update_time: <
        seconds: 1
      >
    >
    docs: <
      name: "projects/projectID/databases/(default)/documents/C/d1"
      fields: <
        key: "a"
        value: <
          integer_value: 3
        >
      >
      create_time: <
        seconds: 1
      >
      update_time: <
        seconds: 1
      >
    >
    changes: <
      kind: ADDED
      doc: <
        name: "projects/projectID/databases/(default)/documents/C/d2"
        fields: <
          key: "a"
          value: <
            integer_value: 1
          >
        >
        create_time: <
          seconds: 1
        >
        update_time: <
          seconds: 1
        >
      >
      old_index: -1
    >
    changes: <
      kind: ADDED
      doc: <
        name: "projects/projectID/databases/(default)/documents/C/d1"
        fields: <
          key: "a"
          value: <
            integer_value: 3
          >
        >
        create_time: <
          seconds: 1
        >
        update_time: <
          seconds: 1
        >
      >
      old_index: -1
      new_index: 1
    >
    read_time: <
      seconds: 1
    >
  >
  snapshots: <
    docs: <
      name: "projects/projectID/databases/(default)/documents/C/d2"
      fields: <
        key: "a"
        value: <
          integer_value: 1
        >
      >
      create_time: <
        seconds: 1
      >
      update_time: <
        seconds: 1
      >
    >
    docs: <
      name: "projects/projectID/databases/(default)/documents/C/d3"
      fields: <
        key: "a"
        value: <
          integer_value: 1
        >
      >
      create_time: <
        seconds: 1
      >
      update_time: <
        seconds: 1
      >
    >
    changes: <
      kind: REMOVED
      doc: <
        name: "projects/projectID/databases/(default)/documents/C/d1"
        fields: <
          key: "a"
          value: <
            integer_value: 3
          >
        >
        create_time: <
          seconds: 1
        >
        update_time: <
          seconds: 1
        >
      >
      old_index: 1
      new_index: -1
    >
    changes: <
      kind: ADDED
      doc: <
        name: "projects/projectID/databases/(default)/documents/C/d3"
        fields: <
          key: "a"
          value: <
            integer_value: 1
          >
        >
        create_time: <
          seconds: 1
        >
        update_time: <
          seconds: 1
        >
      >
      old_index: -1
      new_index: 1
    >
    read_time: <
      seconds: 2
    >
  >
>
