GN: Throw an error overwriting a nonempty scope.

Previously GN would throw an error if you assigned a nonempty list to another
nonempty list. This is easy to mess up when you actually meant to append.
However, it did not have this protection for "scope"-type values.

Adds such protection to scope-type values, and add unit tests for both
behaviors.

Does some unit test cleanup for the operators unit tests to make them easier to
write.

BUG=

Review-Url: https://codereview.chromium.org/2224343003
Cr-Original-Commit-Position: refs/heads/master@{#410874}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 56350de24ed370f955b299022e93229f8643ace8
4 files changed
tree: 16266618ee3cde0c0c0a2f0a13484a4e822979a6
  1. tools/