Issue #556
# Issue #556: Tests that nested comprehensions with list.Contains filtering
# correctly produces only the non-deleted entries.
-- in.cue --
import "list"

DeleteThis: ["this", "that"]
useful_infra: {
	gcp: cluters:   10
	aws: clusters:  20
	this: clusters: 1
	that: clusters: 2
}
New_infra: {
	for k, v in useful_infra {
		if !list.Contains(DeleteThis, k) {
			"\(k)": v
		}
	}
}
-- out/compile --
--- in.cue
{
  DeleteThis: [
    "this",
    "that",
  ]
  useful_infra: {
    gcp: {
      cluters: 10
    }
    aws: {
      clusters: 20
    }
    this: {
      clusters: 1
    }
    that: {
      clusters: 2
    }
  }
  New_infra: {
    for k, v in 〈1;useful_infra〉 {
      if !〈import;list〉.Contains(〈3;DeleteThis〉, 〈1;k〉) {
        "\(〈2;k〉)": 〈2;v〉
      }
    }
  }
}
