| /** |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| package org.apache.oozie; |
| |
| import java.util.Date; |
| |
| import org.apache.oozie.util.DateUtils; |
| import org.apache.oozie.util.XmlUtils; |
| import org.jdom.Element; |
| import org.junit.Test; |
| |
| import static org.junit.Assert.assertEquals; |
| import static org.junit.Assert.assertTrue; |
| |
| @Deprecated |
| public class TestSLAEventBean { |
| |
| private static final Date ee = new Date(1L); |
| private static final Date es = new Date(2L); |
| private static final Date st = new Date(3L); |
| |
| private void set(SLAEventBean bean) { |
| bean.setAlertContact("ac"); |
| bean.setAlertFrequency("af"); |
| bean.setAlertPercentage("ap"); |
| bean.setAppName("an"); |
| bean.setAppType(org.apache.oozie.client.SLAEvent.SlaAppType.WORKFLOW_ACTION); |
| bean.setAppTypeStr("WORKFLOW_ACTION"); |
| bean.setDevContact("dc"); |
| bean.setEvent_id(1L); |
| bean.setEventType("et"); |
| bean.setExpectedEnd(ee); |
| bean.setExpectedStart(es); |
| bean.setGroupName("gn"); |
| bean.setJobData("jd"); |
| bean.setJobStatus(org.apache.oozie.client.SLAEvent.Status.STARTED); |
| bean.setJobStatusStr("STARTED"); |
| bean.setNotificationMsg("nm"); |
| bean.setParentClientId("pci"); |
| bean.setParentSlaId("psi"); |
| bean.setQaContact("qc"); |
| bean.setSeContact("sc"); |
| bean.setSlaId("si"); |
| bean.setStatusTimestamp(st); |
| bean.setUpstreamApps("ua"); |
| bean.setUser("u"); |
| } |
| |
| @Test |
| public void testSetGet() { |
| final SLAEventBean bean = new SLAEventBean(); |
| |
| set(bean); |
| |
| assertEquals("ac", bean.getAlertContact()); |
| assertEquals("af", bean.getAlertFrequency()); |
| assertEquals("ap", bean.getAlertPercentage()); |
| assertEquals("an", bean.getAppName()); |
| assertTrue(org.apache.oozie.client.SLAEvent.SlaAppType.WORKFLOW_ACTION |
| == bean.getAppType()); |
| assertEquals("WORKFLOW_ACTION", bean.getAppTypeStr()); |
| assertEquals("dc", bean.getDevContact()); |
| assertEquals(1L, bean.getEvent_id()); |
| assertEquals("et", bean.getEventType()); |
| assertEquals("gn", bean.getGroupName()); |
| assertEquals("jd", bean.getJobData()); |
| assertEquals("STARTED", bean.getJobStatusStr()); |
| assertEquals("nm", bean.getNotificationMsg()); |
| assertEquals("pci", bean.getParentClientId()); |
| assertEquals("psi", bean.getParentSlaId()); |
| assertEquals("qc", bean.getQaContact()); |
| assertEquals("sc", bean.getSeContact()); |
| assertEquals("si", bean.getSlaId()); |
| assertEquals("ua", bean.getUpstreamApps()); |
| assertEquals("u", bean.getUser()); |
| |
| assertEquals(ee, bean.getExpectedEnd()); |
| assertEquals(es, bean.getExpectedStart()); |
| assertEquals(st, bean.getStatusTimestamp()); |
| |
| assertEquals(DateUtils.convertDateToTimestamp(st), bean.getStatusTimestampTS()); |
| assertEquals(DateUtils.convertDateToTimestamp(ee), bean.getExpectedEndTS()); |
| assertEquals(DateUtils.convertDateToTimestamp(es), bean.getExpectedStartTS()); |
| } |
| |
| @Test |
| public void testToXmlStatusEvent() { |
| final SLAEventBean bean = new SLAEventBean(); |
| set(bean); |
| Element el = bean.toXml(); |
| String actualXml = XmlUtils.prettyPrint(el).toString(); |
| assertEquals("<event>\r\n" + " <sequence-id>1</sequence-id>\r\n" + " <status>\r\n" + " <sla-id>si</sla-id>\r\n" |
| + " <status-timestamp>1970-01-01T00:00Z</status-timestamp>\r\n" + " <job-status>STARTED</job-status>\r\n" |
| + " <job-data>jd</job-data>\r\n" + " <user>u</user>\r\n" + " <group>gn</group>\r\n" |
| + " <app-name>an</app-name>\r\n" + " </status>\r\n" + "</event>", actualXml); |
| } |
| |
| @Test |
| public void testToXmlRegistrationEvent() { |
| final SLAEventBean bean = new SLAEventBean(); |
| set(bean); |
| // Set "CREATED" status to get the event of registration kind: |
| bean.setJobStatus(org.apache.oozie.client.SLAEvent.Status.CREATED); |
| Element el = bean.toXml(); |
| String actualXml = XmlUtils.prettyPrint(el).toString(); |
| System.out.println(actualXml); |
| assertEquals("<event>\r\n" + " <sequence-id>1</sequence-id>\r\n" + " <registration>\r\n" + " <sla-id>si</sla-id>\r\n" |
| + " <app-type>WORKFLOW_ACTION</app-type>\r\n" + " <app-name>an</app-name>\r\n" + " <user>u</user>\r\n" |
| + " <group>gn</group>\r\n" + " <parent-sla-id>psi</parent-sla-id>\r\n" |
| + " <expected-start>1970-01-01T00:00Z</expected-start>\r\n" |
| + " <expected-end>1970-01-01T00:00Z</expected-end>\r\n" |
| + " <status-timestamp>1970-01-01T00:00Z</status-timestamp>\r\n" |
| + " <notification-msg>nm</notification-msg>\r\n" + " <alert-contact>ac</alert-contact>\r\n" |
| + " <dev-contact>dc</dev-contact>\r\n" + " <qa-contact>qc</qa-contact>\r\n" |
| + " <se-contact>sc</se-contact>\r\n" + " <alert-percentage>ap</alert-percentage>\r\n" |
| + " <alert-frequency>af</alert-frequency>\r\n" + " <upstream-apps>ua</upstream-apps>\r\n" |
| + " <job-status>CREATED</job-status>\r\n" + " <job-data>jd</job-data>\r\n" + " </registration>\r\n" |
| + "</event>", actualXml); |
| } |
| |
| } |