summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2014-08-14 18:19:55 +0200
committerAleksander Machniak <alec@alec.pl>2014-08-14 18:19:55 +0200
commit5f17657e82abfae6bce0027e243e22a4183174a6 (patch)
tree5d07b7849f2cb7beeb4515ea066f1d64a03aee1f /tests
parent0fddf7a6a23f4940fcd4c2c3b646cc4d3c01db8b (diff)
Support contacts import in GMail CSV format
Diffstat (limited to 'tests')
-rw-r--r--tests/Framework/Csv2vcard.php18
-rw-r--r--tests/src/Csv2vcard/gmail.csvbin0 -> 3760 bytes
-rw-r--r--tests/src/Csv2vcard/gmail.vcf25
3 files changed, 43 insertions, 0 deletions
diff --git a/tests/Framework/Csv2vcard.php b/tests/Framework/Csv2vcard.php
index 5d52efc58..4f48dfaa2 100644
--- a/tests/Framework/Csv2vcard.php
+++ b/tests/Framework/Csv2vcard.php
@@ -55,4 +55,22 @@ class Framework_Csv2vcard extends PHPUnit_Framework_TestCase
$vcard = trim(str_replace("\r\n", "\n", $vcard));
$this->assertEquals($vcf_text, $vcard);
}
+
+ function test_import_gmail()
+ {
+ $csv_text = file_get_contents(TESTS_DIR . '/src/Csv2vcard/gmail.csv');
+ $vcf_text = file_get_contents(TESTS_DIR . '/src/Csv2vcard/gmail.vcf');
+
+ $csv = new rcube_csv2vcard;
+ $csv->import($csv_text);
+ $result = $csv->export();
+ $vcard = $result[0]->export(false);
+
+ $this->assertCount(1, $result);
+
+ $vcf_text = trim(str_replace("\r\n", "\n", $vcf_text));
+ $vcard = trim(str_replace("\r\n", "\n", $vcard));
+
+ $this->assertEquals($vcf_text, $vcard);
+ }
}
diff --git a/tests/src/Csv2vcard/gmail.csv b/tests/src/Csv2vcard/gmail.csv
new file mode 100644
index 000000000..9f67fe9f5
--- /dev/null
+++ b/tests/src/Csv2vcard/gmail.csv
Binary files differ
diff --git a/tests/src/Csv2vcard/gmail.vcf b/tests/src/Csv2vcard/gmail.vcf
new file mode 100644
index 000000000..5337d7e63
--- /dev/null
+++ b/tests/src/Csv2vcard/gmail.vcf
@@ -0,0 +1,25 @@
+BEGIN:VCARD
+VERSION:3.0
+FN:Prefix Firstname Middle Lastname Suffix
+N:Lastname;Firstname;Middle;Prefix;Suffix
+NICKNAME:nick
+BDAY;VALUE=date:1975-12-12
+NOTE:note"note
+CATEGORIES:My Contacts
+EMAIL;TYPE=INTERNET;TYPE=HOME:home@aaa.pl
+EMAIL;TYPE=INTERNET;TYPE=WORK:work@email.pl
+TEL;TYPE=pager:pager
+TEL;TYPE=pref:mainphone
+TEL;TYPE=home:homephone
+TEL;TYPE=homefax:homefax
+TEL;TYPE=cell:mobile
+TEL;TYPE=work:workphone
+TEL;TYPE=workfax:workfax
+X-SPOUSE:spouse
+URL;TYPE=profile:test.com
+URL;TYPE=homepage:home.page.com
+ORG:company
+TITLE:jobtitle
+ADR;TYPE=home:;;home_street;home_city;home_state;home_zip;home_country
+ADR;TYPE=work:;;work_street;work_city;;work_zip;work_country
+END:VCARD