Index: devel/testlink/calendar/FUN03.2/src/test/java/br/gov/serpro/cte/agenda/Objetos/AdicionarCompromissoEL941/Campo.java
===================================================================
--- devel/testlink/calendar/FUN03.2/src/test/java/br/gov/serpro/cte/agenda/Objetos/AdicionarCompromissoEL941/Campo.java	(revision 3478)
+++ devel/testlink/calendar/FUN03.2/src/test/java/br/gov/serpro/cte/agenda/Objetos/AdicionarCompromissoEL941/Campo.java	(revision 3478)
@@ -0,0 +1,48 @@
+package br.gov.serpro.cte.agenda.Objetos.AdicionarCompromissoEL941;
+
+public enum Campo
+{
+	//TIPO("type:cal[type]"),
+	TITULO("type:cal[title]"),
+	DESCRICAO("type:cal[description]"),
+	//CATEGORIA("addSelection:categories[]"),
+	//LOCALIZACAO("type:cal[location]"),
+	DT_INICIO("type:start[str]"),
+	HORA_INICIO("type:start_hour"),
+	MINUTO_INICIO("type:start_minute"),
+	DT_FINAL("type:end[str]"),
+	HORA_FINAL("type:end_hour"),
+	MINUTO_FINAL("type:end_minute"),
+	//PRIORIDADE("select:cal[priority]"),
+	//PARTICIPANTES_EXTERNOS_CLICK("click://a[@id='a_ext_participants']/b"),
+	//PARTICIPANTES_EXTERNOS_EMAIL("type:ex_participants"),
+	//PARTICIPACAO_PROPRIO_USUARIO("click:usuarioParticipa"),
+	//ALARME_DIAS("select:cal[alarmdays]"),
+	//ALARME_HORAS("select:cal[alarmhours]"),
+	ALARME_MINUTOS("select:cal[alarmminutes]"),
+	//TIPO_REPETICAO("select:cal[recur_type]"),
+	//OPCAO_DT_FINAL_REPETICAO("click:cal[rpt_use_end]"),
+	//DT_FINAL_REPETICAO("type:recur_enddate[str]"),
+	//REPETICAO_SEMANAL_SEGUNDA("click://input[@name='cal[rpt_day][]' and @value='2']"),
+	//REPETICAO_SEMANAL_TERCA("click://input[@name='cal[rpt_day][]' and @value='4']"),
+	//REPETICAO_SEMANAL_QUARTA("click://input[@name='cal[rpt_day][]' and @value='8']"),
+	//REPETICAO_SEMANAL_QUINTA("click://input[@name='cal[rpt_day][]' and @value='16']"),
+	//REPETICAO_SEMANAL_SEXTA("click://input[@name='cal[rpt_day][]' and @value='32']"),
+	//REPETICAO_SEMANAL_SABADO("click://input[@name='cal[rpt_day][]' and @value='64']"),
+	//REPETICAO_SEMANAL_DOMINGO("click://input[@name='cal[rpt_day][]' and @value='1']"),
+	//INTERVALO_REPETICAO("type:cal[recur_interval]"),
+	SALVAR("click://html/body/div[@id='divSubContainer']/table/tbody/tr/td[@id='tdAppbox']/div[@id='divAppbox']/table[@id='tableDivAppbox']/tbody/tr/td/center/form/font/table[@id='editFormTable']/tbody/tr[20]/td[1]/table/tbody/tr/td[1]/div/input[@id='submit_button']");
+	
+	private String value;
+	 
+    private Campo(String value)
+    {
+    	this.value = value;
+    }
+
+    public String getValue()
+    {
+    	return value;
+    }
+	
+}
Index: devel/testlink/calendar/FUN03.2/src/test/java/br/gov/serpro/cte/agenda/Objetos/AdicionarCompromissoEL941/Valor.java
===================================================================
--- devel/testlink/calendar/FUN03.2/src/test/java/br/gov/serpro/cte/agenda/Objetos/AdicionarCompromissoEL941/Valor.java	(revision 3478)
+++ devel/testlink/calendar/FUN03.2/src/test/java/br/gov/serpro/cte/agenda/Objetos/AdicionarCompromissoEL941/Valor.java	(revision 3478)
@@ -0,0 +1,48 @@
+package br.gov.serpro.cte.agenda.Objetos.AdicionarCompromissoEL941;
+
+public enum Valor
+{
+	//TIPO("label=Normal"),
+	TITULO("Titulo do Compromisso EL 941 para Dia 10/11/2010"),
+	DESCRICAO("Descricao do Compromisso EL 941"),
+	//CATEGORIA("label=regexp:Auto estudo vinculado a projeto\\s<Global\\sAgenda de Eventos>"),
+	//LOCALIZACAO("Localizacao do Compromisso"),
+	DT_INICIO("09/11/2010"),
+	HORA_INICIO("15"),
+	MINUTO_INICIO("00"),
+	DT_FINAL("09/11/2010"),
+	HORA_FINAL("15"),
+	MINUTO_FINAL("31"),
+	//PRIORIDADE("label=Baixo"),
+	//PARTICIPANTES_EXTERNOS_CLICK(""),
+	//PARTICIPANTES_EXTERNOS_EMAIL("dinhocorreia@gmail.com"),
+	//PARTICIPACAO_PROPRIO_USUARIO(""),
+	//ALARME_DIAS("label=0"),
+	//ALARME_HORAS("label=0"),
+	ALARME_MINUTOS("label=5"),
+	//TIPO_REPETICAO("label=Diária"),
+	//OPCAO_DT_FINAL_REPETICAO(""),
+	//DT_FINAL_REPETICAO("08/11/2010"),
+	//REPETICAO_SEMANAL_SEGUNDA(""),
+	//REPETICAO_SEMANAL_TERCA(""),
+	//REPETICAO_SEMANAL_QUARTA(""),
+	//REPETICAO_SEMANAL_QUINTA(""),
+	//REPETICAO_SEMANAL_SEXTA(""),
+	//REPETICAO_SEMANAL_SABADO(""),
+	//REPETICAO_SEMANAL_DOMINGO(""),
+	//INTERVALO_REPETICAO("1"),
+	SALVAR("");
+	
+	private String value;
+	 
+    private Valor(String value)
+    {
+    	this.value = value;
+    }
+
+    public String getValue()
+    {
+    	return value;
+    }
+	
+}
Index: devel/testlink/calendar/FUN03.2/src/test/java/br/gov/serpro/cte/agenda/casoteste/Test_EL_941_AdicionarCompromissoComAlarme.java
===================================================================
--- devel/testlink/calendar/FUN03.2/src/test/java/br/gov/serpro/cte/agenda/casoteste/Test_EL_941_AdicionarCompromissoComAlarme.java	(revision 3478)
+++ devel/testlink/calendar/FUN03.2/src/test/java/br/gov/serpro/cte/agenda/casoteste/Test_EL_941_AdicionarCompromissoComAlarme.java	(revision 3478)
@@ -0,0 +1,150 @@
+/**
+ * Autor 			: Alexandre Correia - alexandrecorreia@celepar.pr.gov.br
+ * Data 			: 00/00/0000
+ * Caso de Teste	: EL-941 : Adicionar compromisso Com Alarme
+ * 
+ * Descrição do Processo de Teste Cadastro no TestLink - http://testlink.expressolivre.org/ 
+ * 
+ * AÇÕES DO PASSO
+ *	P01. Usuário informa um título para o compromisso;
+ *	P02. Usuário seleciona na opção alarme, o tempo que deseja ser avisado previamente da ocorrência do compromisso
+ *	P03. Usuário clica na opção para salvar o compromisso;
+ *	P04. Sistema salva o compromisso e retorna para a tela da agenda de compromissos utilizando a visualização padrão configurada nas preferências do Usuário
+ *	P05. Sistema exibe o compromisso no dia selecionado pelo usuário mostrando o horário inicial e final, o título do compromisso, descrição e local além de um símbolos indicando que esse compromisso é evento único, que tem apenas um participante e que esse compromisso foi configurado para disparar um alarme
+ *	P06. Sistema irá mandar uma mensagem para o Usuário sobre o início do compromisso, quando o momento informado em P02 chegar
+ */
+
+package br.gov.serpro.cte.agenda.casoteste;
+
+import java.util.GregorianCalendar;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+import br.gov.serpro.cte.agenda.Objetos.AdicionarCompromissoEL941.Campo;
+import br.gov.serpro.cte.agenda.Objetos.AdicionarCompromissoEL941.Valor;
+import br.gov.serpro.cte.connection.DAOSelenium;
+import br.gov.serpro.cte.connection.LoginExpresso;
+
+import com.thoughtworks.selenium.SeleneseTestCase;
+
+public class Test_EL_941_AdicionarCompromissoComAlarme extends SeleneseTestCase
+{
+	@Before
+	public void setUp() throws Exception
+	{
+		String url			= "https://cte.serpro.gov.br";
+		DAOSelenium conn	= new DAOSelenium( "localhost", 4444, "*pifirefox", url);
+		selenium			= conn.newConnection();
+	}
+	@Test
+	public void testa()
+	{
+		// Logando No Expresso
+		selenium.open("/login.php");
+		selenium.type("user", LoginExpresso.USER_EXPRESSO.getValue());
+		selenium.type("passwd", LoginExpresso.PASSWORD_EXPRESSO.getValue());
+		selenium.click("submitit");
+		selenium.waitForPageToLoad("30000");
+		selenium.click("//html/body/div[@id='toolbar']/table/tbody/tr/td[2]/table/tbody/tr/td[3]/a/img[@id='calendarid']");
+		
+		// Data
+		GregorianCalendar gc = new GregorianCalendar();
+		String	Dia = String.valueOf( gc.get( gc.DAY_OF_MONTH ) );
+				Dia = ( Dia.length() > 1 ) ? Dia : "0"+Dia; 
+		
+		String	Mes = String.valueOf( gc.get( gc.MONTH ) + 1 );
+		
+		String	Ano = String.valueOf( gc.get( gc.YEAR ) );
+		
+		//Adicionando um Evento
+		selenium.open("/index.php?date=" + Ano + Mes + Dia + "&menuaction=calendar.uicalendar.week");
+		selenium.click("//img[@title='Nova Entrada']");
+		selenium.waitForPageToLoad("30000");
+		
+		for( Campo cmp : Campo.values() )
+		{
+			String cmpName = cmp.name();
+				 
+			if( cmp.getValue().indexOf("addSelection:") > -1 )
+			{	
+				AddSelection( cmp.getValue(), getValor( cmp.name() ) );
+			}
+			
+			if( cmp.getValue().indexOf("click:") > -1 )
+			{
+				Click( cmp.getValue() );
+			}
+			
+			if( cmp.getValue().indexOf("select:") > -1 )
+			{
+				Select( cmp.getValue(), getValor( cmp.name() ) );
+			}
+			
+			if( cmp.getValue().indexOf("type:") > -1 )
+			{
+				Type( cmp.getValue(), getValor( cmp.name() ) );
+			}
+		}
+		
+		selenium.waitForPageToLoad("15000");
+		
+		// Verifica a hora Inicial e final do Compromisso
+		assertTrue( selenium.isTextPresent(Valor.HORA_INICIO.getValue() + ":" + Valor.MINUTO_INICIO.getValue() + 
+				 "-" + Valor.HORA_FINAL.getValue() + ":" + Valor.MINUTO_FINAL.getValue()));
+
+		// Verifica o Titulo do Compromisso
+		assertTrue( selenium.isTextPresent(Valor.TITULO.getValue()) );
+		
+		// Verifica a Descricao do Compromisso
+		assertTrue( selenium.isTextPresent(Valor.DESCRICAO.getValue()) );
+
+		// Verifica Alarme
+		assertTrue( selenium.getHtmlSource().contains("/calendar/templates/default/images/alarm.png"));
+		
+	}
+	
+	public String getValor(String cmpName)
+	{
+		String _return = "";
+		
+		for( Valor vlr : Valor.values() )
+		{
+			 String vlrName = vlr.name();
+			 
+			 if( vlrName.equals( cmpName ) )
+			 {
+				 _return = vlr.getValue();
+			 }
+		}
+		
+		return _return;
+	}
+	
+	public void AddSelection( String locator, String optionLocator )
+	{
+		selenium.addSelection( locator.substring( 13 , locator.length() ), optionLocator );
+	}
+	
+	public void Click( String locator )
+	{
+		selenium.click( locator.substring( 6 , locator.length() ) );
+	}
+
+	public void Select( String selectLocator, String optionLocator )
+	{
+		selenium.select( selectLocator.substring( 7 , selectLocator.length() ), optionLocator );
+	}
+
+	public void Type( String locator, String value )
+	{
+		selenium.type( locator.substring( 5 , locator.length() ), value );
+	}
+	
+	@After
+	public void tearDown() throws Exception
+	{
+		selenium.close();
+	}
+}
