title: Load constraints from csv-file (amazon deequ)
body: <p>I'm checking out Deequ which seems like a really nice library. I was wondering if it is possible to load constraints from a csv file or an orc-table in HDFS?</p>
  
  <p>Lets say I have a table with theese types</p>
  
  <pre class="lang-scala prettyprint-override"><code>case class Item(
    id: Long,
    productName: String,
    description: String,
    priority: String,
    numViews: Long
  )
  </code></pre>
  
  <p>and I want to put constraints like:</p>
  
  <pre class="lang-scala prettyprint-override"><code>val checks = Check(CheckLevel.Error, "unit testing my data")
                    .isComplete("id") // should never be NULL
                    .isUnique("id") // should not contain duplicates
  </code></pre>
  
  <p>But I want to load the ".isComplete("id")", ".isUnique("id")" from a csv file so the business can add the constraints and we can run te tests based on their input</p>
  
  <pre class="lang-scala prettyprint-override"><code>
  val verificationResult = VerificationSuite()
    .onData(data)
    .addChecks(Seq(checks))
      .run()
  </code></pre>
  
  <p>I've managed to get the constraints from suggestionResult.constraintSuggestion</p>
  
  <pre class="lang-scala prettyprint-override"><code>val allConstraints = suggestionResult.constraintSuggestions
        .flatMap { case (_, suggestions) =&gt; suggestions.map { _.constraint }}
        .toSeq
  </code></pre>
  
  <p>which gives a List like for example:</p>
  
  <pre class="lang-scala prettyprint-override"><code>allConstraints = List(CompletenessConstraint(Completeness(id,None)), ComplianceConstraint(Compliance('id' has no negative values,id &gt;= 0,None))
  
  </code></pre>
  
  <p>But it gets generated from suggestionResult.constraintSuggestions. But I want to be able to create a List like that based on the inputs from a csv file, can anyone help me?</p>
  
  <p>To sum things up:
  Basically I just want to add: </p>
  
  <pre class="lang-scala prettyprint-override"><code>val checks = Check(CheckLevel.Error, "unit testing my data")
  .isComplete("columnName1")
  .isUnique("columnName1")
  .isComplete("columnName2")
  </code></pre>
  
  <p>dynamically based on a file where the file has for example:</p>
  
  <pre class="lang-scala prettyprint-override"><code>columnName;isUnique;isComplete (header)
  columnName1;true;true
  columnName2;false;true
  </code></pre>