bindings for Date.prototype.getFullYear()

This commit is contained in:
toversus 2018-07-04 19:52:12 +09:00
parent 3007e813ea
commit e95994fd19
2 changed files with 42 additions and 0 deletions

View File

@ -670,6 +670,12 @@ extern "C" {
#[wasm_bindgen(method, js_name = getDay)]
pub fn get_day(this: &Date) -> Number;
/// The getFullYear() method returns the year of the specified date according to local time.
///
/// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getFullYear
#[wasm_bindgen(method, js_name = getFullYear)]
pub fn get_full_year(this: &Date) -> Number;
/// Creates a JavaScript Date instance that represents
/// a single moment in time. Date objects are based on a time value that is
/// the number of milliseconds since 1 January 1970 UTC.

View File

@ -36,6 +36,42 @@ fn get_day() {
.test()
}
#[test]
fn get_full_year() {
project()
.file(
"src/lib.rs",
r#"
#![feature(proc_macro, wasm_custom_section)]
extern crate wasm_bindgen;
use wasm_bindgen::prelude::*;
use wasm_bindgen::js::{Date, Number};
#[wasm_bindgen]
pub fn get_full_year(this: &Date) -> Number {
this.get_full_year()
}
"#,
)
.file(
"test.ts",
r#"
import * as assert from "assert";
import * as wasm from "./out";
export function test() {
let date = new Date('July 20, 1969 00:20:18');
let abbrDate = new Date('Thu, 06 Sep 12 00:00:00');
assert.equal(wasm.get_full_year(date), 1969);
assert.equal(wasm.get_full_year(abbrDate), 2012);
}
"#,
)
.test()
}
#[test]
fn new() {
project()