/**
  * A method to test the getDeliveryLimitationsByChannelId() method.
  *
  * Requirements:
  * Test 1: Test with invalid input, and ensure nothing returned
  * Test 2: Test with nothing in the database, and ensure nothing returned
  * Test 3: Test with delivery limitations attached to channel NOT desired, and
  *         ensure nothing returned
  * Test 4: Test with delivery limitations attached to the channel desired, and
  *         ensure they are returned
  */
 function testGetDeliveryLimitationsByChannelId()
 {
     $conf = $GLOBALS['_MAX']['CONF'];
     $oDbh =& OA_DB::singleton();
     $oDal = new MAX_Dal_Entities();
     // Test 1
     $channelId = 'foo';
     $aResult = $oDal->getDeliveryLimitationsByChannelId($channelId);
     $this->assertNull($aResult);
     // Test 2
     $channelId = 1;
     $aResult = $oDal->getDeliveryLimitationsByChannelId($channelId);
     $this->assertNull($aResult);
     // Test 3
     $aData = array(2, 'and', 'Time:Hour', '==', 12, 0);
     $idAclsChannel1 = $this->_insertAclsChannel($aData);
     $aResult = $oDal->getDeliveryLimitationsByChannelId(1);
     $this->assertNull($aResult);
     DataGenerator::cleanUp();
     // Test 4
     $aData = array(1, 'and', 'Time:Hour', '==', 10, 0);
     $idAclsChannel1 = $this->_insertAclsChannel($aData);
     $aData = array(1, 'or', 'Time:Hour', '==', 11, 1);
     $idAclsChannel2 = $this->_insertAclsChannel($aData);
     $aData = array(2, 'and', 'Time:Hour', '==', 12, 0);
     $idAclsChannel3 = $this->_insertAclsChannel($aData);
     $aResult = $oDal->getDeliveryLimitationsByChannelId(1);
     $aExpectedResult = array(0 => array('logical' => 'and', 'type' => 'Time:Hour', 'comparison' => '==', 'data' => 10), 1 => array('logical' => 'or', 'type' => 'Time:Hour', 'comparison' => '==', 'data' => 11));
     $this->assertEqual($aResult, $aExpectedResult);
     DataGenerator::cleanUp();
 }