1
0
Fork 0
mirror of https://codeberg.org/Mercury-IM/Smack synced 2025-09-10 18:59:41 +02:00

SMACK-413 fixed vCard parsing regarding the PHOTO element. Moved vCard test cases to unit-test where appropriate. Added testcases for vCard PHOTO parsing.

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13586 b35dd754-fafc-0310-a699-88a17e54d16e
This commit is contained in:
Florian Schmaus 2013-03-23 00:30:59 +00:00 committed by flow
parent 374a12b73a
commit 07a0b8f722
5 changed files with 197 additions and 52 deletions

View file

@ -272,8 +272,6 @@ public abstract class SmackTestCase extends TestCase {
try {
getConnection(i).login(currentUser, currentPassword, "Smack");
} catch (XMPPException e) {
e.printStackTrace();
// Create the test accounts
if (!getConnection(0).getAccountManager().supportsAccountCreation())
fail("Server does not support account creation");

View file

@ -23,7 +23,6 @@ import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.test.SmackTestCase;
import org.jivesoftware.smack.util.StringUtils;
import org.jivesoftware.smackx.packet.VCard;
import org.jivesoftware.smackx.provider.VCardProvider;
/**
* Created by IntelliJ IDEA.
@ -81,36 +80,12 @@ public class VCardTest extends SmackTestCase {
//assertEquals("Should load another user's VCard successfully", origVCard.toString(), loaded.toString());
assertEquals("Should load another user's VCard successfully", origVCard, loaded);
}
public void testNoWorkHomeSpecifier_EMAIL() throws Throwable {
VCard card = VCardProvider.createVCardFromXML("<vcard><EMAIL><USERID>foo@fee.www.bar</USERID></EMAIL></vcard>");
assertEquals("foo@fee.www.bar", card.getEmailHome());
}
public void testNoWorkHomeSpecifier_TEL() throws Throwable {
VCard card = VCardProvider.createVCardFromXML("<vcard><TEL><FAX/><NUMBER>3443233</NUMBER></TEL></vcard>");
assertEquals("3443233", card.getPhoneWork("FAX"));
}
public void testNoWorkHomeSpecifier_ADDR() throws Throwable {
VCard card = VCardProvider.createVCardFromXML("<vcard><ADR><STREET>Some street</STREET><FF>ddss</FF></ADR></vcard>");
assertEquals("Some street", card.getAddressFieldWork("STREET"));
assertEquals("ddss", card.getAddressFieldWork("FF"));
}
public void testFN() throws Throwable {
VCard card = VCardProvider.createVCardFromXML("<vcard><FN>kir max</FN></vcard>");
assertEquals("kir max", card.getField("FN"));
// assertEquals("kir max", card.getFullName());
}
public void testBinaryAvatar() throws Throwable {
VCard card = new VCard();
card.setAvatar(getAvatarBinary());
card.save(getConnection(0));
System.out.println(card.getChildElementXML());
VCard loaded = new VCard();
try {
@ -120,8 +95,10 @@ public class VCardTest extends SmackTestCase {
e.printStackTrace();
fail(e.getMessage());
}
System.out.println(StringUtils.encodeBase64(loaded.getAvatar()));
assertEquals("Should load own Avatar successfully", card.getAvatar(), loaded.getAvatar());
byte[] initialAvatar = card.getAvatar();
byte[] loadedAvatar = loaded.getAvatar();
assertEquals("Should load own Avatar successfully", initialAvatar, loadedAvatar);
loaded = new VCard();
try {
@ -135,11 +112,11 @@ public class VCardTest extends SmackTestCase {
assertEquals("Should load avatar successfully", card.getAvatar(), loaded.getAvatar());
}
private byte[] getAvatarBinary() {
return StringUtils.decodeBase64(getAvatarEnconded());
public static byte[] getAvatarBinary() {
return StringUtils.decodeBase64(getAvatarEncoded());
}
private String getAvatarEnconded() {
public static String getAvatarEncoded() {
return "/9j/4AAQSkZJRgABAQEASABIAAD/4QAWRXhpZgAATU0AKgAAAAgAAAAAAAD/2wBDAAUDBAQEAwUE\n" +
"BAQFBQUGBwwIBwcHBw8LCwkMEQ8SEhEPERETFhwXExQaFRERGCEYGh0dHx8fExciJCIeJBweHx7/\n" +
"2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4e\n" +