MCPcopy Create free account
hub / github.com/ccxt/ccxt / testRoundTimeframe

Function testRoundTimeframe

js/src/test/base/test.timeframes.js:4–43  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

2import ccxt from '../../../ccxt.js';
3import { ROUND_DOWN, ROUND_UP } from '../../base/functions/number.js';
4function testRoundTimeframe() {
5 const exchange = new ccxt.Exchange({
6 'id': 'sampleexchange',
7 });
8 const testDate = exchange.parse8601('2019-08-12 13:22:08');
9 assert(exchange.roundTimeframe('5m', testDate, ROUND_DOWN) === exchange.parse8601('2019-08-12 13:20:00'));
10 assert(exchange.roundTimeframe('10m', testDate, ROUND_DOWN) === exchange.parse8601('2019-08-12 13:20:00'));
11 assert(exchange.roundTimeframe('30m', testDate, ROUND_DOWN) === exchange.parse8601('2019-08-12 13:00:00'));
12 assert(exchange.roundTimeframe('1d', testDate, ROUND_DOWN) === exchange.parse8601('2019-08-12 00:00:00'));
13 assert(exchange.roundTimeframe('5m', testDate, ROUND_UP) === exchange.parse8601('2019-08-12 13:25:00'));
14 assert(exchange.roundTimeframe('10m', testDate, ROUND_UP) === exchange.parse8601('2019-08-12 13:30:00'));
15 assert(exchange.roundTimeframe('30m', testDate, ROUND_UP) === exchange.parse8601('2019-08-12 13:30:00'));
16 assert(exchange.roundTimeframe('1h', testDate, ROUND_UP) === exchange.parse8601('2019-08-12 14:00:00'));
17 assert(exchange.roundTimeframe('1d', testDate, ROUND_UP) === exchange.parse8601('2019-08-13 00:00:00'));
18 // todo:
19 // $this->assertSame(null, Exchange::iso8601(null));
20 // $this->assertSame(null, Exchange::iso8601(false));
21 // $this->assertSame(null, Exchange::iso8601([]));
22 // $this->assertSame(null, Exchange::iso8601('abracadabra'));
23 // $this->assertSame(null, Exchange::iso8601('1.2'));
24 // $this->assertSame(null, Exchange::iso8601(-1));
25 // $this->assertSame(null, Exchange::iso8601('-1'));
26 // $this->assertSame('1970-01-01T00:00:00.000+00:00', Exchange::iso8601(0));
27 // $this->assertSame('1970-01-01T00:00:00.000+00:00', Exchange::iso8601('0'));
28 // $this->assertSame('1986-04-25T21:23:47.000+00:00', Exchange::iso8601(514848227000));
29 // $this->assertSame('1986-04-25T21:23:47.000+00:00', Exchange::iso8601('514848227000'));
30 // $this->assertSame(null, Exchange::parse_date(null));
31 // $this->assertSame(null, Exchange::parse_date(0));
32 // $this->assertSame(null, Exchange::parse_date('0'));
33 // $this->assertSame(null, Exchange::parse_date('+1 day'));
34 // $this->assertSame(null, Exchange::parse_date('1986-04-25T21:23:47+00:00 + 1 week'));
35 // $this->assertSame(null, Exchange::parse_date('1 february'));
36 // $this->assertSame(null, Exchange::parse_date('1986-04-26'));
37 // $this->assertSame(0, Exchange::parse_date('1970-01-01T00:00:00.000+00:00'));
38 // $this->assertSame(514848227000, Exchange::parse_date('1986-04-25T21:23:47+00:00'));
39 // $this->assertSame(514848227000, Exchange::parse_date('1986-04-26T01:23:47+04:00'));
40 // $this->assertSame(514848227000, Exchange::parse_date('25 Apr 1986 21:23:47 GMT'));
41 // $this->assertSame(514862627000, Exchange::parse_date('1986-04-26T01:23:47.000Z'));
42 // $this->assertSame(514862627123, Exchange::parse_date('1986-04-26T01:23:47.123Z'));
43}
44function testParseTimeframe() {
45 const exchange = new ccxt.Exchange({
46 'id': 'sampleexchange',

Callers 1

testTimeframesFunction · 0.70

Calls 3

parse8601Method · 0.95
roundTimeframeMethod · 0.95
assertFunction · 0.50

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…