Add date to locale string

This commit is contained in:
Sendil Kumar 2018-06-25 10:15:02 +02:00
parent c0aba821d5
commit 4e05bc470f
2 changed files with 41 additions and 1 deletions

View File

@ -376,7 +376,19 @@ extern {
#[wasm_bindgen] #[wasm_bindgen]
extern { extern {
pub type Date; pub type Date;
/// The toLocaleString() method returns a string with a language sensitive
/// representation of this date. The new locales and options arguments
/// let applications specify the language whose formatting conventions
/// should be used and customize the behavior of the function.
/// In older implementations, which ignore the locales
/// and options arguments, the locale used and the form of the string
/// returned are entirely implementation dependent.
///
/// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString
#[wasm_bindgen(method, js_name = toLocaleString)]
pub fn to_locale_string(this: &Date, locale: JsString, options: JsValue) -> JsString;
/// The toLocaleTimeString() method returns a string with a language sensitive /// The toLocaleTimeString() method returns a string with a language sensitive
/// representation of the time portion of this date. The new locales and options /// representation of the time portion of this date. The new locales and options
/// arguments let applications specify the language whose formatting conventions should be /// arguments let applications specify the language whose formatting conventions should be

View File

@ -2,6 +2,34 @@
use super::project; use super::project;
#[test]
fn to_locale_string() {
project()
.file("src/lib.rs", r#"
#![feature(proc_macro, wasm_custom_section)]
extern crate wasm_bindgen;
use JsValue;
use wasm_bindgen::prelude::*;
use wasm_bindgen::js::{Date, JsString};
#[wasm_bindgen]
pub fn to_locale_string(this: &Date, locale: JsString, options: JsValue) -> JsString {
this.to_locale_string(locale, options)
}
"#)
.file("test.ts", r#"
import * as assert from "assert";
import * as wasm from "./out";
export function test() {
let date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));
assert.equal(wasm.to_locale_string(date, 'en-GB', { timeZone: 'UTC' }), "12/20/2012, 3:00:00 AM");
}
"#)
.test()
}
#[test] #[test]
fn to_locale_time_string() { fn to_locale_time_string() {
project() project()