function testEmailRecipientPopup()
 {
     $this->logInWithPermission('ADMIN');
     $form = $this->objFromFixture('UserDefinedForm', 'basic-form-page');
     $popup = new UserDefinedForm_EmailRecipient();
     $fields = $popup->getCMSFields_forPopup();
     $this->assertTrue($fields->dataFieldByName('EmailSubject') !== null);
     $this->assertTrue($fields->dataFieldByName('EmailFrom') !== null);
     $this->assertTrue($fields->dataFieldByName('EmailAddress') !== null);
     $this->assertTrue($fields->dataFieldByName('HideFormData') !== null);
     $this->assertTrue($fields->dataFieldByName('SendPlain') !== null);
     $this->assertTrue($fields->dataFieldByName('EmailBody') !== null);
     // add an email field, it should now add a or from X address picker
     $email = $this->objFromFixture('EditableEmailField', 'email-field');
     $form->Fields()->add($email);
     $popup->FormID = $form->ID;
     $popup->write();
     $fields = $popup->getCMSFields_forPopup();
     $this->assertThat($fields->fieldByName('SendEmailToFieldID'), $this->isInstanceOf('DropdownField'));
     // if the front end has checkboxs or dropdown they can select from that can also be used to send things
     $dropdown = $this->objFromFixture('EditableDropdown', 'department-dropdown');
     $form->Fields()->add($dropdown);
     $fields = $popup->getCMSFields_forPopup();
     $this->assertTrue($fields->dataFieldByName('SendEmailToFieldID') !== null);
     $popup->delete();
 }