summaryrefslogtreecommitdiff
path: root/android/sdl_android/src/androidTest/java/com/smartdevicelink/test/trace/MimeTests.java
blob: c28d4af879b4e7950a44adad27866d2766704884 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package com.smartdevicelink.test.trace;

import com.smartdevicelink.test.TestValues;
import com.smartdevicelink.trace.Mime;

import junit.framework.TestCase;

import java.io.UnsupportedEncodingException;

/**
 * This is a unit test class for the SmartDeviceLink library project class : 
 * {@link com.smartdevicelink.trace.Mime}
 */
public class MimeTests extends TestCase {
	
	/**
	 * This is a unit test for the following methods : 
	 * {@link com.smartdevicelink.trace.Mime#base64Encode(byte[])}
	 * {@link com.smartdevicelink.trace.Mime#base64Encode(String)}
	 * {@link com.smartdevicelink.trace.Mime#base64Encode(byte[], int, int)}
	 */
	public void testEncoding () {
		
		try {
			// Test Values
			String testString  = "test";
			byte[] testBytes   = testString.getBytes("US-ASCII");
			
			// Comparison Values
			String expectedEncodedString = "dGVzdA==";
			String actualNullResult1    = Mime.base64Encode((byte[]) null);
			String actualNullResult2    = Mime.base64Encode((String) null);	
			String actualNullResult3    = Mime.base64Encode(null, 0, 0); 
			String actualInvalidResult  = Mime.base64Encode(testBytes, 35, 2);
			String actualEncodedString1 = Mime.base64Encode(testString);
			String actualEncodedString2 = Mime.base64Encode(testBytes);
			String actualEncodedString3 = Mime.base64Encode(testBytes, 0, testBytes.length);
			
			// Valid Tests
			assertEquals(TestValues.MATCH, expectedEncodedString, actualEncodedString1);
			assertEquals(TestValues.MATCH, expectedEncodedString, actualEncodedString2);
			assertEquals(TestValues.MATCH, expectedEncodedString, actualEncodedString3);
			
			// Invalid/Null Tests
			assertNull(TestValues.NULL, actualNullResult1);
			assertNull(TestValues.NULL, actualNullResult2);
			assertNull(TestValues.NULL, actualNullResult3);
			assertNull(TestValues.NULL, actualInvalidResult);
						
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
	}
}