package net.hockeyapp.android.objects.metrics;
import junit.framework.Assert;
import junit.framework.TestCase;
import net.hockeyapp.android.metrics.model.Base;
import net.hockeyapp.android.metrics.model.Envelope;
import java.io.IOException;
import java.io.StringWriter;
import java.util.LinkedHashMap;
import java.util.Map;
/// <summary>
/// Data contract test class EnvelopeTests.
/// </summary>
public class EnvelopeTests extends TestCase {
public void testVerProperty() {
int expected = 123;
Envelope item = new Envelope();
item.setVer(expected);
int actual = item.getVer();
Assert.assertEquals(expected, actual);
expected = 456;
item.setVer(expected);
actual = item.getVer();
Assert.assertEquals(expected, actual);
}
public void testNameProperty() {
String expected = "Test string";
Envelope item = new Envelope();
item.setName(expected);
String actual = item.getName();
Assert.assertEquals(expected, actual);
expected = "Other string";
item.setName(expected);
actual = item.getName();
Assert.assertEquals(expected, actual);
}
public void testTimeProperty() {
String expected = "Test string";
Envelope item = new Envelope();
item.setTime(expected);
String actual = item.getTime();
Assert.assertEquals(expected, actual);
expected = "Other string";
item.setTime(expected);
actual = item.getTime();
Assert.assertEquals(expected, actual);
}
public void testI_keyProperty() {
String expected = "Test string";
Envelope item = new Envelope();
item.setIKey(expected);
String actual = item.getIKey();
Assert.assertEquals(expected, actual);
expected = "Other string";
item.setIKey(expected);
actual = item.getIKey();
Assert.assertEquals(expected, actual);
}
public void testFlagsProperty() {
long expected = 42;
Envelope item = new Envelope();
item.setFlags(expected);
long actual = item.getFlags();
Assert.assertEquals(expected, actual);
expected = 13;
item.setFlags(expected);
actual = item.getFlags();
Assert.assertEquals(expected, actual);
}
public void testOsProperty() {
String expected = "Test string";
Envelope item = new Envelope();
item.setOs(expected);
String actual = item.getOs();
Assert.assertEquals(expected, actual);
expected = "Other string";
item.setOs(expected);
actual = item.getOs();
Assert.assertEquals(expected, actual);
}
public void testOs_verProperty() {
String expected = "Test string";
Envelope item = new Envelope();
item.setOsVer(expected);
String actual = item.getOsVer();
Assert.assertEquals(expected, actual);
expected = "Other string";
item.setOsVer(expected);
actual = item.getOsVer();
Assert.assertEquals(expected, actual);
}
public void testApp_idProperty() {
String expected = "Test string";
Envelope item = new Envelope();
item.setAppId(expected);
String actual = item.getAppId();
Assert.assertEquals(expected, actual);
expected = "Other string";
item.setAppId(expected);
actual = item.getAppId();
Assert.assertEquals(expected, actual);
}
public void testApp_verProperty() {
String expected = "Test string";
Envelope item = new Envelope();
item.setAppVer(expected);
String actual = item.getAppVer();
Assert.assertEquals(expected, actual);
expected = "Other string";
item.setAppVer(expected);
actual = item.getAppVer();
Assert.assertEquals(expected, actual);
}
public void testTagsProperty() {
Envelope item = new Envelope();
LinkedHashMap<String, String> actual = (LinkedHashMap<String, String>) item.getTags();
Assert.assertNotNull(actual);
}
public void testDataProperty() {
Base expected = new Base();
Envelope item = new Envelope();
item.setData(expected);
Base actual = item.getData();
Assert.assertEquals(expected, actual);
expected = new Base();
item.setData(expected);
actual = item.getData();
Assert.assertEquals(expected, actual);
}
public void testSerialize() throws IOException {
Envelope item = new Envelope();
item.setVer(1234);
item.setName("Test string");
item.setTime("Test string");
item.setIKey("Test string");
item.setFlags(42);
item.setOs("Test string");
item.setOsVer("Test string");
item.setAppId("Test string");
item.setAppVer("Test string");
for (Map.Entry<String, String> entry : new LinkedHashMap<String, String>() {{
put("key1", "test value 1");
put("key2", "test value 2");
}}.entrySet()) {
item.getTags().put(entry.getKey(), entry.getValue());
}
item.setData(new Base());
StringWriter writer = new StringWriter();
item.serialize(writer);
String expected = "{\"ver\":1234,\"name\":\"Test string\",\"time\":\"Test string\",\"sampleRate\":100,\"iKey\":\"Test string\",\"flags\":42,\"os\":\"Test string\",\"osVer\":\"Test string\",\"appId\":\"Test string\",\"appVer\":\"Test string\",\"tags\":{\"key1\":\"test value 1\",\"key2\":\"test value 2\"},\"data\":{}}";
Assert.assertEquals(expected, writer.toString());
}
}