title: Fn::Equals throwing error when CommaDelimitedList parameter is used
body: <p>I am writing a CF template to create an Elasticache Replication group. In that, I have a parameter called <code>Snapshots</code> of <code>CommaDelimitedList</code> type, which is used to pass RDB snapshot files stored in s3 as a list of ARNs -</p>
  <pre><code>Snapshots:
      Description: &gt;-
        List of ARNs of Redis RDB snapshot files to populate the Elasticache
        cluster (optional)
      Type: CommaDelimitedList
  </code></pre>
  <p>I'm trying to have a Condition like below, which is going to check if <code>Snapshots</code> is empty or not -</p>
  <pre><code>Conditions:
    HasSnapshots: !Not 
      - !Equals 
        - !Ref Snapshots
        - ''
  </code></pre>
  <p>When I try to validate my template in CloudFormation Designer, it throws an error -</p>
  <pre><code>29/07/2020, 22:50:33 - Template contains errors.: Template error: every Fn::Equals object requires a list of 2 string parameters.
  </code></pre>
  <p>What would be the correct way to do this? Do I have to use String type for <code>Snapshots</code>  instead of CommaDelimitedList? Or any other better approach?</p>
  <p>I need this parameter for a <code>Resource</code> of type <code>AWS::ElastiCache::ReplicationGroup</code> as shown below, to populate the ElastiCache cluster with snapshot files given as a list of ARNs in <code>Snapshots</code> parameter, if provided so -</p>
  <pre><code>RedisReplicationGroup:
    Type: 'AWS::ElastiCache::ReplicationGroup'
    Properties:
      ...
      ...
      SnapshotArns: !If 
        - HasSnapshots
        - !Ref Snapshots
        - !Ref 'AWS::NoValue'
  </code></pre>