mirror of
https://github.com/rustwasm/wasm-bindgen.git
synced 2024-12-25 11:02:11 +03:00
Merge pull request #385 from toVersus/js_date
bindings for date.getDay/getFullYear
This commit is contained in:
commit
2694dd4dee
13
src/js.rs
13
src/js.rs
@ -755,6 +755,19 @@ extern "C" {
|
||||
extern "C" {
|
||||
pub type Date;
|
||||
|
||||
/// The getDay() method returns the day of the week for the specified date according to local time,
|
||||
/// where 0 represents Sunday. For the day of the month see getDate().
|
||||
///
|
||||
/// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getDay
|
||||
#[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.
|
||||
|
@ -2,6 +2,76 @@
|
||||
|
||||
use super::project;
|
||||
|
||||
#[test]
|
||||
fn get_day() {
|
||||
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_day(this: &Date) -> Number {
|
||||
this.get_day()
|
||||
}
|
||||
"#,
|
||||
)
|
||||
.file(
|
||||
"test.ts",
|
||||
r#"
|
||||
import * as assert from "assert";
|
||||
import * as wasm from "./out";
|
||||
|
||||
export function test() {
|
||||
let date = new Date('August 19, 1975 23:15:30');
|
||||
|
||||
assert.equal(wasm.get_day(date), 2);
|
||||
}
|
||||
"#,
|
||||
)
|
||||
.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()
|
||||
|
Loading…
Reference in New Issue
Block a user