UNPKG

vcard4

Version:

An RFC 6350 compliant JavaScript library for generating and parsing version 4.0 vCards. Can also generate RFC 6351 compliant XML vCards and RFC 7095 compliant jCards. TypeScript type declarations are provided.

41 lines (37 loc) 1.34 kB
import { LanguageTagType, IntegerType } from "../../src/values/index.js"; import { LabelParameter } from "../../src/parameters/index.js"; import { LangProperty } from "../../src/properties/index.js"; import { assert } from "chai"; describe("LangProperty tests", () => { it("Accepts valid input", () => { assert.doesNotThrow(() => new LangProperty([], new LanguageTagType("fr"))); }); it("Rejects invalid input", () => { assert.throws(() => new LangProperty([], new IntegerType(55))); assert.throws( () => new LangProperty( [new LabelParameter("Hello world")], new LanguageTagType("fr") ) ); assert.throws(() => new LangProperty()); assert.throws(() => new LangProperty(1)); assert.throws(() => new LangProperty({})); assert.throws(() => new LangProperty("James Bond")); }); it("Formats value properly", () => { assert.strictEqual( new LangProperty([], new LanguageTagType("fr")).repr(), "LANG:fr" ); assert.strictEqual( new LangProperty([], new LanguageTagType("fr")).reprXML(), "<lang><language-tag>fr</language-tag></lang>" ); assert.deepEqual( new LangProperty([], new LanguageTagType("fr")).reprJSON(), ["lang", {}, "language-tag", "fr"] ); }); });