add conditionals so wasm tests build / run in the right places
This commit is contained in:
parent
5d38faeb40
commit
c284d7364b
20
ci/travis.sh
20
ci/travis.sh
|
@ -48,15 +48,17 @@ build_and_test() {
|
||||||
channel build -v --no-default-features --features serde,rustc-serialize
|
channel build -v --no-default-features --features serde,rustc-serialize
|
||||||
TZ=Asia/Katmandu channel test -v --no-default-features --features serde,rustc-serialize --lib
|
TZ=Asia/Katmandu channel test -v --no-default-features --features serde,rustc-serialize --lib
|
||||||
|
|
||||||
# wasm tests
|
if [ -n "${TRAVIS}" ]; then
|
||||||
touch tests/wasm.rs # ensure rebuild happens so TZ / NOW take effect
|
# wasm tests
|
||||||
TZ=ACST-9:30 NOW=$(date +%s) wasm-pack test --node
|
touch tests/wasm.rs # ensure rebuild happens so TZ / NOW take effect
|
||||||
touch tests/wasm.rs
|
TZ=ACST-9:30 NOW=$(date +%s) wasm-pack test --node
|
||||||
TZ=EST4 NOW=$(date +%s) wasm-pack test --node
|
touch tests/wasm.rs
|
||||||
touch tests/wasm.rs
|
TZ=EST4 NOW=$(date +%s) wasm-pack test --node
|
||||||
TZ=UTC0 NOW=$(date +%s) wasm-pack test --node
|
touch tests/wasm.rs
|
||||||
touch tests/wasm.rs
|
TZ=UTC0 NOW=$(date +%s) wasm-pack test --node
|
||||||
TZ=Asia/Katmandu NOW=$(date +%s) wasm-pack test --node
|
touch tests/wasm.rs
|
||||||
|
TZ=Asia/Katmandu NOW=$(date +%s) wasm-pack test --node
|
||||||
|
fi
|
||||||
|
|
||||||
if [[ "$CHANNEL" == stable ]]; then
|
if [[ "$CHANNEL" == stable ]]; then
|
||||||
if [[ -n "$TRAVIS" ]] ; then
|
if [[ -n "$TRAVIS" ]] ; then
|
||||||
|
|
|
@ -1,27 +1,30 @@
|
||||||
extern crate chrono;
|
#[cfg(target_arch = "wasm32")]
|
||||||
extern crate wasm_bindgen_test;
|
mod test {
|
||||||
|
extern crate chrono;
|
||||||
|
extern crate wasm_bindgen_test;
|
||||||
|
|
||||||
use chrono::prelude::*;
|
use self::chrono::prelude::*;
|
||||||
use wasm_bindgen_test::*;
|
use self::wasm_bindgen_test::*;
|
||||||
|
|
||||||
use std::env;
|
use std::env;
|
||||||
|
|
||||||
#[wasm_bindgen_test]
|
#[wasm_bindgen_test]
|
||||||
fn now() {
|
fn now() {
|
||||||
let utc: DateTime<Utc> = Utc::now();
|
let utc: DateTime<Utc> = Utc::now();
|
||||||
let local: DateTime<Local> = Local::now();
|
let local: DateTime<Local> = Local::now();
|
||||||
|
|
||||||
// Ensure time fetched is correct
|
// Ensure time fetched is correct
|
||||||
let actual = Utc.datetime_from_str(env!("NOW"), "%s").unwrap();
|
let actual = Utc.datetime_from_str(env!("NOW"), "%s").unwrap();
|
||||||
assert!(utc - actual < chrono::Duration::minutes(5));
|
assert!(utc - actual < chrono::Duration::minutes(5));
|
||||||
|
|
||||||
// Ensure offset retrieved when getting local time is correct
|
// Ensure offset retrieved when getting local time is correct
|
||||||
let expected_offset = match env!("TZ") {
|
let expected_offset = match env!("TZ") {
|
||||||
"ACST-9:30" => FixedOffset::east(19 * 30 * 60),
|
"ACST-9:30" => FixedOffset::east(19 * 30 * 60),
|
||||||
"Asia/Katmandu" => FixedOffset::east(23 * 15 * 60), // No DST thankfully
|
"Asia/Katmandu" => FixedOffset::east(23 * 15 * 60), // No DST thankfully
|
||||||
"EST4" => FixedOffset::east(-4 * 60 * 60),
|
"EST4" => FixedOffset::east(-4 * 60 * 60),
|
||||||
"UTC0" => FixedOffset::east(0),
|
"UTC0" => FixedOffset::east(0),
|
||||||
_ => panic!("unexpected TZ"),
|
_ => panic!("unexpected TZ"),
|
||||||
};
|
};
|
||||||
assert_eq!(&expected_offset, local.offset());
|
assert_eq!(&expected_offset, local.offset());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue