deliveryreceiptparsertest.java

来自「JSMPP Examples to send and receive sms f」· Java 代码 · 共 82 行

JAVA
82
字号
package org.jsmpp.util;

import static org.testng.Assert.assertEquals;
import static org.testng.Assert.fail;

import java.util.Calendar;
import java.util.Date;

import org.jsmpp.bean.DeliveryReceipt;
import org.testng.annotations.Test;

/**
 * @author uudashr
 *
 */
public class DeliveryReceiptParserTest {
    private PDUDecomposer decomposer = new DefaultDecomposer();
    private static final String ORIGINAL_MESSAGE = "testing jsmpp bow";
    
    @Test
    public void parseTextWithLowerCase() {
        try {
            DeliveryReceipt delReceipt = decomposer.deliveryReceipt("id:0123456789 sub:001 dlvrd:001 submit date:0809011130 done date:0809011131 stat:DELIVRD err:000 text:" + ORIGINAL_MESSAGE);
            assertEquals(delReceipt.getText(), ORIGINAL_MESSAGE);
            
            Date submitDate = delReceipt.getSubmitDate();
            Date expectedSubmitDate = createDate(2008, 9, 1, 11, 30);
            assertEquals(submitDate, expectedSubmitDate);
            
            Date doneDate = delReceipt.getDoneDate();
            Date expectedDoneDate = createDate(2008, 9, 1, 11, 31);
            assertEquals(doneDate, expectedDoneDate);
        } catch (InvalidDeliveryReceiptException e) {
            fail("Failed parsing delivery receipt:" + e.getMessage());
        }
    }
    
    @Test
    public void parsingTextWithUpperCase() {
        try {
            DeliveryReceipt delReceipt = decomposer.deliveryReceipt("id:0123456789 sub:001 dlvrd:001 submit date:0809011130 done date:0809011131 stat:DELIVRD err:000 Text:" + ORIGINAL_MESSAGE);
            assertEquals(delReceipt.getText(), ORIGINAL_MESSAGE);
            
            Date submitDate = delReceipt.getSubmitDate();
            Date expectedSubmitDate = createDate(2008, 9, 1, 11, 30);
            assertEquals(submitDate, expectedSubmitDate);
            
            Date doneDate = delReceipt.getDoneDate();
            Date expectedDoneDate = createDate(2008, 9, 1, 11, 31);
            assertEquals(doneDate, expectedDoneDate);
        } catch (InvalidDeliveryReceiptException e) {
            fail("Failed parsing delivery receipt:" + e.getMessage());
        }
    }
    
    @Test
    public void parseWithNoTextAttribute() {
        try {
            DeliveryReceipt delReceipt = decomposer.deliveryReceipt("id:0123456789 sub:001 dlvrd:001 submit date:0809011130 done date:0809011131 stat:DELIVRD err:000 " + ORIGINAL_MESSAGE);
            assertEquals(delReceipt.getText(), null);
            
            Date submitDate = delReceipt.getSubmitDate();
            Date expectedSubmitDate = createDate(2008, 9, 1, 11, 30);
            assertEquals(submitDate, expectedSubmitDate);
            
            Date doneDate = delReceipt.getDoneDate();
            Date expectedDoneDate = createDate(2008, 9, 1, 11, 31);
            assertEquals(doneDate, expectedDoneDate);
        } catch (InvalidDeliveryReceiptException e) {
            e.printStackTrace();
            fail("Failed parsing delivery receipt:" + e.getMessage());
        }
    }
    
    private static Date createDate(int year, int month, int day, int hour, int minute) {
        Calendar cal = Calendar.getInstance();
        cal.set(year, month - 1, day, hour, minute, 0);
        cal.set(Calendar.MILLISECOND, 0);
        return cal.getTime();
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?