0s autopkgtest [08:29:44]: starting date and time: 2024-11-20 08:29:44+0000 0s autopkgtest [08:29:44]: git checkout: 6f3be7a8 Fix armhf LXD image generation for plucky 0s autopkgtest [08:29:44]: host juju-7f2275-prod-proposed-migration-environment-15; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.ui63fvys/out --timeout-copy=6000 -a i386 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed --apt-upgrade exchange-calendars --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=python3-defaults/3.12.7-1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor builder-cpu2-ram4-disk20 --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-15@bos03-31.secgroup --name adt-plucky-i386-exchange-calendars-20241120-082943-juju-7f2275-prod-proposed-migration-environment-15-41c310d5-9f43-49c5-8b4a-034f9c25e091 --image adt/ubuntu-plucky-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-15 --net-id=net_prod-proposed-migration-amd64 -e TERM=linux -e ''"'"'http_proxy=http://squid.internal:3128'"'"'' -e ''"'"'https_proxy=http://squid.internal:3128'"'"'' -e ''"'"'no_proxy=127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 735s autopkgtest [08:41:59]: testbed dpkg architecture: amd64 735s autopkgtest [08:41:59]: testbed apt version: 2.9.8 735s autopkgtest [08:41:59]: test architecture: i386 735s autopkgtest [08:41:59]: @@@@@@@@@@@@@@@@@@@@ test bed setup 736s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 737s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [57.1 kB] 737s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [13.5 kB] 737s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B] 737s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [841 kB] 738s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [47.4 kB] 738s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [91.9 kB] 738s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 Packages [32.6 kB] 738s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [683 kB] 739s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [263 kB] 739s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 Packages [7272 B] 739s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse i386 Packages [772 B] 739s Fetched 2118 kB in 3s (632 kB/s) 740s Reading package lists... 741s Reading package lists... 741s Building dependency tree... 741s Reading state information... 742s Calculating upgrade... 742s The following packages will be upgraded: 742s bpftrace curl fwupd-signed intel-microcode libaudit-common libaudit1 742s libcurl3t64-gnutls libcurl4t64 libselinux1 libsemanage-common libsemanage2 742s linux-base openssh-client openssh-server openssh-sftp-server python3-dbus 742s python3-gi python3-yaml 742s 18 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 742s Need to get 12.6 MB of archives. 742s After this operation, 1670 kB of additional disk space will be used. 742s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 libselinux1 amd64 3.7-3ubuntu1 [86.9 kB] 742s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 openssh-sftp-server amd64 1:9.9p1-3ubuntu1 [41.2 kB] 742s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 openssh-server amd64 1:9.9p1-3ubuntu1 [625 kB] 743s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 openssh-client amd64 1:9.9p1-3ubuntu1 [1080 kB] 744s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 libaudit-common all 1:4.0.2-2ubuntu1 [6578 B] 744s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 libaudit1 amd64 1:4.0.2-2ubuntu1 [53.9 kB] 745s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 libsemanage-common all 3.7-2build1 [7186 B] 745s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 libsemanage2 amd64 3.7-2build1 [105 kB] 745s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-dbus amd64 1.3.2-5build4 [110 kB] 745s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-gi amd64 3.50.0-3build1 [293 kB] 745s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-yaml amd64 6.0.2-1build1 [187 kB] 745s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 bpftrace amd64 0.21.2-2ubuntu3 [1787 kB] 748s Get:13 http://ftpmaster.internal/ubuntu plucky/main amd64 curl amd64 8.9.1-2ubuntu3 [243 kB] 748s Get:14 http://ftpmaster.internal/ubuntu plucky/main amd64 libcurl4t64 amd64 8.9.1-2ubuntu3 [420 kB] 749s Get:15 http://ftpmaster.internal/ubuntu plucky/main amd64 fwupd-signed amd64 1.55+1.7-1 [30.6 kB] 749s Get:16 http://ftpmaster.internal/ubuntu plucky/main amd64 libcurl3t64-gnutls amd64 8.9.1-2ubuntu3 [412 kB] 749s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-base all 4.10.1ubuntu1 [34.8 kB] 749s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 intel-microcode amd64 3.20241112.1ubuntu1 [7056 kB] 759s Preconfiguring packages ... 759s Fetched 12.6 MB in 17s (747 kB/s) 759s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75620 files and directories currently installed.) 759s Preparing to unpack .../libselinux1_3.7-3ubuntu1_amd64.deb ... 759s Unpacking libselinux1:amd64 (3.7-3ubuntu1) over (3.5-2ubuntu5) ... 759s Setting up libselinux1:amd64 (3.7-3ubuntu1) ... 759s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75620 files and directories currently installed.) 759s Preparing to unpack .../openssh-sftp-server_1%3a9.9p1-3ubuntu1_amd64.deb ... 759s Unpacking openssh-sftp-server (1:9.9p1-3ubuntu1) over (1:9.7p1-7ubuntu5) ... 759s Preparing to unpack .../openssh-server_1%3a9.9p1-3ubuntu1_amd64.deb ... 759s Unpacking openssh-server (1:9.9p1-3ubuntu1) over (1:9.7p1-7ubuntu5) ... 759s Preparing to unpack .../openssh-client_1%3a9.9p1-3ubuntu1_amd64.deb ... 759s Unpacking openssh-client (1:9.9p1-3ubuntu1) over (1:9.7p1-7ubuntu5) ... 759s Preparing to unpack .../libaudit-common_1%3a4.0.2-2ubuntu1_all.deb ... 759s Unpacking libaudit-common (1:4.0.2-2ubuntu1) over (1:4.0.1-1ubuntu2) ... 759s Setting up libaudit-common (1:4.0.2-2ubuntu1) ... 759s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75622 files and directories currently installed.) 759s Preparing to unpack .../libaudit1_1%3a4.0.2-2ubuntu1_amd64.deb ... 759s Unpacking libaudit1:amd64 (1:4.0.2-2ubuntu1) over (1:4.0.1-1ubuntu2) ... 759s Setting up libaudit1:amd64 (1:4.0.2-2ubuntu1) ... 759s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75622 files and directories currently installed.) 759s Preparing to unpack .../libsemanage-common_3.7-2build1_all.deb ... 759s Unpacking libsemanage-common (3.7-2build1) over (3.5-1build6) ... 760s Setting up libsemanage-common (3.7-2build1) ... 760s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75621 files and directories currently installed.) 760s Preparing to unpack .../libsemanage2_3.7-2build1_amd64.deb ... 760s Unpacking libsemanage2:amd64 (3.7-2build1) over (3.5-1build6) ... 760s Setting up libsemanage2:amd64 (3.7-2build1) ... 760s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75621 files and directories currently installed.) 760s Preparing to unpack .../0-python3-dbus_1.3.2-5build4_amd64.deb ... 760s Unpacking python3-dbus (1.3.2-5build4) over (1.3.2-5build3) ... 760s Preparing to unpack .../1-python3-gi_3.50.0-3build1_amd64.deb ... 760s Unpacking python3-gi (3.50.0-3build1) over (3.50.0-3) ... 760s Preparing to unpack .../2-python3-yaml_6.0.2-1build1_amd64.deb ... 760s Unpacking python3-yaml (6.0.2-1build1) over (6.0.2-1) ... 760s Preparing to unpack .../3-bpftrace_0.21.2-2ubuntu3_amd64.deb ... 760s Unpacking bpftrace (0.21.2-2ubuntu3) over (0.21.2-2ubuntu2) ... 760s Preparing to unpack .../4-curl_8.9.1-2ubuntu3_amd64.deb ... 760s Unpacking curl (8.9.1-2ubuntu3) over (8.9.1-2ubuntu2) ... 760s Preparing to unpack .../5-libcurl4t64_8.9.1-2ubuntu3_amd64.deb ... 760s Unpacking libcurl4t64:amd64 (8.9.1-2ubuntu3) over (8.9.1-2ubuntu2) ... 760s Preparing to unpack .../6-fwupd-signed_1.55+1.7-1_amd64.deb ... 760s Unpacking fwupd-signed (1.55+1.7-1) over (1.54+1.6-1build1) ... 760s Preparing to unpack .../7-libcurl3t64-gnutls_8.9.1-2ubuntu3_amd64.deb ... 760s Unpacking libcurl3t64-gnutls:amd64 (8.9.1-2ubuntu3) over (8.9.1-2ubuntu2) ... 760s Preparing to unpack .../8-linux-base_4.10.1ubuntu1_all.deb ... 760s Unpacking linux-base (4.10.1ubuntu1) over (4.5ubuntu9) ... 760s Preparing to unpack .../9-intel-microcode_3.20241112.1ubuntu1_amd64.deb ... 760s Unpacking intel-microcode (3.20241112.1ubuntu1) over (3.20240910.0ubuntu1) ... 760s Setting up python3-dbus (1.3.2-5build4) ... 760s Setting up linux-base (4.10.1ubuntu1) ... 760s Setting up libcurl4t64:amd64 (8.9.1-2ubuntu3) ... 760s Setting up bpftrace (0.21.2-2ubuntu3) ... 760s Setting up openssh-client (1:9.9p1-3ubuntu1) ... 760s Setting up intel-microcode (3.20241112.1ubuntu1) ... 761s intel-microcode: microcode will be updated at next boot 761s Setting up libcurl3t64-gnutls:amd64 (8.9.1-2ubuntu3) ... 761s Setting up fwupd-signed (1.55+1.7-1) ... 761s Setting up python3-yaml (6.0.2-1build1) ... 761s Setting up python3-gi (3.50.0-3build1) ... 761s Setting up curl (8.9.1-2ubuntu3) ... 761s Setting up openssh-sftp-server (1:9.9p1-3ubuntu1) ... 761s Setting up openssh-server (1:9.9p1-3ubuntu1) ... 761s Installing new version of config file /etc/ssh/moduli ... 762s Processing triggers for ufw (0.36.2-8) ... 762s Processing triggers for man-db (2.13.0-1) ... 763s Processing triggers for libc-bin (2.40-1ubuntu3) ... 763s Processing triggers for initramfs-tools (0.142ubuntu35) ... 763s update-initramfs: Generating /boot/initrd.img-6.11.0-8-generic 763s W: No lz4 in /usr/bin:/sbin:/bin, using gzip 771s Reading package lists... 771s Building dependency tree... 771s Reading state information... 771s 0 upgraded, 0 newly installed, 0 to remove and 48 not upgraded. 772s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease 772s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 772s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 772s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 773s Reading package lists... 773s Reading package lists... 773s Building dependency tree... 773s Reading state information... 773s Calculating upgrade... 773s The following NEW packages will be installed: 773s libjemalloc2 linux-headers-6.11.0-9 linux-headers-6.11.0-9-generic 773s linux-image-6.11.0-9-generic linux-modules-6.11.0-9-generic 773s linux-modules-extra-6.11.0-9-generic linux-sysctl-defaults 773s linux-tools-6.11.0-9 linux-tools-6.11.0-9-generic python3-bcrypt 773s python3-jaraco.text 773s The following packages will be upgraded: 773s apt apt-utils distro-info ethtool gir1.2-girepository-2.0 gir1.2-glib-2.0 773s iputils-ping iputils-tracepath libapt-pkg6.0t64 libclang1-19 773s libgirepository-1.0-1 libglib2.0-0t64 libglib2.0-data libllvm19 liblzma5 773s libnftables1 libnftnl11 libpam-modules libpam-modules-bin libpam-runtime 773s libpam0g libpolkit-agent-1-0 libpolkit-gobject-1-0 libpython3-stdlib 773s libunwind8 libxml2 linux-generic linux-headers-generic linux-headers-virtual 773s linux-image-generic linux-image-virtual linux-libc-dev linux-tools-common 773s linux-virtual nftables pinentry-curses python-apt-common python3 python3-apt 773s python3-attr python3-cryptography python3-jsonschema-specifications 773s python3-minimal python3-pkg-resources python3-rpds-py python3-setuptools 773s tmux xz-utils 773s 48 upgraded, 11 newly installed, 0 to remove and 0 not upgraded. 773s Need to get 248 MB of archives. 773s After this operation, 322 MB of additional disk space will be used. 773s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 liblzma5 amd64 5.6.3-1 [156 kB] 774s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libapt-pkg6.0t64 amd64 2.9.12 [1097 kB] 776s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 apt amd64 2.9.12 [1381 kB] 780s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 apt-utils amd64 2.9.12 [218 kB] 780s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libpam0g amd64 1.5.3-7ubuntu4 [69.6 kB] 780s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libpam-modules-bin amd64 1.5.3-7ubuntu4 [53.7 kB] 780s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libpam-modules amd64 1.5.3-7ubuntu4 [294 kB] 781s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-minimal amd64 3.12.7-1 [27.4 kB] 781s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3 amd64 3.12.7-1 [24.0 kB] 781s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libpython3-stdlib amd64 3.12.7-1 [10.0 kB] 781s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libpam-runtime all 1.5.3-7ubuntu4 [40.8 kB] 781s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 distro-info amd64 1.12 [20.0 kB] 781s Get:13 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 gir1.2-girepository-2.0 amd64 1.82.0-2 [25.3 kB] 781s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 gir1.2-glib-2.0 amd64 2.82.2-3 [182 kB] 781s Get:15 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libglib2.0-0t64 amd64 2.82.2-3 [1655 kB] 784s Get:16 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libgirepository-1.0-1 amd64 1.82.0-2 [88.7 kB] 784s Get:17 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 iputils-ping amd64 3:20240905-1 [46.8 kB] 784s Get:18 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libglib2.0-data all 2.82.2-3 [51.7 kB] 784s Get:19 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libxml2 amd64 2.12.7+dfsg+really2.9.14-0.2build1 [772 kB] 786s Get:20 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python-apt-common all 2.9.0ubuntu2 [20.3 kB] 786s Get:21 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-apt amd64 2.9.0ubuntu2 [182 kB] 786s Get:22 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 ethtool amd64 1:6.11-1 [258 kB] 787s Get:23 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 iputils-tracepath amd64 3:20240905-1 [13.3 kB] 787s Get:24 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 nftables amd64 1.1.1-1build1 [71.3 kB] 787s Get:25 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libnftnl11 amd64 1.2.8-1 [70.5 kB] 787s Get:26 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libnftables1 amd64 1.1.1-1build1 [419 kB] 788s Get:27 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 xz-utils amd64 5.6.3-1 [276 kB] 788s Get:28 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libllvm19 amd64 1:19.1.3-2ubuntu2 [28.6 MB] 831s Get:29 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libclang1-19 amd64 1:19.1.3-2ubuntu2 [8246 kB] 841s Get:30 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjemalloc2 amd64 5.3.0-2build1 [256 kB] 841s Get:31 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libpolkit-agent-1-0 amd64 125-2 [18.2 kB] 841s Get:32 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libpolkit-gobject-1-0 amd64 125-2 [49.7 kB] 841s Get:33 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libunwind8 amd64 1.7.2-1 [64.3 kB] 841s Get:34 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-modules-6.11.0-9-generic amd64 6.11.0-9.9 [40.6 MB] 893s Get:35 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-image-6.11.0-9-generic amd64 6.11.0-9.9 [15.1 MB] 912s Get:36 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-modules-extra-6.11.0-9-generic amd64 6.11.0-9.9 [118 MB] 1060s Get:37 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-generic amd64 6.11.0-9.9 [1734 B] 1060s Get:38 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-image-generic amd64 6.11.0-9.9 [10.8 kB] 1060s Get:39 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-virtual amd64 6.11.0-9.9 [1724 B] 1060s Get:40 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-image-virtual amd64 6.11.0-9.9 [10.8 kB] 1060s Get:41 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-headers-virtual amd64 6.11.0-9.9 [1644 B] 1060s Get:42 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-headers-6.11.0-9 all 6.11.0-9.9 [13.9 MB] 1076s Get:43 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-headers-6.11.0-9-generic amd64 6.11.0-9.9 [4109 kB] 1081s Get:44 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-headers-generic amd64 6.11.0-9.9 [10.7 kB] 1081s Get:45 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-libc-dev amd64 6.11.0-9.9 [1667 kB] 1083s Get:46 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-sysctl-defaults all 4.10.1ubuntu1 [5432 B] 1083s Get:47 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-tools-common all 6.11.0-9.9 [484 kB] 1084s Get:48 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-tools-6.11.0-9 amd64 6.11.0-9.9 [6201 kB] 1091s Get:49 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 linux-tools-6.11.0-9-generic amd64 6.11.0-9.9 [1790 B] 1091s Get:50 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 pinentry-curses amd64 1.3.1-0ubuntu1 [39.8 kB] 1091s Get:51 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-attr all 24.2.0-1 [50.2 kB] 1092s Get:52 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-bcrypt amd64 4.2.0-2.1 [248 kB] 1092s Get:53 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-cryptography amd64 43.0.0-1 [979 kB] 1093s Get:54 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-jaraco.text all 4.0.0-1 [11.5 kB] 1093s Get:55 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-rpds-py amd64 0.21.0-2ubuntu1 [323 kB] 1093s Get:56 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-jsonschema-specifications all 2023.12.1-2 [9116 B] 1093s Get:57 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-pkg-resources all 75.2.0-1 [134 kB] 1094s Get:58 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-setuptools all 75.2.0-1 [657 kB] 1094s Get:59 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 tmux amd64 3.5a-2 [563 kB] 1095s Preconfiguring packages ... 1095s Fetched 248 MB in 5min 22s (769 kB/s) 1095s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75653 files and directories currently installed.) 1095s Preparing to unpack .../liblzma5_5.6.3-1_amd64.deb ... 1095s Unpacking liblzma5:amd64 (5.6.3-1) over (5.6.2-2) ... 1095s Setting up liblzma5:amd64 (5.6.3-1) ... 1095s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75653 files and directories currently installed.) 1095s Preparing to unpack .../libapt-pkg6.0t64_2.9.12_amd64.deb ... 1095s Unpacking libapt-pkg6.0t64:amd64 (2.9.12) over (2.9.8) ... 1096s Setting up libapt-pkg6.0t64:amd64 (2.9.12) ... 1096s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75653 files and directories currently installed.) 1096s Preparing to unpack .../archives/apt_2.9.12_amd64.deb ... 1096s Unpacking apt (2.9.12) over (2.9.8) ... 1096s Setting up apt (2.9.12) ... 1096s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75650 files and directories currently installed.) 1096s Preparing to unpack .../apt-utils_2.9.12_amd64.deb ... 1096s Unpacking apt-utils (2.9.12) over (2.9.8) ... 1096s Preparing to unpack .../libpam0g_1.5.3-7ubuntu4_amd64.deb ... 1096s Unpacking libpam0g:amd64 (1.5.3-7ubuntu4) over (1.5.3-7ubuntu2) ... 1096s Setting up libpam0g:amd64 (1.5.3-7ubuntu4) ... 1097s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75650 files and directories currently installed.) 1097s Preparing to unpack .../libpam-modules-bin_1.5.3-7ubuntu4_amd64.deb ... 1097s Unpacking libpam-modules-bin (1.5.3-7ubuntu4) over (1.5.3-7ubuntu2) ... 1097s Setting up libpam-modules-bin (1.5.3-7ubuntu4) ... 1097s pam_namespace.service is a disabled or a static unit not running, not starting it. 1097s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75650 files and directories currently installed.) 1097s Preparing to unpack .../libpam-modules_1.5.3-7ubuntu4_amd64.deb ... 1097s Unpacking libpam-modules:amd64 (1.5.3-7ubuntu4) over (1.5.3-7ubuntu2) ... 1097s Setting up libpam-modules:amd64 (1.5.3-7ubuntu4) ... 1097s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75650 files and directories currently installed.) 1097s Preparing to unpack .../python3-minimal_3.12.7-1_amd64.deb ... 1097s Unpacking python3-minimal (3.12.7-1) over (3.12.6-0ubuntu1) ... 1097s Setting up python3-minimal (3.12.7-1) ... 1097s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75650 files and directories currently installed.) 1097s Preparing to unpack .../python3_3.12.7-1_amd64.deb ... 1097s Unpacking python3 (3.12.7-1) over (3.12.6-0ubuntu1) ... 1097s Preparing to unpack .../libpython3-stdlib_3.12.7-1_amd64.deb ... 1097s Unpacking libpython3-stdlib:amd64 (3.12.7-1) over (3.12.6-0ubuntu1) ... 1098s Preparing to unpack .../libpam-runtime_1.5.3-7ubuntu4_all.deb ... 1098s Unpacking libpam-runtime (1.5.3-7ubuntu4) over (1.5.3-7ubuntu2) ... 1098s Setting up libpam-runtime (1.5.3-7ubuntu4) ... 1098s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75650 files and directories currently installed.) 1098s Preparing to unpack .../00-distro-info_1.12_amd64.deb ... 1098s Unpacking distro-info (1.12) over (1.9) ... 1098s Preparing to unpack .../01-gir1.2-girepository-2.0_1.82.0-2_amd64.deb ... 1098s Unpacking gir1.2-girepository-2.0:amd64 (1.82.0-2) over (1.80.1-4) ... 1098s Preparing to unpack .../02-gir1.2-glib-2.0_2.82.2-3_amd64.deb ... 1098s Unpacking gir1.2-glib-2.0:amd64 (2.82.2-3) over (2.82.1-0ubuntu1) ... 1098s Preparing to unpack .../03-libglib2.0-0t64_2.82.2-3_amd64.deb ... 1098s Unpacking libglib2.0-0t64:amd64 (2.82.2-3) over (2.82.1-0ubuntu1) ... 1098s Preparing to unpack .../04-libgirepository-1.0-1_1.82.0-2_amd64.deb ... 1098s Unpacking libgirepository-1.0-1:amd64 (1.82.0-2) over (1.80.1-4) ... 1098s Preparing to unpack .../05-iputils-ping_3%3a20240905-1_amd64.deb ... 1098s Unpacking iputils-ping (3:20240905-1) over (3:20240117-1build1) ... 1098s Preparing to unpack .../06-libglib2.0-data_2.82.2-3_all.deb ... 1098s Unpacking libglib2.0-data (2.82.2-3) over (2.82.1-0ubuntu1) ... 1098s Preparing to unpack .../07-libxml2_2.12.7+dfsg+really2.9.14-0.2build1_amd64.deb ... 1098s Unpacking libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.2build1) over (2.12.7+dfsg-3) ... 1098s Preparing to unpack .../08-python-apt-common_2.9.0ubuntu2_all.deb ... 1098s Unpacking python-apt-common (2.9.0ubuntu2) over (2.9.0ubuntu1) ... 1098s Preparing to unpack .../09-python3-apt_2.9.0ubuntu2_amd64.deb ... 1098s Unpacking python3-apt (2.9.0ubuntu2) over (2.9.0ubuntu1) ... 1098s Preparing to unpack .../10-ethtool_1%3a6.11-1_amd64.deb ... 1098s Unpacking ethtool (1:6.11-1) over (1:6.10-1) ... 1098s Preparing to unpack .../11-iputils-tracepath_3%3a20240905-1_amd64.deb ... 1098s Unpacking iputils-tracepath (3:20240905-1) over (3:20240117-1build1) ... 1098s Preparing to unpack .../12-nftables_1.1.1-1build1_amd64.deb ... 1098s Unpacking nftables (1.1.1-1build1) over (1.1.0-2) ... 1098s Preparing to unpack .../13-libnftnl11_1.2.8-1_amd64.deb ... 1098s Unpacking libnftnl11:amd64 (1.2.8-1) over (1.2.7-1) ... 1098s Preparing to unpack .../14-libnftables1_1.1.1-1build1_amd64.deb ... 1098s Unpacking libnftables1:amd64 (1.1.1-1build1) over (1.1.0-2) ... 1098s Preparing to unpack .../15-xz-utils_5.6.3-1_amd64.deb ... 1098s Unpacking xz-utils (5.6.3-1) over (5.6.2-2) ... 1098s Preparing to unpack .../16-libllvm19_1%3a19.1.3-2ubuntu2_amd64.deb ... 1098s Unpacking libllvm19:amd64 (1:19.1.3-2ubuntu2) over (1:19.1.2-1ubuntu1) ... 1099s Preparing to unpack .../17-libclang1-19_1%3a19.1.3-2ubuntu2_amd64.deb ... 1099s Unpacking libclang1-19 (1:19.1.3-2ubuntu2) over (1:19.1.2-1ubuntu1) ... 1099s Selecting previously unselected package libjemalloc2:amd64. 1099s Preparing to unpack .../18-libjemalloc2_5.3.0-2build1_amd64.deb ... 1099s Unpacking libjemalloc2:amd64 (5.3.0-2build1) ... 1099s Preparing to unpack .../19-libpolkit-agent-1-0_125-2_amd64.deb ... 1099s Unpacking libpolkit-agent-1-0:amd64 (125-2) over (124-2ubuntu1) ... 1099s Preparing to unpack .../20-libpolkit-gobject-1-0_125-2_amd64.deb ... 1099s Unpacking libpolkit-gobject-1-0:amd64 (125-2) over (124-2ubuntu1) ... 1099s Preparing to unpack .../21-libunwind8_1.7.2-1_amd64.deb ... 1099s Unpacking libunwind8:amd64 (1.7.2-1) over (1.6.2-3.1) ... 1099s Selecting previously unselected package linux-modules-6.11.0-9-generic. 1099s Preparing to unpack .../22-linux-modules-6.11.0-9-generic_6.11.0-9.9_amd64.deb ... 1099s Unpacking linux-modules-6.11.0-9-generic (6.11.0-9.9) ... 1100s Selecting previously unselected package linux-image-6.11.0-9-generic. 1100s Preparing to unpack .../23-linux-image-6.11.0-9-generic_6.11.0-9.9_amd64.deb ... 1100s Unpacking linux-image-6.11.0-9-generic (6.11.0-9.9) ... 1100s Selecting previously unselected package linux-modules-extra-6.11.0-9-generic. 1100s Preparing to unpack .../24-linux-modules-extra-6.11.0-9-generic_6.11.0-9.9_amd64.deb ... 1100s Unpacking linux-modules-extra-6.11.0-9-generic (6.11.0-9.9) ... 1101s Preparing to unpack .../25-linux-generic_6.11.0-9.9_amd64.deb ... 1101s Unpacking linux-generic (6.11.0-9.9) over (6.11.0-8.8) ... 1101s Preparing to unpack .../26-linux-image-generic_6.11.0-9.9_amd64.deb ... 1101s Unpacking linux-image-generic (6.11.0-9.9) over (6.11.0-8.8) ... 1101s Preparing to unpack .../27-linux-virtual_6.11.0-9.9_amd64.deb ... 1101s Unpacking linux-virtual (6.11.0-9.9) over (6.11.0-8.8) ... 1101s Preparing to unpack .../28-linux-image-virtual_6.11.0-9.9_amd64.deb ... 1101s Unpacking linux-image-virtual (6.11.0-9.9) over (6.11.0-8.8) ... 1101s Preparing to unpack .../29-linux-headers-virtual_6.11.0-9.9_amd64.deb ... 1101s Unpacking linux-headers-virtual (6.11.0-9.9) over (6.11.0-8.8) ... 1101s Selecting previously unselected package linux-headers-6.11.0-9. 1101s Preparing to unpack .../30-linux-headers-6.11.0-9_6.11.0-9.9_all.deb ... 1101s Unpacking linux-headers-6.11.0-9 (6.11.0-9.9) ... 1103s Selecting previously unselected package linux-headers-6.11.0-9-generic. 1103s Preparing to unpack .../31-linux-headers-6.11.0-9-generic_6.11.0-9.9_amd64.deb ... 1103s Unpacking linux-headers-6.11.0-9-generic (6.11.0-9.9) ... 1104s Preparing to unpack .../32-linux-headers-generic_6.11.0-9.9_amd64.deb ... 1104s Unpacking linux-headers-generic (6.11.0-9.9) over (6.11.0-8.8) ... 1105s Preparing to unpack .../33-linux-libc-dev_6.11.0-9.9_amd64.deb ... 1105s Unpacking linux-libc-dev:amd64 (6.11.0-9.9) over (6.11.0-8.8) ... 1105s Selecting previously unselected package linux-sysctl-defaults. 1105s Preparing to unpack .../34-linux-sysctl-defaults_4.10.1ubuntu1_all.deb ... 1105s Unpacking linux-sysctl-defaults (4.10.1ubuntu1) ... 1105s Preparing to unpack .../35-linux-tools-common_6.11.0-9.9_all.deb ... 1105s Unpacking linux-tools-common (6.11.0-9.9) over (6.11.0-8.8) ... 1105s Selecting previously unselected package linux-tools-6.11.0-9. 1105s Preparing to unpack .../36-linux-tools-6.11.0-9_6.11.0-9.9_amd64.deb ... 1105s Unpacking linux-tools-6.11.0-9 (6.11.0-9.9) ... 1105s Selecting previously unselected package linux-tools-6.11.0-9-generic. 1105s Preparing to unpack .../37-linux-tools-6.11.0-9-generic_6.11.0-9.9_amd64.deb ... 1105s Unpacking linux-tools-6.11.0-9-generic (6.11.0-9.9) ... 1105s Preparing to unpack .../38-pinentry-curses_1.3.1-0ubuntu1_amd64.deb ... 1105s Unpacking pinentry-curses (1.3.1-0ubuntu1) over (1.2.1-3ubuntu5) ... 1105s Preparing to unpack .../39-python3-attr_24.2.0-1_all.deb ... 1105s Unpacking python3-attr (24.2.0-1) over (23.2.0-2) ... 1105s Selecting previously unselected package python3-bcrypt. 1105s Preparing to unpack .../40-python3-bcrypt_4.2.0-2.1_amd64.deb ... 1105s Unpacking python3-bcrypt (4.2.0-2.1) ... 1105s Preparing to unpack .../41-python3-cryptography_43.0.0-1_amd64.deb ... 1105s Unpacking python3-cryptography (43.0.0-1) over (42.0.5-2build1) ... 1105s Selecting previously unselected package python3-jaraco.text. 1105s Preparing to unpack .../42-python3-jaraco.text_4.0.0-1_all.deb ... 1105s Unpacking python3-jaraco.text (4.0.0-1) ... 1105s Preparing to unpack .../43-python3-rpds-py_0.21.0-2ubuntu1_amd64.deb ... 1105s Unpacking python3-rpds-py (0.21.0-2ubuntu1) over (0.20.0-0ubuntu3) ... 1105s Preparing to unpack .../44-python3-jsonschema-specifications_2023.12.1-2_all.deb ... 1106s Unpacking python3-jsonschema-specifications (2023.12.1-2) over (2023.12.1-1ubuntu1) ... 1106s Preparing to unpack .../45-python3-pkg-resources_75.2.0-1_all.deb ... 1106s Unpacking python3-pkg-resources (75.2.0-1) over (74.1.2-1) ... 1106s Preparing to unpack .../46-python3-setuptools_75.2.0-1_all.deb ... 1106s Unpacking python3-setuptools (75.2.0-1) over (74.1.2-1) ... 1106s Preparing to unpack .../47-tmux_3.5a-2_amd64.deb ... 1106s Unpacking tmux (3.5a-2) over (3.4-7) ... 1106s Setting up pinentry-curses (1.3.1-0ubuntu1) ... 1106s Setting up distro-info (1.12) ... 1106s Setting up apt-utils (2.9.12) ... 1106s Setting up linux-libc-dev:amd64 (6.11.0-9.9) ... 1106s Setting up libnftnl11:amd64 (1.2.8-1) ... 1106s Setting up libjemalloc2:amd64 (5.3.0-2build1) ... 1106s Setting up libunwind8:amd64 (1.7.2-1) ... 1106s Setting up libglib2.0-0t64:amd64 (2.82.2-3) ... 1106s No schema files found: doing nothing. 1106s Setting up libglib2.0-data (2.82.2-3) ... 1106s Setting up linux-sysctl-defaults (4.10.1ubuntu1) ... 1106s Setting up xz-utils (5.6.3-1) ... 1106s Setting up linux-headers-6.11.0-9 (6.11.0-9.9) ... 1106s Setting up gir1.2-glib-2.0:amd64 (2.82.2-3) ... 1106s Setting up python-apt-common (2.9.0ubuntu2) ... 1106s Setting up libgirepository-1.0-1:amd64 (1.82.0-2) ... 1106s Setting up linux-tools-common (6.11.0-9.9) ... 1106s Setting up iputils-ping (3:20240905-1) ... 1106s Setting up libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.2build1) ... 1106s Setting up tmux (3.5a-2) ... 1106s Setting up linux-modules-6.11.0-9-generic (6.11.0-9.9) ... 1108s Setting up libpolkit-gobject-1-0:amd64 (125-2) ... 1108s Setting up iputils-tracepath (3:20240905-1) ... 1108s Setting up libpython3-stdlib:amd64 (3.12.7-1) ... 1108s Setting up ethtool (1:6.11-1) ... 1108s Setting up libllvm19:amd64 (1:19.1.3-2ubuntu2) ... 1108s Setting up libnftables1:amd64 (1.1.1-1build1) ... 1108s Setting up nftables (1.1.1-1build1) ... 1108s Setting up libclang1-19 (1:19.1.3-2ubuntu2) ... 1108s Setting up linux-modules-extra-6.11.0-9-generic (6.11.0-9.9) ... 1110s Setting up python3 (3.12.7-1) ... 1110s Setting up linux-headers-6.11.0-9-generic (6.11.0-9.9) ... 1110s Setting up gir1.2-girepository-2.0:amd64 (1.82.0-2) ... 1110s Setting up python3-jaraco.text (4.0.0-1) ... 1110s Setting up linux-image-6.11.0-9-generic (6.11.0-9.9) ... 1112s I: /boot/vmlinuz is now a symlink to vmlinuz-6.11.0-9-generic 1112s I: /boot/initrd.img is now a symlink to initrd.img-6.11.0-9-generic 1112s Setting up linux-tools-6.11.0-9 (6.11.0-9.9) ... 1112s Setting up python3-rpds-py (0.21.0-2ubuntu1) ... 1112s Setting up libpolkit-agent-1-0:amd64 (125-2) ... 1112s Setting up linux-image-virtual (6.11.0-9.9) ... 1112s Setting up python3-jsonschema-specifications (2023.12.1-2) ... 1112s Setting up python3-pkg-resources (75.2.0-1) ... 1112s Setting up linux-tools-6.11.0-9-generic (6.11.0-9.9) ... 1112s Setting up python3-attr (24.2.0-1) ... 1112s Setting up linux-image-generic (6.11.0-9.9) ... 1112s Setting up python3-setuptools (75.2.0-1) ... 1113s Setting up python3-apt (2.9.0ubuntu2) ... 1113s Setting up python3-bcrypt (4.2.0-2.1) ... 1113s Setting up linux-headers-generic (6.11.0-9.9) ... 1113s Setting up python3-cryptography (43.0.0-1) ... 1113s Setting up linux-headers-virtual (6.11.0-9.9) ... 1113s Setting up linux-generic (6.11.0-9.9) ... 1113s Setting up linux-virtual (6.11.0-9.9) ... 1113s Processing triggers for libc-bin (2.40-1ubuntu3) ... 1113s Processing triggers for man-db (2.13.0-1) ... 1113s Processing triggers for debianutils (5.21) ... 1113s Processing triggers for linux-image-6.11.0-9-generic (6.11.0-9.9) ... 1113s /etc/kernel/postinst.d/initramfs-tools: 1113s update-initramfs: Generating /boot/initrd.img-6.11.0-9-generic 1113s W: No lz4 in /usr/bin:/sbin:/bin, using gzip 1120s /etc/kernel/postinst.d/zz-update-grub: 1120s Sourcing file `/etc/default/grub' 1120s Sourcing file `/etc/default/grub.d/50-cloudimg-settings.cfg' 1120s Sourcing file `/etc/default/grub.d/90-autopkgtest.cfg' 1120s Generating grub configuration file ... 1120s Found linux image: /boot/vmlinuz-6.11.0-9-generic 1120s Found initrd image: /boot/initrd.img-6.11.0-9-generic 1120s Found linux image: /boot/vmlinuz-6.11.0-8-generic 1120s Found initrd image: /boot/initrd.img-6.11.0-8-generic 1120s Warning: os-prober will not be executed to detect other bootable partitions. 1120s Systems on them will not be added to the GRUB boot configuration. 1120s Check GRUB_DISABLE_OS_PROBER documentation entry. 1120s Adding boot menu entry for UEFI Firmware Settings ... 1120s done 1121s Reading package lists... 1121s Building dependency tree... 1121s Reading state information... 1122s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1122s autopkgtest [08:48:26]: rebooting testbed after setup commands that affected boot 1139s autopkgtest [08:48:43]: testbed running kernel: Linux 6.11.0-9-generic #9-Ubuntu SMP PREEMPT_DYNAMIC Mon Oct 14 13:19:59 UTC 2024 1141s autopkgtest [08:48:45]: @@@@@@@@@@@@@@@@@@@@ apt-source exchange-calendars 1148s Get:1 http://ftpmaster.internal/ubuntu plucky/universe exchange-calendars 4.5.8-1 (dsc) [2569 B] 1148s Get:2 http://ftpmaster.internal/ubuntu plucky/universe exchange-calendars 4.5.8-1 (tar) [3760 kB] 1148s Get:3 http://ftpmaster.internal/ubuntu plucky/universe exchange-calendars 4.5.8-1 (diff) [3088 B] 1148s gpgv: Signature made Sun Nov 17 13:07:37 2024 UTC 1148s gpgv: using RSA key FB8ACFA78C726089C38AD0269605A1098C63B92A 1148s gpgv: Can't check signature: No public key 1148s dpkg-source: warning: cannot verify inline signature for ./exchange-calendars_4.5.8-1.dsc: no acceptable signature found 1149s autopkgtest [08:48:53]: testing package exchange-calendars version 4.5.8-1 1149s autopkgtest [08:48:53]: build not needed 1150s autopkgtest [08:48:54]: test run-tests: preparing testbed 1152s Note, using file '/tmp/autopkgtest.wMlJoC/1-autopkgtest-satdep.dsc' to get the build dependencies 1152s Reading package lists... 1152s Building dependency tree... 1152s Reading state information... 1153s Starting pkgProblemResolver with broken count: 0 1153s Starting 2 pkgProblemResolver with broken count: 0 1153s Done 1153s The following NEW packages will be installed: 1153s build-essential cpp cpp-14 cpp-14-x86-64-linux-gnu cpp-x86-64-linux-gnu g++ 1153s g++-14 g++-14-x86-64-linux-gnu g++-x86-64-linux-gnu gcc gcc-14 1153s gcc-14-x86-64-linux-gnu gcc-x86-64-linux-gnu libasan8 libblas3 libcc1-0 1153s libgcc-14-dev libgfortran5 libgomp1 libhwasan0 libisl23 libitm1 liblapack3 1153s liblsan0 libmpc3 libpython3.13-minimal libpython3.13-stdlib libquadmath0 1153s libstdc++-14-dev libtsan2 libubsan1 python3-all python3-dateutil 1153s python3-exchange-calendars python3-hypothesis python3-iniconfig 1153s python3-korean-lunar-calendar python3-numpy python3-packaging python3-pandas 1153s python3-pandas-lib python3-pluggy python3-pyluach python3-pytest 1153s python3-sortedcontainers python3-toolz python3-tz python3.13 1153s python3.13-minimal 1153s 0 upgraded, 49 newly installed, 0 to remove and 0 not upgraded. 1153s Need to get 92.9 MB of archives. 1153s After this operation, 373 MB of additional disk space will be used. 1153s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.13-minimal amd64 3.13.0-2 [879 kB] 1154s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13-minimal amd64 3.13.0-2 [2188 kB] 1156s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 libisl23 amd64 0.27-1 [685 kB] 1157s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 libmpc3 amd64 1.3.1-1build2 [55.3 kB] 1157s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-14-x86-64-linux-gnu amd64 14.2.0-8ubuntu1 [11.9 MB] 1169s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-14 amd64 14.2.0-8ubuntu1 [1030 B] 1169s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [5452 B] 1169s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp amd64 4:14.1.0-2ubuntu1 [22.4 kB] 1169s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 libcc1-0 amd64 14.2.0-8ubuntu1 [47.6 kB] 1170s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libgomp1 amd64 14.2.0-8ubuntu1 [148 kB] 1170s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 libitm1 amd64 14.2.0-8ubuntu1 [29.1 kB] 1170s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 libasan8 amd64 14.2.0-8ubuntu1 [2998 kB] 1173s Get:13 http://ftpmaster.internal/ubuntu plucky/main amd64 liblsan0 amd64 14.2.0-8ubuntu1 [1317 kB] 1174s Get:14 http://ftpmaster.internal/ubuntu plucky/main amd64 libtsan2 amd64 14.2.0-8ubuntu1 [2732 kB] 1177s Get:15 http://ftpmaster.internal/ubuntu plucky/main amd64 libubsan1 amd64 14.2.0-8ubuntu1 [1177 kB] 1178s Get:16 http://ftpmaster.internal/ubuntu plucky/main amd64 libhwasan0 amd64 14.2.0-8ubuntu1 [1634 kB] 1180s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 libquadmath0 amd64 14.2.0-8ubuntu1 [153 kB] 1180s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 libgcc-14-dev amd64 14.2.0-8ubuntu1 [2814 kB] 1183s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-14-x86-64-linux-gnu amd64 14.2.0-8ubuntu1 [23.3 MB] 1207s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-14 amd64 14.2.0-8ubuntu1 [528 kB] 1207s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [1214 B] 1207s Get:22 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc amd64 4:14.1.0-2ubuntu1 [5000 B] 1207s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 libstdc++-14-dev amd64 14.2.0-8ubuntu1 [2504 kB] 1210s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-14-x86-64-linux-gnu amd64 14.2.0-8ubuntu1 [13.3 MB] 1228s Get:25 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-14 amd64 14.2.0-8ubuntu1 [19.9 kB] 1228s Get:26 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [966 B] 1228s Get:27 http://ftpmaster.internal/ubuntu plucky/main amd64 g++ amd64 4:14.1.0-2ubuntu1 [1100 B] 1228s Get:28 http://ftpmaster.internal/ubuntu plucky/main amd64 build-essential amd64 12.10ubuntu1 [4928 B] 1228s Get:29 http://ftpmaster.internal/ubuntu plucky/main amd64 libblas3 amd64 3.12.0-3build2 [247 kB] 1228s Get:30 http://ftpmaster.internal/ubuntu plucky/main amd64 libgfortran5 amd64 14.2.0-8ubuntu1 [909 kB] 1230s Get:31 http://ftpmaster.internal/ubuntu plucky/main amd64 liblapack3 amd64 3.12.0-3build2 [2668 kB] 1233s Get:32 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.13-stdlib amd64 3.13.0-2 [2107 kB] 1236s Get:33 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13 amd64 3.13.0-2 [719 kB] 1237s Get:34 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-all amd64 3.12.7-1 [890 B] 1237s Get:35 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-dateutil all 2.9.0-3 [80.2 kB] 1237s Get:36 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-korean-lunar-calendar all 0.3.1-2 [9108 B] 1237s Get:37 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-numpy amd64 1:1.26.4+ds-11ubuntu1 [5319 kB] 1245s Get:38 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-tz all 2024.1-2 [31.4 kB] 1245s Get:39 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pandas-lib amd64 2.2.3+dfsg-5ubuntu1 [8271 kB] 1256s Get:40 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pandas all 2.2.3+dfsg-5ubuntu1 [3112 kB] 1260s Get:41 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pyluach all 2.2.0-1 [23.2 kB] 1260s Get:42 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-toolz all 1.0.0-1 [44.9 kB] 1260s Get:43 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-exchange-calendars all 4.5.8-1 [151 kB] 1261s Get:44 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-sortedcontainers all 2.4.0-2 [27.6 kB] 1261s Get:45 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 python3-hypothesis all 6.119.3-1 [329 kB] 1261s Get:46 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B] 1261s Get:47 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-packaging all 24.2-1 [51.5 kB] 1261s Get:48 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB] 1261s Get:49 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pytest all 8.3.3-1 [251 kB] 1262s Fetched 92.9 MB in 1min 48s (857 kB/s) 1262s Selecting previously unselected package libpython3.13-minimal:amd64. 1262s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 114362 files and directories currently installed.) 1262s Preparing to unpack .../00-libpython3.13-minimal_3.13.0-2_amd64.deb ... 1262s Unpacking libpython3.13-minimal:amd64 (3.13.0-2) ... 1262s Selecting previously unselected package python3.13-minimal. 1262s Preparing to unpack .../01-python3.13-minimal_3.13.0-2_amd64.deb ... 1262s Unpacking python3.13-minimal (3.13.0-2) ... 1262s Selecting previously unselected package libisl23:amd64. 1262s Preparing to unpack .../02-libisl23_0.27-1_amd64.deb ... 1262s Unpacking libisl23:amd64 (0.27-1) ... 1262s Selecting previously unselected package libmpc3:amd64. 1262s Preparing to unpack .../03-libmpc3_1.3.1-1build2_amd64.deb ... 1262s Unpacking libmpc3:amd64 (1.3.1-1build2) ... 1262s Selecting previously unselected package cpp-14-x86-64-linux-gnu. 1262s Preparing to unpack .../04-cpp-14-x86-64-linux-gnu_14.2.0-8ubuntu1_amd64.deb ... 1262s Unpacking cpp-14-x86-64-linux-gnu (14.2.0-8ubuntu1) ... 1262s Selecting previously unselected package cpp-14. 1263s Preparing to unpack .../05-cpp-14_14.2.0-8ubuntu1_amd64.deb ... 1263s Unpacking cpp-14 (14.2.0-8ubuntu1) ... 1263s Selecting previously unselected package cpp-x86-64-linux-gnu. 1263s Preparing to unpack .../06-cpp-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 1263s Unpacking cpp-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 1263s Selecting previously unselected package cpp. 1263s Preparing to unpack .../07-cpp_4%3a14.1.0-2ubuntu1_amd64.deb ... 1263s Unpacking cpp (4:14.1.0-2ubuntu1) ... 1263s Selecting previously unselected package libcc1-0:amd64. 1263s Preparing to unpack .../08-libcc1-0_14.2.0-8ubuntu1_amd64.deb ... 1263s Unpacking libcc1-0:amd64 (14.2.0-8ubuntu1) ... 1263s Selecting previously unselected package libgomp1:amd64. 1263s Preparing to unpack .../09-libgomp1_14.2.0-8ubuntu1_amd64.deb ... 1263s Unpacking libgomp1:amd64 (14.2.0-8ubuntu1) ... 1263s Selecting previously unselected package libitm1:amd64. 1263s Preparing to unpack .../10-libitm1_14.2.0-8ubuntu1_amd64.deb ... 1263s Unpacking libitm1:amd64 (14.2.0-8ubuntu1) ... 1263s Selecting previously unselected package libasan8:amd64. 1263s Preparing to unpack .../11-libasan8_14.2.0-8ubuntu1_amd64.deb ... 1263s Unpacking libasan8:amd64 (14.2.0-8ubuntu1) ... 1263s Selecting previously unselected package liblsan0:amd64. 1263s Preparing to unpack .../12-liblsan0_14.2.0-8ubuntu1_amd64.deb ... 1263s Unpacking liblsan0:amd64 (14.2.0-8ubuntu1) ... 1263s Selecting previously unselected package libtsan2:amd64. 1263s Preparing to unpack .../13-libtsan2_14.2.0-8ubuntu1_amd64.deb ... 1263s Unpacking libtsan2:amd64 (14.2.0-8ubuntu1) ... 1263s Selecting previously unselected package libubsan1:amd64. 1263s Preparing to unpack .../14-libubsan1_14.2.0-8ubuntu1_amd64.deb ... 1263s Unpacking libubsan1:amd64 (14.2.0-8ubuntu1) ... 1263s Selecting previously unselected package libhwasan0:amd64. 1263s Preparing to unpack .../15-libhwasan0_14.2.0-8ubuntu1_amd64.deb ... 1263s Unpacking libhwasan0:amd64 (14.2.0-8ubuntu1) ... 1263s Selecting previously unselected package libquadmath0:amd64. 1263s Preparing to unpack .../16-libquadmath0_14.2.0-8ubuntu1_amd64.deb ... 1263s Unpacking libquadmath0:amd64 (14.2.0-8ubuntu1) ... 1263s Selecting previously unselected package libgcc-14-dev:amd64. 1263s Preparing to unpack .../17-libgcc-14-dev_14.2.0-8ubuntu1_amd64.deb ... 1263s Unpacking libgcc-14-dev:amd64 (14.2.0-8ubuntu1) ... 1263s Selecting previously unselected package gcc-14-x86-64-linux-gnu. 1263s Preparing to unpack .../18-gcc-14-x86-64-linux-gnu_14.2.0-8ubuntu1_amd64.deb ... 1263s Unpacking gcc-14-x86-64-linux-gnu (14.2.0-8ubuntu1) ... 1263s Selecting previously unselected package gcc-14. 1263s Preparing to unpack .../19-gcc-14_14.2.0-8ubuntu1_amd64.deb ... 1263s Unpacking gcc-14 (14.2.0-8ubuntu1) ... 1264s Selecting previously unselected package gcc-x86-64-linux-gnu. 1264s Preparing to unpack .../20-gcc-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 1264s Unpacking gcc-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 1264s Selecting previously unselected package gcc. 1264s Preparing to unpack .../21-gcc_4%3a14.1.0-2ubuntu1_amd64.deb ... 1264s Unpacking gcc (4:14.1.0-2ubuntu1) ... 1264s Selecting previously unselected package libstdc++-14-dev:amd64. 1264s Preparing to unpack .../22-libstdc++-14-dev_14.2.0-8ubuntu1_amd64.deb ... 1264s Unpacking libstdc++-14-dev:amd64 (14.2.0-8ubuntu1) ... 1264s Selecting previously unselected package g++-14-x86-64-linux-gnu. 1264s Preparing to unpack .../23-g++-14-x86-64-linux-gnu_14.2.0-8ubuntu1_amd64.deb ... 1264s Unpacking g++-14-x86-64-linux-gnu (14.2.0-8ubuntu1) ... 1264s Selecting previously unselected package g++-14. 1264s Preparing to unpack .../24-g++-14_14.2.0-8ubuntu1_amd64.deb ... 1264s Unpacking g++-14 (14.2.0-8ubuntu1) ... 1264s Selecting previously unselected package g++-x86-64-linux-gnu. 1264s Preparing to unpack .../25-g++-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 1264s Unpacking g++-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 1264s Selecting previously unselected package g++. 1264s Preparing to unpack .../26-g++_4%3a14.1.0-2ubuntu1_amd64.deb ... 1264s Unpacking g++ (4:14.1.0-2ubuntu1) ... 1264s Selecting previously unselected package build-essential. 1264s Preparing to unpack .../27-build-essential_12.10ubuntu1_amd64.deb ... 1264s Unpacking build-essential (12.10ubuntu1) ... 1264s Selecting previously unselected package libblas3:amd64. 1264s Preparing to unpack .../28-libblas3_3.12.0-3build2_amd64.deb ... 1264s Unpacking libblas3:amd64 (3.12.0-3build2) ... 1264s Selecting previously unselected package libgfortran5:amd64. 1264s Preparing to unpack .../29-libgfortran5_14.2.0-8ubuntu1_amd64.deb ... 1264s Unpacking libgfortran5:amd64 (14.2.0-8ubuntu1) ... 1264s Selecting previously unselected package liblapack3:amd64. 1264s Preparing to unpack .../30-liblapack3_3.12.0-3build2_amd64.deb ... 1264s Unpacking liblapack3:amd64 (3.12.0-3build2) ... 1264s Selecting previously unselected package libpython3.13-stdlib:amd64. 1264s Preparing to unpack .../31-libpython3.13-stdlib_3.13.0-2_amd64.deb ... 1264s Unpacking libpython3.13-stdlib:amd64 (3.13.0-2) ... 1264s Selecting previously unselected package python3.13. 1264s Preparing to unpack .../32-python3.13_3.13.0-2_amd64.deb ... 1264s Unpacking python3.13 (3.13.0-2) ... 1264s Selecting previously unselected package python3-all. 1264s Preparing to unpack .../33-python3-all_3.12.7-1_amd64.deb ... 1264s Unpacking python3-all (3.12.7-1) ... 1264s Selecting previously unselected package python3-dateutil. 1264s Preparing to unpack .../34-python3-dateutil_2.9.0-3_all.deb ... 1264s Unpacking python3-dateutil (2.9.0-3) ... 1264s Selecting previously unselected package python3-korean-lunar-calendar. 1264s Preparing to unpack .../35-python3-korean-lunar-calendar_0.3.1-2_all.deb ... 1264s Unpacking python3-korean-lunar-calendar (0.3.1-2) ... 1264s Selecting previously unselected package python3-numpy. 1264s Preparing to unpack .../36-python3-numpy_1%3a1.26.4+ds-11ubuntu1_amd64.deb ... 1264s Unpacking python3-numpy (1:1.26.4+ds-11ubuntu1) ... 1265s Selecting previously unselected package python3-tz. 1265s Preparing to unpack .../37-python3-tz_2024.1-2_all.deb ... 1265s Unpacking python3-tz (2024.1-2) ... 1265s Selecting previously unselected package python3-pandas-lib:amd64. 1265s Preparing to unpack .../38-python3-pandas-lib_2.2.3+dfsg-5ubuntu1_amd64.deb ... 1265s Unpacking python3-pandas-lib:amd64 (2.2.3+dfsg-5ubuntu1) ... 1265s Selecting previously unselected package python3-pandas. 1265s Preparing to unpack .../39-python3-pandas_2.2.3+dfsg-5ubuntu1_all.deb ... 1265s Unpacking python3-pandas (2.2.3+dfsg-5ubuntu1) ... 1265s Selecting previously unselected package python3-pyluach. 1265s Preparing to unpack .../40-python3-pyluach_2.2.0-1_all.deb ... 1265s Unpacking python3-pyluach (2.2.0-1) ... 1265s Selecting previously unselected package python3-toolz. 1265s Preparing to unpack .../41-python3-toolz_1.0.0-1_all.deb ... 1265s Unpacking python3-toolz (1.0.0-1) ... 1265s Selecting previously unselected package python3-exchange-calendars. 1265s Preparing to unpack .../42-python3-exchange-calendars_4.5.8-1_all.deb ... 1265s Unpacking python3-exchange-calendars (4.5.8-1) ... 1265s Selecting previously unselected package python3-sortedcontainers. 1265s Preparing to unpack .../43-python3-sortedcontainers_2.4.0-2_all.deb ... 1265s Unpacking python3-sortedcontainers (2.4.0-2) ... 1265s Selecting previously unselected package python3-hypothesis. 1265s Preparing to unpack .../44-python3-hypothesis_6.119.3-1_all.deb ... 1265s Unpacking python3-hypothesis (6.119.3-1) ... 1265s Selecting previously unselected package python3-iniconfig. 1265s Preparing to unpack .../45-python3-iniconfig_1.1.1-2_all.deb ... 1265s Unpacking python3-iniconfig (1.1.1-2) ... 1265s Selecting previously unselected package python3-packaging. 1265s Preparing to unpack .../46-python3-packaging_24.2-1_all.deb ... 1265s Unpacking python3-packaging (24.2-1) ... 1265s Selecting previously unselected package python3-pluggy. 1265s Preparing to unpack .../47-python3-pluggy_1.5.0-1_all.deb ... 1265s Unpacking python3-pluggy (1.5.0-1) ... 1265s Selecting previously unselected package python3-pytest. 1265s Preparing to unpack .../48-python3-pytest_8.3.3-1_all.deb ... 1265s Unpacking python3-pytest (8.3.3-1) ... 1265s Setting up python3-iniconfig (1.1.1-2) ... 1266s Setting up python3-pyluach (2.2.0-1) ... 1266s Setting up python3-sortedcontainers (2.4.0-2) ... 1266s Setting up libgomp1:amd64 (14.2.0-8ubuntu1) ... 1266s Setting up python3-tz (2024.1-2) ... 1266s Setting up libpython3.13-minimal:amd64 (3.13.0-2) ... 1266s Setting up libblas3:amd64 (3.12.0-3build2) ... 1266s update-alternatives: using /usr/lib/x86_64-linux-gnu/blas/libblas.so.3 to provide /usr/lib/x86_64-linux-gnu/libblas.so.3 (libblas.so.3-x86_64-linux-gnu) in auto mode 1266s Setting up python3-korean-lunar-calendar (0.3.1-2) ... 1266s Setting up python3-packaging (24.2-1) ... 1267s Setting up libquadmath0:amd64 (14.2.0-8ubuntu1) ... 1267s Setting up libmpc3:amd64 (1.3.1-1build2) ... 1267s Setting up libgfortran5:amd64 (14.2.0-8ubuntu1) ... 1267s Setting up python3-pluggy (1.5.0-1) ... 1267s Setting up libubsan1:amd64 (14.2.0-8ubuntu1) ... 1267s Setting up libhwasan0:amd64 (14.2.0-8ubuntu1) ... 1267s Setting up libasan8:amd64 (14.2.0-8ubuntu1) ... 1267s Setting up python3.13-minimal (3.13.0-2) ... 1267s Setting up python3-toolz (1.0.0-1) ... 1268s Setting up python3-dateutil (2.9.0-3) ... 1268s Setting up libtsan2:amd64 (14.2.0-8ubuntu1) ... 1268s Setting up libisl23:amd64 (0.27-1) ... 1268s Setting up libpython3.13-stdlib:amd64 (3.13.0-2) ... 1268s Setting up libcc1-0:amd64 (14.2.0-8ubuntu1) ... 1268s Setting up liblsan0:amd64 (14.2.0-8ubuntu1) ... 1268s Setting up libitm1:amd64 (14.2.0-8ubuntu1) ... 1268s Setting up liblapack3:amd64 (3.12.0-3build2) ... 1268s update-alternatives: using /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3 to provide /usr/lib/x86_64-linux-gnu/liblapack.so.3 (liblapack.so.3-x86_64-linux-gnu) in auto mode 1268s Setting up python3.13 (3.13.0-2) ... 1269s Setting up python3-pytest (8.3.3-1) ... 1269s Setting up python3-hypothesis (6.119.3-1) ... 1270s Setting up python3-all (3.12.7-1) ... 1270s Setting up cpp-14-x86-64-linux-gnu (14.2.0-8ubuntu1) ... 1270s Setting up python3-numpy (1:1.26.4+ds-11ubuntu1) ... 1272s Setting up cpp-14 (14.2.0-8ubuntu1) ... 1272s Setting up libgcc-14-dev:amd64 (14.2.0-8ubuntu1) ... 1272s Setting up libstdc++-14-dev:amd64 (14.2.0-8ubuntu1) ... 1272s Setting up cpp-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 1272s Setting up python3-pandas-lib:amd64 (2.2.3+dfsg-5ubuntu1) ... 1272s Setting up python3-pandas (2.2.3+dfsg-5ubuntu1) ... 1280s Setting up cpp (4:14.1.0-2ubuntu1) ... 1280s Setting up gcc-14-x86-64-linux-gnu (14.2.0-8ubuntu1) ... 1280s Setting up gcc-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 1280s Setting up python3-exchange-calendars (4.5.8-1) ... 1280s Setting up gcc-14 (14.2.0-8ubuntu1) ... 1280s Setting up g++-14-x86-64-linux-gnu (14.2.0-8ubuntu1) ... 1280s Setting up g++-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 1280s Setting up g++-14 (14.2.0-8ubuntu1) ... 1280s Setting up gcc (4:14.1.0-2ubuntu1) ... 1280s Setting up g++ (4:14.1.0-2ubuntu1) ... 1280s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 1280s Setting up build-essential (12.10ubuntu1) ... 1280s Processing triggers for systemd (256.5-2ubuntu4) ... 1280s Processing triggers for man-db (2.13.0-1) ... 1281s Processing triggers for libc-bin (2.40-1ubuntu3) ... 1282s Reading package lists... 1282s Building dependency tree... 1282s Reading state information... 1283s Starting pkgProblemResolver with broken count: 0 1283s Starting 2 pkgProblemResolver with broken count: 0 1283s Done 1283s The following NEW packages will be installed: 1283s autopkgtest-satdep 1283s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 1283s Need to get 0 B/700 B of archives. 1283s After this operation, 0 B of additional disk space will be used. 1283s Get:1 /tmp/autopkgtest.wMlJoC/2-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [700 B] 1283s Selecting previously unselected package autopkgtest-satdep. 1283s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 119594 files and directories currently installed.) 1283s Preparing to unpack .../2-autopkgtest-satdep.deb ... 1284s Unpacking autopkgtest-satdep (0) ... 1284s Setting up autopkgtest-satdep (0) ... 1285s (Reading database ... 119594 files and directories currently installed.) 1285s Removing autopkgtest-satdep (0) ... 1286s autopkgtest [08:51:10]: test run-tests: [----------------------- 1286s ============================= test session starts ============================== 1286s platform linux -- Python 3.13.0, pytest-8.3.3, pluggy-1.5.0 -- /usr/bin/python3.13 1286s cachedir: .pytest_cache 1286s hypothesis profile 'default' -> database=DirectoryBasedExampleDatabase(PosixPath('/tmp/autopkgtest.wMlJoC/autopkgtest_tmp/.hypothesis/examples')) 1286s rootdir: /tmp/autopkgtest.wMlJoC/autopkgtest_tmp 1286s plugins: typeguard-4.4.1, hypothesis-6.119.3 1288s collecting ... collected 8189 items 1288s 1288s tests/test_aixk_calendar.py::TestAIXKCalendar::test_testbase_integrity PASSED [ 0%] 1288s tests/test_aixk_calendar.py::TestAIXKCalendar::test_base_integrity PASSED [ 0%] 1289s tests/test_aixk_calendar.py::TestAIXKCalendar::test_calculated_against_csv PASSED [ 0%] 1289s tests/test_aixk_calendar.py::TestAIXKCalendar::test_start_end PASSED [ 0%] 1289s tests/test_aixk_calendar.py::TestAIXKCalendar::test_invalid_input PASSED [ 0%] 1289s tests/test_aixk_calendar.py::TestAIXKCalendar::test_bound_min PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_bound_max PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sanity_check_session_lengths PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_adhoc_holidays_specification PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_daylight_savings PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_opens_closes_break_starts_ends PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_properties[both] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes[both] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_calendar_bounds_properties[both] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minute_methods[both] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minutes[both] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_trading_minute[both] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_break_minute[both] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_on_minute[both] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_at_time[both] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_prev_next_minute[both] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[both-next] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[both-next] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[left-next] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[left-next] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_properties[left] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes[left] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_calendar_bounds_properties[left] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minute_methods[left] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minutes[left] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_trading_minute[left] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_break_minute[left] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_on_minute[left] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_at_time[left] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_prev_next_minute[left] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[left-previous] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[both-previous] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[right-previous] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[right-next] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[right-next] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_properties[right] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes[right] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_calendar_bounds_properties[right] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minute_methods[right] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minutes[right] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_trading_minute[right] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_break_minute[right] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_on_minute[right] PASSED [ 0%] 1290s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_at_time[right] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_prev_next_minute[right] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[right-none] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[right-none] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[left-none] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[left-none] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[both-none] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[both-none] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[neither-none] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[neither-previous] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[neither-next] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_properties[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_calendar_bounds_properties[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minute_methods[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minutes[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_trading_minute[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_break_minute[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_on_minute[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_at_time[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_prev_next_minute[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_past_session[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_future_session[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset_by_sessions[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_in_range[neither] PASSED [ 0%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_window[neither] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_distance[neither] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_to_sessions[neither] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes[neither] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes_count[neither] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_past_session[right] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_future_session[right] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset[right] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset_by_sessions[right] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_in_range[right] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_window[right] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_distance[right] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_to_sessions[right] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes[right] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes_count[right] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_past_session[left] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_future_session[left] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset[left] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset_by_sessions[left] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_in_range[left] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_window[left] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_distance[left] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_to_sessions[left] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes[left] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes_count[left] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_past_session[both] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_future_session[both] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset[both] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset_by_sessions[both] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_in_range[both] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_window[both] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_distance[both] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_to_sessions[both] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes[both] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes_count[both] PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_has_break PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_regular_holidays_sample PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_adhoc_holidays_sample PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_non_holidays_sample PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_late_opens_sample PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_early_closes_sample PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_early_closes_sample_time PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_early_closes_weekdays PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_early_closes_weekdays_time PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_non_early_closes_sample PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_non_early_closes_sample_time PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_late_opens PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_early_closes PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_open_close_break_start_end PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_has_break PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_next_prev_session PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_offset PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_session PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_date_to_session PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_prev_next_open_close PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_in_range PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_has_break PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_window PASSED [ 1%] 1291s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_distance PASSED [ 1%] 1292s tests/test_aixk_calendar.py::TestAIXKCalendar::test_trading_index PASSED [ 1%] 1292s tests/test_aixk_calendar.py::TestAIXKCalendar::test_deprecated PASSED [ 1%] 1292s tests/test_always_open.py::TestAlwaysOpenCalendar::test_testbase_integrity PASSED [ 1%] 1292s tests/test_always_open.py::TestAlwaysOpenCalendar::test_base_integrity PASSED [ 1%] 1292s tests/test_always_open.py::TestAlwaysOpenCalendar::test_calculated_against_csv PASSED [ 1%] 1292s tests/test_always_open.py::TestAlwaysOpenCalendar::test_start_end PASSED [ 1%] 1292s tests/test_always_open.py::TestAlwaysOpenCalendar::test_invalid_input PASSED [ 1%] 1292s tests/test_always_open.py::TestAlwaysOpenCalendar::test_bound_min PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_bound_max PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sanity_check_session_lengths PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_adhoc_holidays_specification PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_daylight_savings PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_opens_closes_break_starts_ends PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_properties[left] PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes[left] PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_calendar_bounds_properties[left] PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_session_minute_methods[left] PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_session_minutes[left] PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_trading_minute[left] PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_break_minute[left] PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_open_on_minute[left] PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_open_at_time[left] PASSED [ 1%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_prev_next_minute[left] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_session[left-next] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_trading_minute[left-next] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_session[right-next] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_trading_minute[right-next] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_properties[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_calendar_bounds_properties[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_session_minute_methods[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_session_minutes[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_trading_minute[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_break_minute[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_open_on_minute[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_open_at_time[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_prev_next_minute[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_session[right-previous] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_session[left-previous] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_session[right-none] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_trading_minute[right-none] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_session[left-none] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_trading_minute[left-none] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_past_session[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_future_session[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_offset[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_offset_by_sessions[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_in_range[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_window[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_distance[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_to_sessions[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_minutes[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_minutes_count[right] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_past_session[left] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_future_session[left] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_offset[left] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_offset_by_sessions[left] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_in_range[left] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_window[left] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_distance[left] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_to_sessions[left] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_minutes[left] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_minutes_count[left] PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_has_break PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_regular_holidays_sample PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_adhoc_holidays_sample PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_non_holidays_sample PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_late_opens_sample PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_early_closes_sample PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_early_closes_sample_time PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_early_closes_weekdays PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_early_closes_weekdays_time PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_non_early_closes_sample PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_non_early_closes_sample_time PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_late_opens PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_early_closes PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_session_open_close_break_start_end PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_session_has_break PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_next_prev_session PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_session_offset PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_session PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_date_to_session PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_prev_next_open_close PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_in_range PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_has_break PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_window PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_distance PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_trading_index PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_deprecated PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_open_every_day PASSED [ 2%] 1293s tests/test_always_open.py::TestAlwaysOpenCalendar::test_open_every_minute PASSED [ 2%] 1293s tests/test_asex_calendar.py::TestASEXCalendar::test_testbase_integrity PASSED [ 2%] 1293s tests/test_asex_calendar.py::TestASEXCalendar::test_base_integrity PASSED [ 2%] 1294s tests/test_asex_calendar.py::TestASEXCalendar::test_calculated_against_csv PASSED [ 2%] 1294s tests/test_asex_calendar.py::TestASEXCalendar::test_start_end PASSED [ 2%] 1294s tests/test_asex_calendar.py::TestASEXCalendar::test_invalid_input PASSED [ 2%] 1295s tests/test_asex_calendar.py::TestASEXCalendar::test_bound_min PASSED [ 2%] 1295s tests/test_asex_calendar.py::TestASEXCalendar::test_bound_max PASSED [ 2%] 1295s tests/test_asex_calendar.py::TestASEXCalendar::test_sanity_check_session_lengths PASSED [ 2%] 1295s tests/test_asex_calendar.py::TestASEXCalendar::test_adhoc_holidays_specification PASSED [ 2%] 1295s tests/test_asex_calendar.py::TestASEXCalendar::test_daylight_savings PASSED [ 2%] 1295s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions PASSED [ 2%] 1296s tests/test_asex_calendar.py::TestASEXCalendar::test_opens_closes_break_starts_ends PASSED [ 3%] 1296s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_properties[both] PASSED [ 3%] 1296s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes[both] PASSED [ 3%] 1296s tests/test_asex_calendar.py::TestASEXCalendar::test_calendar_bounds_properties[both] PASSED [ 3%] 1296s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minute_methods[both] PASSED [ 3%] 1296s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minutes[both] PASSED [ 3%] 1296s tests/test_asex_calendar.py::TestASEXCalendar::test_is_trading_minute[both] PASSED [ 3%] 1296s tests/test_asex_calendar.py::TestASEXCalendar::test_is_break_minute[both] PASSED [ 3%] 1296s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_on_minute[both] PASSED [ 3%] 1296s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_at_time[both] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_prev_next_minute[both] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[both-next] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[both-next] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[left-next] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[left-next] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_properties[left] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes[left] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_calendar_bounds_properties[left] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minute_methods[left] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minutes[left] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_is_trading_minute[left] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_is_break_minute[left] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_on_minute[left] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_at_time[left] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_prev_next_minute[left] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[left-previous] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[both-previous] PASSED [ 3%] 1297s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 3%] 1298s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[right-previous] PASSED [ 3%] 1298s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 3%] 1298s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[right-next] PASSED [ 3%] 1298s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[right-next] PASSED [ 3%] 1298s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_properties[right] PASSED [ 3%] 1298s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes[right] PASSED [ 3%] 1298s tests/test_asex_calendar.py::TestASEXCalendar::test_calendar_bounds_properties[right] PASSED [ 3%] 1298s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minute_methods[right] PASSED [ 3%] 1298s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minutes[right] PASSED [ 3%] 1298s tests/test_asex_calendar.py::TestASEXCalendar::test_is_trading_minute[right] PASSED [ 3%] 1298s tests/test_asex_calendar.py::TestASEXCalendar::test_is_break_minute[right] PASSED [ 3%] 1298s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_on_minute[right] PASSED [ 3%] 1298s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_at_time[right] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_prev_next_minute[right] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[right-none] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[right-none] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[left-none] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[left-none] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[both-none] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[both-none] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[neither-none] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[neither-previous] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[neither-next] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_properties[neither] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes[neither] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_calendar_bounds_properties[neither] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minute_methods[neither] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minutes[neither] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_is_trading_minute[neither] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_is_break_minute[neither] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_on_minute[neither] PASSED [ 3%] 1299s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_at_time[neither] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_prev_next_minute[neither] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_past_session[neither] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_future_session[neither] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset[neither] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset_by_sessions[neither] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_in_range[neither] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_window[neither] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_distance[neither] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_to_sessions[neither] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes[neither] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes_count[neither] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_past_session[right] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_future_session[right] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset[right] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset_by_sessions[right] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_in_range[right] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_window[right] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_distance[right] PASSED [ 3%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_to_sessions[right] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes[right] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes_count[right] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_past_session[left] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_future_session[left] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset[left] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset_by_sessions[left] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_in_range[left] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_window[left] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_distance[left] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_to_sessions[left] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes[left] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes_count[left] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_past_session[both] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_future_session[both] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset[both] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset_by_sessions[both] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_in_range[both] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_window[both] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_distance[both] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_to_sessions[both] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes[both] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes_count[both] PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_has_break PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_regular_holidays_sample PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_adhoc_holidays_sample PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_non_holidays_sample PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_late_opens_sample PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_early_closes_sample PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_early_closes_sample_time PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_early_closes_weekdays PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_early_closes_weekdays_time PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_non_early_closes_sample PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_non_early_closes_sample_time PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_late_opens PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_early_closes PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_session_open_close_break_start_end PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_session_has_break PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_next_prev_session PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_session_offset PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_is_session PASSED [ 4%] 1300s tests/test_asex_calendar.py::TestASEXCalendar::test_date_to_session PASSED [ 4%] 1301s tests/test_asex_calendar.py::TestASEXCalendar::test_prev_next_open_close PASSED [ 4%] 1301s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_in_range PASSED [ 4%] 1301s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_has_break PASSED [ 4%] 1301s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_window PASSED [ 4%] 1301s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_distance PASSED [ 4%] 1301s tests/test_asex_calendar.py::TestASEXCalendar::test_trading_index PASSED [ 4%] 1301s tests/test_asex_calendar.py::TestASEXCalendar::test_deprecated PASSED [ 4%] 1301s tests/test_asex_calendar.py::TestASEXCalendar::test_close_time_change PASSED [ 4%] 1301s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_testbase_integrity PASSED [ 4%] 1301s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_base_integrity PASSED [ 4%] 1303s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_calculated_against_csv PASSED [ 4%] 1303s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_start_end PASSED [ 4%] 1303s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_invalid_input PASSED [ 4%] 1304s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_bound_min PASSED [ 4%] 1304s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_bound_max PASSED [ 4%] 1304s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sanity_check_session_lengths PASSED [ 4%] 1304s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_adhoc_holidays_specification PASSED [ 4%] 1304s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_daylight_savings PASSED [ 4%] 1304s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions PASSED [ 4%] 1304s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_opens_closes_break_starts_ends PASSED [ 4%] 1304s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_properties[both] PASSED [ 4%] 1305s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes[both] PASSED [ 4%] 1305s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_calendar_bounds_properties[both] PASSED [ 4%] 1305s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minute_methods[both] PASSED [ 4%] 1305s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minutes[both] PASSED [ 4%] 1305s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_trading_minute[both] PASSED [ 4%] 1305s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_break_minute[both] PASSED [ 4%] 1305s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_on_minute[both] PASSED [ 4%] 1305s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_at_time[both] PASSED [ 4%] 1305s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_prev_next_minute[both] PASSED [ 4%] 1305s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[both-next] PASSED [ 4%] 1305s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[both-next] PASSED [ 4%] 1305s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[left-next] PASSED [ 4%] 1305s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[left-next] PASSED [ 4%] 1305s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_properties[left] PASSED [ 4%] 1306s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes[left] PASSED [ 4%] 1306s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_calendar_bounds_properties[left] PASSED [ 4%] 1306s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minute_methods[left] PASSED [ 4%] 1306s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minutes[left] PASSED [ 4%] 1306s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_trading_minute[left] PASSED [ 4%] 1306s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_break_minute[left] PASSED [ 5%] 1306s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_on_minute[left] PASSED [ 5%] 1306s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_at_time[left] PASSED [ 5%] 1306s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_prev_next_minute[left] PASSED [ 5%] 1306s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[left-previous] PASSED [ 5%] 1306s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 5%] 1306s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[both-previous] PASSED [ 5%] 1306s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 5%] 1307s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[right-previous] PASSED [ 5%] 1307s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 5%] 1307s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[right-next] PASSED [ 5%] 1307s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[right-next] PASSED [ 5%] 1307s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_properties[right] PASSED [ 5%] 1307s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes[right] PASSED [ 5%] 1307s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_calendar_bounds_properties[right] PASSED [ 5%] 1307s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minute_methods[right] PASSED [ 5%] 1307s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minutes[right] PASSED [ 5%] 1307s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_trading_minute[right] PASSED [ 5%] 1307s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_break_minute[right] PASSED [ 5%] 1307s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_on_minute[right] PASSED [ 5%] 1307s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_at_time[right] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_prev_next_minute[right] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[right-none] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[right-none] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[left-none] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[left-none] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[both-none] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[both-none] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[neither-none] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[neither-previous] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[neither-next] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_properties[neither] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes[neither] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_calendar_bounds_properties[neither] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minute_methods[neither] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minutes[neither] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_trading_minute[neither] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_break_minute[neither] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_on_minute[neither] PASSED [ 5%] 1308s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_at_time[neither] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_prev_next_minute[neither] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_past_session[neither] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_future_session[neither] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset[neither] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset_by_sessions[neither] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_in_range[neither] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_window[neither] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_distance[neither] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_to_sessions[neither] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes[neither] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes_count[neither] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_past_session[right] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_future_session[right] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset[right] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset_by_sessions[right] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_in_range[right] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_window[right] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_distance[right] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_to_sessions[right] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes[right] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes_count[right] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_past_session[left] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_future_session[left] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset[left] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset_by_sessions[left] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_in_range[left] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_window[left] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_distance[left] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_to_sessions[left] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes[left] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes_count[left] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_past_session[both] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_future_session[both] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset[both] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset_by_sessions[both] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_in_range[both] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_window[both] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_distance[both] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_to_sessions[both] PASSED [ 5%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes[both] PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes_count[both] PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_has_break PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_regular_holidays_sample PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_adhoc_holidays_sample PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_non_holidays_sample PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_late_opens_sample PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_early_closes_sample PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_early_closes_sample_time PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_early_closes_weekdays PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_early_closes_weekdays_time PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_non_early_closes_sample PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_non_early_closes_sample_time PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_late_opens PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_early_closes PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_open_close_break_start_end PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_has_break PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_next_prev_session PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_offset PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_session PASSED [ 6%] 1309s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_date_to_session PASSED [ 6%] 1310s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_prev_next_open_close PASSED [ 6%] 1310s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_in_range PASSED [ 6%] 1310s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_has_break PASSED [ 6%] 1310s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_window PASSED [ 6%] 1310s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_distance PASSED [ 6%] 1311s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_trading_index PASSED [ 6%] 1311s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_deprecated PASSED [ 6%] 1311s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_add_new_aliases PASSED [ 6%] 1311s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_aliases_to_names PASSED [ 6%] 1311s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_allow_alias_override_with_force PASSED [ 6%] 1311s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_follow_alias_chain PASSED [ 6%] 1311s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_get_calendar PASSED [ 6%] 1311s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_get_calendar_cache PASSED [ 6%] 1311s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_get_calendar_kwargs PASSED [ 6%] 1311s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_get_calendar_names PASSED [ 6%] 1311s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_names_to_aliases PASSED [ 6%] 1311s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_reject_alias_that_already_exists PASSED [ 6%] 1311s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_reject_cyclic_aliases PASSED [ 6%] 1311s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_remove_aliases PASSED [ 6%] 1311s tests/test_calendar_helpers.py::test_constants PASSED [ 6%] 1311s tests/test_calendar_helpers.py::test_is_date PASSED [ 6%] 1311s tests/test_calendar_helpers.py::test_is_utc PASSED [ 6%] 1312s tests/test_calendar_helpers.py::test_parse_timestamp_with_date[2021-06-05-True] PASSED [ 6%] 1312s tests/test_calendar_helpers.py::test_parse_timestamp_with_date[2021-06-05-False] PASSED [ 6%] 1312s tests/test_calendar_helpers.py::test_parse_timestamp_with_date[date_mult1-True] PASSED [ 6%] 1313s tests/test_calendar_helpers.py::test_parse_timestamp_with_date[date_mult1-False] PASSED [ 6%] 1313s tests/test_calendar_helpers.py::test_parse_timestamp_with_minute[2021-06-02 23:00-True] PASSED [ 6%] 1313s tests/test_calendar_helpers.py::test_parse_timestamp_with_minute[2021-06-02 23:00-False] PASSED [ 6%] 1313s tests/test_calendar_helpers.py::test_parse_timestamp_with_minute[minute_mult1-True] PASSED [ 6%] 1314s tests/test_calendar_helpers.py::test_parse_timestamp_with_minute[minute_mult1-False] PASSED [ 6%] 1314s tests/test_calendar_helpers.py::test_parse_timestamp_with_minute[minute_mult2-True] PASSED [ 6%] 1314s tests/test_calendar_helpers.py::test_parse_timestamp_with_minute[minute_mult2-False] PASSED [ 6%] 1314s tests/test_calendar_helpers.py::test_parse_timestamp_with_second[left] PASSED [ 6%] 1314s tests/test_calendar_helpers.py::test_parse_timestamp_with_second[right] PASSED [ 6%] 1314s tests/test_calendar_helpers.py::test_parse_timestamp_with_second[both] PASSED [ 6%] 1314s tests/test_calendar_helpers.py::test_parse_timestamp_with_second[neither] PASSED [ 6%] 1315s tests/test_calendar_helpers.py::test_parse_timestamp_error_malformed[2021-13-13] PASSED [ 6%] 1315s tests/test_calendar_helpers.py::test_parse_timestamp_error_malformed[malformed1] PASSED [ 6%] 1315s tests/test_calendar_helpers.py::test_parse_timestamp_error_malformed[not a timestamp] PASSED [ 6%] 1315s tests/test_calendar_helpers.py::test_parse_timestamp_error_oob PASSED [ 6%] 1316s tests/test_calendar_helpers.py::test_parse_date_or_minute_for_minute[2021-06-02 23:00] PASSED [ 6%] 1316s tests/test_calendar_helpers.py::test_parse_date_or_minute_for_minute[minute_mult1] PASSED [ 6%] 1316s tests/test_calendar_helpers.py::test_parse_date_or_minute_for_minute[minute_mult2] PASSED [ 6%] 1317s tests/test_calendar_helpers.py::test_parse_date_or_minute_for_date[2021-06-05] PASSED [ 6%] 1317s tests/test_calendar_helpers.py::test_parse_date_or_minute_for_date[date_mult1] PASSED [ 6%] 1317s tests/test_calendar_helpers.py::test_parse_date_or_minute_oob PASSED [ 6%] 1317s tests/test_calendar_helpers.py::test_parse_date[2021-06-05] PASSED [ 6%] 1318s tests/test_calendar_helpers.py::test_parse_date[date_mult1] PASSED [ 6%] 1318s tests/test_calendar_helpers.py::test_parse_date_errors PASSED [ 6%] 1318s tests/test_calendar_helpers.py::test_parse_session PASSED [ 6%] 1318s tests/test_calendar_helpers.py::test_parse_trading_minute PASSED [ 6%] 1322s tests/test_calendar_helpers.py::TestTradingIndex::test_indices_fuzz[XLON] PASSED [ 6%] 1324s tests/test_calendar_helpers.py::TestTradingIndex::test_intervals_fuzz[XLON] PASSED [ 6%] 1324s tests/test_calendar_helpers.py::TestTradingIndex::test_daily_fuzz[XLON] PASSED [ 6%] 1327s tests/test_calendar_helpers.py::TestTradingIndex::test_indices_fuzz[XHKG] PASSED [ 6%] 1329s tests/test_calendar_helpers.py::TestTradingIndex::test_intervals_fuzz[XHKG] PASSED [ 6%] 1329s tests/test_calendar_helpers.py::TestTradingIndex::test_daily_fuzz[XHKG] PASSED [ 6%] 1331s tests/test_calendar_helpers.py::TestTradingIndex::test_indices_fuzz[XTAE] PASSED [ 6%] 1333s tests/test_calendar_helpers.py::TestTradingIndex::test_intervals_fuzz[XTAE] PASSED [ 6%] 1333s tests/test_calendar_helpers.py::TestTradingIndex::test_daily_fuzz[XTAE] PASSED [ 6%] 1336s tests/test_calendar_helpers.py::TestTradingIndex::test_indices_fuzz[CMES] PASSED [ 6%] 1340s tests/test_calendar_helpers.py::TestTradingIndex::test_intervals_fuzz[CMES] PASSED [ 7%] 1340s tests/test_calendar_helpers.py::TestTradingIndex::test_daily_fuzz[CMES] PASSED [ 7%] 1341s tests/test_calendar_helpers.py::TestTradingIndex::test_indices_fuzz[24/7] PASSED [ 7%] 1342s tests/test_calendar_helpers.py::TestTradingIndex::test_intervals_fuzz[24/7] PASSED [ 7%] 1342s tests/test_calendar_helpers.py::TestTradingIndex::test_daily_fuzz[24/7] PASSED [ 7%] 1342s tests/test_calendar_helpers.py::TestTradingIndex::test_for_empty_with_neither_fuzz PASSED [ 7%] 1343s tests/test_calendar_helpers.py::TestTradingIndex::test_overlap_error_fuzz[XHKG] PASSED [ 7%] 1343s tests/test_calendar_helpers.py::TestTradingIndex::test_overlap_error_fuzz[24/7] PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_overlap_error_fuzz[CMES] PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap0-True] PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap0-False] PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap1-True] PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap1-False] PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap2-True] PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap2-False] PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap3-True] PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap3-False] PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps_2[right-True] PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps_2[right-False] PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps_2[both-True] PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps_2[both-False] PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_force PASSED [ 7%] 1344s tests/test_calendar_helpers.py::TestTradingIndex::test_ignore_breaks PASSED [ 7%] 1345s tests/test_calendar_helpers.py::TestTradingIndex::test_align PASSED [ 7%] 1345s tests/test_calendar_helpers.py::TestTradingIndex::test_align_overlap PASSED [ 7%] 1346s tests/test_calendar_helpers.py::TestTradingIndex::test_start_end_times PASSED [ 7%] 1346s tests/test_calendar_helpers.py::TestTradingIndex::test_parsing_errors PASSED [ 7%] 1346s tests/test_cmes_calendar.py::TestCMESCalendar::test_testbase_integrity PASSED [ 7%] 1346s tests/test_cmes_calendar.py::TestCMESCalendar::test_base_integrity PASSED [ 7%] 1347s tests/test_cmes_calendar.py::TestCMESCalendar::test_calculated_against_csv PASSED [ 7%] 1347s tests/test_cmes_calendar.py::TestCMESCalendar::test_start_end PASSED [ 7%] 1347s tests/test_cmes_calendar.py::TestCMESCalendar::test_invalid_input PASSED [ 7%] 1348s tests/test_cmes_calendar.py::TestCMESCalendar::test_bound_min PASSED [ 7%] 1348s tests/test_cmes_calendar.py::TestCMESCalendar::test_bound_max PASSED [ 7%] 1348s tests/test_cmes_calendar.py::TestCMESCalendar::test_sanity_check_session_lengths PASSED [ 7%] 1348s tests/test_cmes_calendar.py::TestCMESCalendar::test_adhoc_holidays_specification PASSED [ 7%] 1348s tests/test_cmes_calendar.py::TestCMESCalendar::test_daylight_savings PASSED [ 7%] 1348s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions PASSED [ 7%] 1348s tests/test_cmes_calendar.py::TestCMESCalendar::test_opens_closes_break_starts_ends PASSED [ 7%] 1348s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_properties[left] PASSED [ 7%] 1349s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes[left] PASSED [ 7%] 1349s tests/test_cmes_calendar.py::TestCMESCalendar::test_calendar_bounds_properties[left] PASSED [ 7%] 1349s tests/test_cmes_calendar.py::TestCMESCalendar::test_session_minute_methods[left] PASSED [ 7%] 1349s tests/test_cmes_calendar.py::TestCMESCalendar::test_session_minutes[left] PASSED [ 7%] 1349s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_trading_minute[left] PASSED [ 7%] 1349s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_break_minute[left] PASSED [ 7%] 1349s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_open_on_minute[left] PASSED [ 7%] 1349s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_open_at_time[left] PASSED [ 7%] 1350s tests/test_cmes_calendar.py::TestCMESCalendar::test_prev_next_minute[left] PASSED [ 7%] 1350s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_session[left-next] PASSED [ 7%] 1350s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_trading_minute[left-next] PASSED [ 7%] 1350s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_session[right-next] PASSED [ 7%] 1350s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_trading_minute[right-next] PASSED [ 7%] 1350s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_properties[right] PASSED [ 7%] 1351s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes[right] PASSED [ 7%] 1351s tests/test_cmes_calendar.py::TestCMESCalendar::test_calendar_bounds_properties[right] PASSED [ 7%] 1351s tests/test_cmes_calendar.py::TestCMESCalendar::test_session_minute_methods[right] PASSED [ 7%] 1351s tests/test_cmes_calendar.py::TestCMESCalendar::test_session_minutes[right] PASSED [ 7%] 1351s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_trading_minute[right] PASSED [ 7%] 1351s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_break_minute[right] PASSED [ 7%] 1351s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_open_on_minute[right] PASSED [ 7%] 1351s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_open_at_time[right] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_prev_next_minute[right] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_session[right-previous] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_session[left-previous] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_session[right-none] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_trading_minute[right-none] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_session[left-none] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_trading_minute[left-none] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_past_session[right] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_future_session[right] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_offset[right] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_offset_by_sessions[right] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_in_range[right] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_window[right] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_distance[right] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_to_sessions[right] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_minutes[right] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_minutes_count[right] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_past_session[left] PASSED [ 7%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_future_session[left] PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_offset[left] PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_offset_by_sessions[left] PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_in_range[left] PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_window[left] PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_distance[left] PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_to_sessions[left] PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_minutes[left] PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_minutes_count[left] PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_has_break PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_regular_holidays_sample PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_adhoc_holidays_sample PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_non_holidays_sample PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_late_opens_sample PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_early_closes_sample PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_early_closes_sample_time PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_early_closes_weekdays PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_early_closes_weekdays_time PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_non_early_closes_sample PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_non_early_closes_sample_time PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_late_opens PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_early_closes PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_session_open_close_break_start_end PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_session_has_break PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_next_prev_session PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_session_offset PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_session PASSED [ 8%] 1352s tests/test_cmes_calendar.py::TestCMESCalendar::test_date_to_session PASSED [ 8%] 1353s tests/test_cmes_calendar.py::TestCMESCalendar::test_prev_next_open_close PASSED [ 8%] 1353s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_in_range PASSED [ 8%] 1353s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_has_break PASSED [ 8%] 1353s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_window PASSED [ 8%] 1353s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_distance PASSED [ 8%] 1353s tests/test_cmes_calendar.py::TestCMESCalendar::test_trading_index PASSED [ 8%] 1353s tests/test_cmes_calendar.py::TestCMESCalendar::test_deprecated PASSED [ 8%] 1353s tests/test_exchange_calendar.py::TestCalendarRegistration::test_register_calendar PASSED [ 8%] 1353s tests/test_exchange_calendar.py::TestCalendarRegistration::test_register_calendar_type PASSED [ 8%] 1353s tests/test_exchange_calendar.py::TestCalendarRegistration::test_both_places_are_checked PASSED [ 8%] 1353s tests/test_exchange_calendar.py::TestCalendarRegistration::test_force_registration PASSED [ 8%] 1370s tests/test_exchange_calendar.py::test_default_calendars PASSED [ 8%] 1370s tests/test_exchange_calendar.py::test_days_at_time[2016-07-19-0-time_offset0-tz0-2016-07-19 9:31] PASSED [ 8%] 1370s tests/test_exchange_calendar.py::test_days_at_time[2016-07-19--1-time_offset1-tz1-2016-07-18 17:01] PASSED [ 8%] 1370s tests/test_exchange_calendar.py::test_days_at_time[2004-04-05--1-time_offset2-tz2-2004-04-04 17:01] PASSED [ 8%] 1370s tests/test_exchange_calendar.py::test_days_at_time[1990-04-02--1-time_offset3-tz3-1990-04-01 19:01] PASSED [ 8%] 1370s tests/test_iepa_calendar.py::TestIEPACalendar::test_testbase_integrity PASSED [ 8%] 1370s tests/test_iepa_calendar.py::TestIEPACalendar::test_base_integrity PASSED [ 8%] 1371s tests/test_iepa_calendar.py::TestIEPACalendar::test_calculated_against_csv PASSED [ 8%] 1371s tests/test_iepa_calendar.py::TestIEPACalendar::test_start_end PASSED [ 8%] 1371s tests/test_iepa_calendar.py::TestIEPACalendar::test_invalid_input PASSED [ 8%] 1372s tests/test_iepa_calendar.py::TestIEPACalendar::test_bound_min PASSED [ 8%] 1372s tests/test_iepa_calendar.py::TestIEPACalendar::test_bound_max PASSED [ 8%] 1372s tests/test_iepa_calendar.py::TestIEPACalendar::test_sanity_check_session_lengths PASSED [ 8%] 1372s tests/test_iepa_calendar.py::TestIEPACalendar::test_adhoc_holidays_specification PASSED [ 8%] 1372s tests/test_iepa_calendar.py::TestIEPACalendar::test_daylight_savings PASSED [ 8%] 1372s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions PASSED [ 8%] 1372s tests/test_iepa_calendar.py::TestIEPACalendar::test_opens_closes_break_starts_ends PASSED [ 8%] 1372s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_properties[both] PASSED [ 8%] 1372s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes[both] PASSED [ 8%] 1373s tests/test_iepa_calendar.py::TestIEPACalendar::test_calendar_bounds_properties[both] PASSED [ 8%] 1373s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minute_methods[both] PASSED [ 8%] 1373s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minutes[both] PASSED [ 8%] 1373s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_trading_minute[both] PASSED [ 8%] 1373s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_break_minute[both] PASSED [ 8%] 1373s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_on_minute[both] PASSED [ 8%] 1373s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_at_time[both] PASSED [ 8%] 1373s tests/test_iepa_calendar.py::TestIEPACalendar::test_prev_next_minute[both] PASSED [ 8%] 1373s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[both-next] PASSED [ 8%] 1373s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[both-next] PASSED [ 8%] 1373s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[left-next] PASSED [ 8%] 1373s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[left-next] PASSED [ 8%] 1373s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_properties[left] PASSED [ 8%] 1374s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes[left] PASSED [ 8%] 1374s tests/test_iepa_calendar.py::TestIEPACalendar::test_calendar_bounds_properties[left] PASSED [ 8%] 1374s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minute_methods[left] PASSED [ 8%] 1374s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minutes[left] PASSED [ 8%] 1374s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_trading_minute[left] PASSED [ 8%] 1374s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_break_minute[left] PASSED [ 8%] 1374s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_on_minute[left] PASSED [ 8%] 1374s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_at_time[left] PASSED [ 8%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_prev_next_minute[left] PASSED [ 8%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[left-previous] PASSED [ 8%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[left-previous] PASSED [ 8%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[both-previous] PASSED [ 9%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[both-previous] PASSED [ 9%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[right-previous] PASSED [ 9%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[right-previous] PASSED [ 9%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[right-next] PASSED [ 9%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[right-next] PASSED [ 9%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_properties[right] PASSED [ 9%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes[right] PASSED [ 9%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_calendar_bounds_properties[right] PASSED [ 9%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minute_methods[right] PASSED [ 9%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minutes[right] PASSED [ 9%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_trading_minute[right] PASSED [ 9%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_break_minute[right] PASSED [ 9%] 1375s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_on_minute[right] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_at_time[right] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_prev_next_minute[right] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[right-none] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[right-none] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[left-none] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[left-none] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[both-none] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[both-none] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[neither-none] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[neither-none] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[neither-previous] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[neither-next] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[neither-next] PASSED [ 9%] 1376s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_properties[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_calendar_bounds_properties[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minute_methods[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minutes[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_trading_minute[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_break_minute[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_on_minute[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_at_time[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_prev_next_minute[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_past_session[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_future_session[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset_by_sessions[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_in_range[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_window[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_distance[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_to_sessions[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes_count[neither] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_past_session[right] PASSED [ 9%] 1377s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_future_session[right] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset[right] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset_by_sessions[right] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_in_range[right] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_window[right] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_distance[right] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_to_sessions[right] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes[right] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes_count[right] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_past_session[left] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_future_session[left] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset[left] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset_by_sessions[left] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_in_range[left] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_window[left] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_distance[left] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_to_sessions[left] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes[left] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes_count[left] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_past_session[both] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_future_session[both] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset[both] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset_by_sessions[both] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_in_range[both] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_window[both] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_distance[both] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_to_sessions[both] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes[both] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes_count[both] PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_has_break PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_regular_holidays_sample PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_adhoc_holidays_sample PASSED [ 9%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_non_holidays_sample PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_late_opens_sample PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_early_closes_sample PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_early_closes_sample_time PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_early_closes_weekdays PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_early_closes_weekdays_time PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_non_early_closes_sample PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_non_early_closes_sample_time PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_late_opens PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_early_closes PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_open_close_break_start_end PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_has_break PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_next_prev_session PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_offset PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_session PASSED [ 10%] 1378s tests/test_iepa_calendar.py::TestIEPACalendar::test_date_to_session PASSED [ 10%] 1379s tests/test_iepa_calendar.py::TestIEPACalendar::test_prev_next_open_close PASSED [ 10%] 1379s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_in_range PASSED [ 10%] 1379s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_has_break PASSED [ 10%] 1379s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_window PASSED [ 10%] 1379s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_distance PASSED [ 10%] 1379s tests/test_iepa_calendar.py::TestIEPACalendar::test_trading_index PASSED [ 10%] 1379s tests/test_iepa_calendar.py::TestIEPACalendar::test_deprecated PASSED [ 10%] 1379s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_testbase_integrity PASSED [ 10%] 1379s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_base_integrity PASSED [ 10%] 1379s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_calculated_against_csv PASSED [ 10%] 1379s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_start_end PASSED [ 10%] 1379s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_invalid_input PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_bound_min PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_bound_max PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sanity_check_session_lengths PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_adhoc_holidays_specification PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_daylight_savings PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_opens_closes_break_starts_ends PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_properties[left] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes[left] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_calendar_bounds_properties[left] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_session_minute_methods[left] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_session_minutes[left] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_trading_minute[left] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_break_minute[left] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_open_on_minute[left] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_open_at_time[left] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_prev_next_minute[left] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_session[left-next] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_trading_minute[left-next] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_session[right-next] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_trading_minute[right-next] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_properties[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_calendar_bounds_properties[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_session_minute_methods[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_session_minutes[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_trading_minute[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_break_minute[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_open_on_minute[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_open_at_time[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_prev_next_minute[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_session[right-previous] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_session[left-previous] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_session[right-none] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_trading_minute[right-none] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_session[left-none] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_trading_minute[left-none] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_past_session[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_future_session[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_offset[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_offset_by_sessions[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_in_range[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_window[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_distance[right] PASSED [ 10%] 1380s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_to_sessions[right] PASSED [ 10%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_minutes[right] PASSED [ 10%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_minutes_count[right] PASSED [ 10%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_past_session[left] PASSED [ 10%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_future_session[left] PASSED [ 10%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_offset[left] PASSED [ 10%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_offset_by_sessions[left] PASSED [ 10%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_in_range[left] PASSED [ 10%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_window[left] PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_distance[left] PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_to_sessions[left] PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_minutes[left] PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_minutes_count[left] PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_has_break PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_regular_holidays_sample PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_adhoc_holidays_sample PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_non_holidays_sample PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_late_opens_sample PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_early_closes_sample PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_early_closes_sample_time PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_early_closes_weekdays PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_early_closes_weekdays_time PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_non_early_closes_sample PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_non_early_closes_sample_time PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_late_opens PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_early_closes PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_session_open_close_break_start_end PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_session_has_break PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_next_prev_session PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_session_offset PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_session PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_date_to_session PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_prev_next_open_close PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_in_range PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_has_break PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_window PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_distance PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_trading_index PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_deprecated PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_open_every_weekday PASSED [ 11%] 1381s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_open_every_weekday_minute PASSED [ 11%] 1381s tests/test_xams_calendar.py::TestXAMSCalendar::test_testbase_integrity PASSED [ 11%] 1381s tests/test_xams_calendar.py::TestXAMSCalendar::test_base_integrity PASSED [ 11%] 1382s tests/test_xams_calendar.py::TestXAMSCalendar::test_calculated_against_csv PASSED [ 11%] 1382s tests/test_xams_calendar.py::TestXAMSCalendar::test_start_end PASSED [ 11%] 1382s tests/test_xams_calendar.py::TestXAMSCalendar::test_invalid_input PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_bound_min PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_bound_max PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_sanity_check_session_lengths PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_adhoc_holidays_specification PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_daylight_savings PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_opens_closes_break_starts_ends PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_properties[both] PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes[both] PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_calendar_bounds_properties[both] PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minute_methods[both] PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minutes[both] PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_trading_minute[both] PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_break_minute[both] PASSED [ 11%] 1383s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_on_minute[both] PASSED [ 11%] 1384s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_at_time[both] PASSED [ 11%] 1384s tests/test_xams_calendar.py::TestXAMSCalendar::test_prev_next_minute[both] PASSED [ 11%] 1384s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[both-next] PASSED [ 11%] 1384s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[both-next] PASSED [ 11%] 1384s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[left-next] PASSED [ 11%] 1384s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[left-next] PASSED [ 11%] 1384s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_properties[left] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes[left] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_calendar_bounds_properties[left] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minute_methods[left] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minutes[left] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_trading_minute[left] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_break_minute[left] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_on_minute[left] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_at_time[left] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_prev_next_minute[left] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[left-previous] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[both-previous] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[right-previous] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[right-next] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[right-next] PASSED [ 11%] 1385s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_properties[right] PASSED [ 11%] 1386s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes[right] PASSED [ 11%] 1386s tests/test_xams_calendar.py::TestXAMSCalendar::test_calendar_bounds_properties[right] PASSED [ 11%] 1386s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minute_methods[right] PASSED [ 11%] 1386s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minutes[right] PASSED [ 11%] 1386s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_trading_minute[right] PASSED [ 12%] 1386s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_break_minute[right] PASSED [ 12%] 1386s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_on_minute[right] PASSED [ 12%] 1386s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_at_time[right] PASSED [ 12%] 1386s tests/test_xams_calendar.py::TestXAMSCalendar::test_prev_next_minute[right] PASSED [ 12%] 1386s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[right-none] PASSED [ 12%] 1386s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[right-none] PASSED [ 12%] 1386s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[left-none] PASSED [ 12%] 1386s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[left-none] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[both-none] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[both-none] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[neither-none] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[neither-previous] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[neither-next] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_properties[neither] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes[neither] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_calendar_bounds_properties[neither] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minute_methods[neither] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minutes[neither] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_trading_minute[neither] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_break_minute[neither] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_on_minute[neither] PASSED [ 12%] 1387s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_at_time[neither] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_prev_next_minute[neither] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_past_session[neither] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_future_session[neither] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset[neither] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset_by_sessions[neither] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_in_range[neither] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_window[neither] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_distance[neither] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_to_sessions[neither] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes[neither] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes_count[neither] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_past_session[right] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_future_session[right] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset[right] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset_by_sessions[right] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_in_range[right] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_window[right] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_distance[right] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_to_sessions[right] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes[right] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes_count[right] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_past_session[left] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_future_session[left] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset[left] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset_by_sessions[left] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_in_range[left] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_window[left] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_distance[left] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_to_sessions[left] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes[left] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes_count[left] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_past_session[both] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_future_session[both] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset[both] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset_by_sessions[both] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_in_range[both] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_window[both] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_distance[both] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_to_sessions[both] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes[both] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes_count[both] PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_has_break PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_regular_holidays_sample PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_adhoc_holidays_sample PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_non_holidays_sample PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_late_opens_sample PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_early_closes_sample PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_early_closes_sample_time PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_early_closes_weekdays PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_early_closes_weekdays_time PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_non_early_closes_sample PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_non_early_closes_sample_time PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_late_opens PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_early_closes PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_open_close_break_start_end PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_has_break PASSED [ 12%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_next_prev_session PASSED [ 13%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_offset PASSED [ 13%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_session PASSED [ 13%] 1388s tests/test_xams_calendar.py::TestXAMSCalendar::test_date_to_session PASSED [ 13%] 1389s tests/test_xams_calendar.py::TestXAMSCalendar::test_prev_next_open_close PASSED [ 13%] 1389s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_in_range PASSED [ 13%] 1389s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_has_break PASSED [ 13%] 1389s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_window PASSED [ 13%] 1389s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_distance PASSED [ 13%] 1389s tests/test_xams_calendar.py::TestXAMSCalendar::test_trading_index PASSED [ 13%] 1390s tests/test_xams_calendar.py::TestXAMSCalendar::test_deprecated PASSED [ 13%] 1390s tests/test_xasx_calendar.py::TestXASXCalendar::test_testbase_integrity PASSED [ 13%] 1390s tests/test_xasx_calendar.py::TestXASXCalendar::test_base_integrity PASSED [ 13%] 1391s tests/test_xasx_calendar.py::TestXASXCalendar::test_calculated_against_csv PASSED [ 13%] 1391s tests/test_xasx_calendar.py::TestXASXCalendar::test_start_end PASSED [ 13%] 1391s tests/test_xasx_calendar.py::TestXASXCalendar::test_invalid_input PASSED [ 13%] 1392s tests/test_xasx_calendar.py::TestXASXCalendar::test_bound_min PASSED [ 13%] 1392s tests/test_xasx_calendar.py::TestXASXCalendar::test_bound_max PASSED [ 13%] 1392s tests/test_xasx_calendar.py::TestXASXCalendar::test_sanity_check_session_lengths PASSED [ 13%] 1392s tests/test_xasx_calendar.py::TestXASXCalendar::test_adhoc_holidays_specification PASSED [ 13%] 1392s tests/test_xasx_calendar.py::TestXASXCalendar::test_daylight_savings PASSED [ 13%] 1392s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions PASSED [ 13%] 1392s tests/test_xasx_calendar.py::TestXASXCalendar::test_opens_closes_break_starts_ends PASSED [ 13%] 1392s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_properties[both] PASSED [ 13%] 1393s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes[both] PASSED [ 13%] 1393s tests/test_xasx_calendar.py::TestXASXCalendar::test_calendar_bounds_properties[both] PASSED [ 13%] 1393s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minute_methods[both] PASSED [ 13%] 1393s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minutes[both] PASSED [ 13%] 1393s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_trading_minute[both] PASSED [ 13%] 1393s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_break_minute[both] PASSED [ 13%] 1393s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_on_minute[both] PASSED [ 13%] 1393s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_at_time[both] PASSED [ 13%] 1394s tests/test_xasx_calendar.py::TestXASXCalendar::test_prev_next_minute[both] PASSED [ 13%] 1394s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[both-next] PASSED [ 13%] 1394s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[both-next] PASSED [ 13%] 1394s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[left-next] PASSED [ 13%] 1394s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[left-next] PASSED [ 13%] 1394s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_properties[left] PASSED [ 13%] 1394s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes[left] PASSED [ 13%] 1394s tests/test_xasx_calendar.py::TestXASXCalendar::test_calendar_bounds_properties[left] PASSED [ 13%] 1394s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minute_methods[left] PASSED [ 13%] 1394s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minutes[left] PASSED [ 13%] 1394s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_trading_minute[left] PASSED [ 13%] 1394s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_break_minute[left] PASSED [ 13%] 1394s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_on_minute[left] PASSED [ 13%] 1394s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_at_time[left] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_prev_next_minute[left] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[left-previous] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[both-previous] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[right-previous] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[right-next] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[right-next] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_properties[right] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes[right] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_calendar_bounds_properties[right] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minute_methods[right] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minutes[right] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_trading_minute[right] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_break_minute[right] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_on_minute[right] PASSED [ 13%] 1395s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_at_time[right] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_prev_next_minute[right] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[right-none] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[right-none] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[left-none] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[left-none] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[both-none] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[both-none] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[neither-none] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[neither-previous] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[neither-next] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_properties[neither] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes[neither] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_calendar_bounds_properties[neither] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minute_methods[neither] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minutes[neither] PASSED [ 13%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_trading_minute[neither] PASSED [ 14%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_break_minute[neither] PASSED [ 14%] 1396s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_on_minute[neither] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_at_time[neither] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_prev_next_minute[neither] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_past_session[neither] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_future_session[neither] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset[neither] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset_by_sessions[neither] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_in_range[neither] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_window[neither] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_distance[neither] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_to_sessions[neither] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes[neither] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes_count[neither] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_past_session[right] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_future_session[right] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset[right] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset_by_sessions[right] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_in_range[right] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_window[right] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_distance[right] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_to_sessions[right] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes[right] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes_count[right] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_past_session[left] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_future_session[left] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset[left] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset_by_sessions[left] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_in_range[left] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_window[left] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_distance[left] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_to_sessions[left] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes[left] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes_count[left] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_past_session[both] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_future_session[both] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset[both] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset_by_sessions[both] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_in_range[both] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_window[both] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_distance[both] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_to_sessions[both] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes[both] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes_count[both] PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_has_break PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_regular_holidays_sample PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_adhoc_holidays_sample PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_non_holidays_sample PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_late_opens_sample PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_early_closes_sample PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_early_closes_sample_time PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_early_closes_weekdays PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_early_closes_weekdays_time PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_non_early_closes_sample PASSED [ 14%] 1397s tests/test_xasx_calendar.py::TestXASXCalendar::test_non_early_closes_sample_time PASSED [ 14%] 1398s tests/test_xasx_calendar.py::TestXASXCalendar::test_late_opens PASSED [ 14%] 1398s tests/test_xasx_calendar.py::TestXASXCalendar::test_early_closes PASSED [ 14%] 1398s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_open_close_break_start_end PASSED [ 14%] 1398s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_has_break PASSED [ 14%] 1398s tests/test_xasx_calendar.py::TestXASXCalendar::test_next_prev_session PASSED [ 14%] 1398s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_offset PASSED [ 14%] 1398s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_session PASSED [ 14%] 1398s tests/test_xasx_calendar.py::TestXASXCalendar::test_date_to_session PASSED [ 14%] 1399s tests/test_xasx_calendar.py::TestXASXCalendar::test_prev_next_open_close PASSED [ 14%] 1399s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_in_range PASSED [ 14%] 1399s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_has_break PASSED [ 14%] 1399s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_window PASSED [ 14%] 1399s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_distance PASSED [ 14%] 1399s tests/test_xasx_calendar.py::TestXASXCalendar::test_trading_index PASSED [ 14%] 1399s tests/test_xasx_calendar.py::TestXASXCalendar::test_deprecated PASSED [ 14%] 1399s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_testbase_integrity PASSED [ 14%] 1399s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_base_integrity PASSED [ 14%] 1401s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_calculated_against_csv PASSED [ 14%] 1401s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_start_end PASSED [ 14%] 1401s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_invalid_input PASSED [ 14%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_bound_min PASSED [ 14%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_bound_max PASSED [ 14%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sanity_check_session_lengths PASSED [ 14%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_adhoc_holidays_specification PASSED [ 14%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_daylight_savings PASSED [ 14%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions PASSED [ 14%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_opens_closes_break_starts_ends PASSED [ 15%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_properties[both] PASSED [ 15%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes[both] PASSED [ 15%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_calendar_bounds_properties[both] PASSED [ 15%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minute_methods[both] PASSED [ 15%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minutes[both] PASSED [ 15%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_trading_minute[both] PASSED [ 15%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_break_minute[both] PASSED [ 15%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_on_minute[both] PASSED [ 15%] 1402s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_at_time[both] PASSED [ 15%] 1403s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_prev_next_minute[both] PASSED [ 15%] 1403s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[both-next] PASSED [ 15%] 1403s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[both-next] PASSED [ 15%] 1403s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[left-next] PASSED [ 15%] 1403s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[left-next] PASSED [ 15%] 1403s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_properties[left] PASSED [ 15%] 1403s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes[left] PASSED [ 15%] 1403s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_calendar_bounds_properties[left] PASSED [ 15%] 1403s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minute_methods[left] PASSED [ 15%] 1403s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minutes[left] PASSED [ 15%] 1403s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_trading_minute[left] PASSED [ 15%] 1403s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_break_minute[left] PASSED [ 15%] 1403s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_on_minute[left] PASSED [ 15%] 1403s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_at_time[left] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_prev_next_minute[left] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[left-previous] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[both-previous] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[right-previous] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[right-next] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[right-next] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_properties[right] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes[right] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_calendar_bounds_properties[right] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minute_methods[right] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minutes[right] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_trading_minute[right] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_break_minute[right] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_on_minute[right] PASSED [ 15%] 1404s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_at_time[right] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_prev_next_minute[right] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[right-none] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[right-none] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[left-none] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[left-none] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[both-none] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[both-none] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[neither-none] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[neither-previous] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[neither-next] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_properties[neither] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes[neither] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_calendar_bounds_properties[neither] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minute_methods[neither] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minutes[neither] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_trading_minute[neither] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_break_minute[neither] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_on_minute[neither] PASSED [ 15%] 1405s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_at_time[neither] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_prev_next_minute[neither] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_past_session[neither] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_future_session[neither] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset[neither] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset_by_sessions[neither] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_in_range[neither] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_window[neither] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_distance[neither] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_to_sessions[neither] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes[neither] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes_count[neither] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_past_session[right] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_future_session[right] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset[right] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset_by_sessions[right] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_in_range[right] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_window[right] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_distance[right] PASSED [ 15%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_to_sessions[right] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes[right] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes_count[right] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_past_session[left] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_future_session[left] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset[left] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset_by_sessions[left] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_in_range[left] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_window[left] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_distance[left] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_to_sessions[left] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes[left] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes_count[left] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_past_session[both] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_future_session[both] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset[both] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset_by_sessions[both] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_in_range[both] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_window[both] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_distance[both] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_to_sessions[both] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes[both] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes_count[both] PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_has_break PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_regular_holidays_sample PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_adhoc_holidays_sample PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_non_holidays_sample PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_late_opens_sample PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_early_closes_sample PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_early_closes_sample_time PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_early_closes_weekdays PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_early_closes_weekdays_time PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_non_early_closes_sample PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_non_early_closes_sample_time PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_late_opens PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_early_closes PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_open_close_break_start_end PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_has_break PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_next_prev_session PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_offset PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_session PASSED [ 16%] 1406s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_date_to_session PASSED [ 16%] 1407s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_prev_next_open_close PASSED [ 16%] 1407s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_in_range PASSED [ 16%] 1407s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_has_break PASSED [ 16%] 1407s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_window PASSED [ 16%] 1407s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_distance PASSED [ 16%] 1408s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_trading_index PASSED [ 16%] 1408s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_deprecated PASSED [ 16%] 1408s tests/test_xbog_calendar.py::TestXBOGCalendar::test_testbase_integrity PASSED [ 16%] 1408s tests/test_xbog_calendar.py::TestXBOGCalendar::test_base_integrity PASSED [ 16%] 1409s tests/test_xbog_calendar.py::TestXBOGCalendar::test_calculated_against_csv PASSED [ 16%] 1409s tests/test_xbog_calendar.py::TestXBOGCalendar::test_start_end PASSED [ 16%] 1410s tests/test_xbog_calendar.py::TestXBOGCalendar::test_invalid_input PASSED [ 16%] 1410s tests/test_xbog_calendar.py::TestXBOGCalendar::test_bound_min PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_bound_max PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sanity_check_session_lengths PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_adhoc_holidays_specification PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_daylight_savings PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_opens_closes_break_starts_ends PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_properties[both] PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes[both] PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_calendar_bounds_properties[both] PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minute_methods[both] PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minutes[both] PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_trading_minute[both] PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_break_minute[both] PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_on_minute[both] PASSED [ 16%] 1411s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_at_time[both] PASSED [ 16%] 1412s tests/test_xbog_calendar.py::TestXBOGCalendar::test_prev_next_minute[both] PASSED [ 16%] 1412s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[both-next] PASSED [ 16%] 1412s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[both-next] PASSED [ 16%] 1412s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[left-next] PASSED [ 16%] 1412s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[left-next] PASSED [ 16%] 1412s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_properties[left] PASSED [ 16%] 1412s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes[left] PASSED [ 16%] 1412s tests/test_xbog_calendar.py::TestXBOGCalendar::test_calendar_bounds_properties[left] PASSED [ 16%] 1412s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minute_methods[left] PASSED [ 16%] 1412s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minutes[left] PASSED [ 16%] 1412s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_trading_minute[left] PASSED [ 16%] 1412s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_break_minute[left] PASSED [ 16%] 1412s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_on_minute[left] PASSED [ 17%] 1412s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_at_time[left] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_prev_next_minute[left] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[left-previous] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[both-previous] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[right-previous] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[right-next] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[right-next] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_properties[right] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes[right] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_calendar_bounds_properties[right] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minute_methods[right] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minutes[right] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_trading_minute[right] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_break_minute[right] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_on_minute[right] PASSED [ 17%] 1413s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_at_time[right] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_prev_next_minute[right] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[right-none] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[right-none] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[left-none] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[left-none] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[both-none] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[both-none] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[neither-none] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[neither-previous] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[neither-next] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_properties[neither] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes[neither] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_calendar_bounds_properties[neither] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minute_methods[neither] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minutes[neither] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_trading_minute[neither] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_break_minute[neither] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_on_minute[neither] PASSED [ 17%] 1414s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_at_time[neither] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_prev_next_minute[neither] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_past_session[neither] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_future_session[neither] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset[neither] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset_by_sessions[neither] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_in_range[neither] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_window[neither] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_distance[neither] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_to_sessions[neither] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes[neither] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes_count[neither] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_past_session[right] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_future_session[right] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset[right] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset_by_sessions[right] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_in_range[right] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_window[right] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_distance[right] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_to_sessions[right] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes[right] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes_count[right] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_past_session[left] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_future_session[left] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset[left] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset_by_sessions[left] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_in_range[left] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_window[left] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_distance[left] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_to_sessions[left] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes[left] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes_count[left] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_past_session[both] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_future_session[both] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset[both] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset_by_sessions[both] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_in_range[both] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_window[both] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_distance[both] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_to_sessions[both] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes[both] PASSED [ 17%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes_count[both] PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_has_break PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_regular_holidays_sample PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_adhoc_holidays_sample PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_non_holidays_sample PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_late_opens_sample PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_early_closes_sample PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_early_closes_sample_time PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_early_closes_weekdays PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_early_closes_weekdays_time PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_non_early_closes_sample PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_non_early_closes_sample_time PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_late_opens PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_early_closes PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_open_close_break_start_end PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_has_break PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_next_prev_session PASSED [ 18%] 1415s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_offset PASSED [ 18%] 1416s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_session PASSED [ 18%] 1416s tests/test_xbog_calendar.py::TestXBOGCalendar::test_date_to_session PASSED [ 18%] 1417s tests/test_xbog_calendar.py::TestXBOGCalendar::test_prev_next_open_close PASSED [ 18%] 1417s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_in_range PASSED [ 18%] 1417s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_has_break PASSED [ 18%] 1417s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_window PASSED [ 18%] 1417s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_distance PASSED [ 18%] 1417s tests/test_xbog_calendar.py::TestXBOGCalendar::test_trading_index PASSED [ 18%] 1417s tests/test_xbog_calendar.py::TestXBOGCalendar::test_deprecated PASSED [ 18%] 1417s tests/test_xbom_calendar.py::TestXBOMCalendar::test_testbase_integrity PASSED [ 18%] 1417s tests/test_xbom_calendar.py::TestXBOMCalendar::test_base_integrity PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_calculated_against_csv PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_start_end PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_invalid_input PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_bound_min PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_bound_max PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sanity_check_session_lengths PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_adhoc_holidays_specification PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_daylight_savings PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_opens_closes_break_starts_ends PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_properties[both] PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes[both] PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_calendar_bounds_properties[both] PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minute_methods[both] PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minutes[both] PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_trading_minute[both] PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_break_minute[both] PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_on_minute[both] PASSED [ 18%] 1418s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_at_time[both] PASSED [ 18%] 1419s tests/test_xbom_calendar.py::TestXBOMCalendar::test_prev_next_minute[both] PASSED [ 18%] 1419s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[both-next] PASSED [ 18%] 1419s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[both-next] PASSED [ 18%] 1419s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[left-next] PASSED [ 18%] 1419s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[left-next] PASSED [ 18%] 1419s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_properties[left] PASSED [ 18%] 1419s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes[left] PASSED [ 18%] 1419s tests/test_xbom_calendar.py::TestXBOMCalendar::test_calendar_bounds_properties[left] PASSED [ 18%] 1419s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minute_methods[left] PASSED [ 18%] 1419s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minutes[left] PASSED [ 18%] 1419s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_trading_minute[left] PASSED [ 18%] 1419s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_break_minute[left] PASSED [ 18%] 1419s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_on_minute[left] PASSED [ 18%] 1419s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_at_time[left] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_prev_next_minute[left] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[left-previous] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[both-previous] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[right-previous] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[right-next] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[right-next] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_properties[right] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes[right] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_calendar_bounds_properties[right] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minute_methods[right] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minutes[right] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_trading_minute[right] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_break_minute[right] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_on_minute[right] PASSED [ 18%] 1420s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_at_time[right] PASSED [ 18%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_prev_next_minute[right] PASSED [ 18%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[right-none] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[right-none] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[left-none] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[left-none] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[both-none] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[both-none] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[neither-none] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[neither-previous] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[neither-next] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_properties[neither] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes[neither] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_calendar_bounds_properties[neither] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minute_methods[neither] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minutes[neither] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_trading_minute[neither] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_break_minute[neither] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_on_minute[neither] PASSED [ 19%] 1421s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_at_time[neither] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_prev_next_minute[neither] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_past_session[neither] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_future_session[neither] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset[neither] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset_by_sessions[neither] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_in_range[neither] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_window[neither] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_distance[neither] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_to_sessions[neither] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes[neither] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes_count[neither] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_past_session[right] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_future_session[right] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset[right] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset_by_sessions[right] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_in_range[right] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_window[right] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_distance[right] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_to_sessions[right] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes[right] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes_count[right] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_past_session[left] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_future_session[left] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset[left] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset_by_sessions[left] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_in_range[left] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_window[left] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_distance[left] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_to_sessions[left] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes[left] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes_count[left] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_past_session[both] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_future_session[both] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset[both] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset_by_sessions[both] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_in_range[both] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_window[both] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_distance[both] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_to_sessions[both] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes[both] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes_count[both] PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_has_break PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_regular_holidays_sample PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_adhoc_holidays_sample PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_non_holidays_sample PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_late_opens_sample PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_early_closes_sample PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_early_closes_sample_time PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_early_closes_weekdays PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_early_closes_weekdays_time PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_non_early_closes_sample PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_non_early_closes_sample_time PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_late_opens PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_early_closes PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_open_close_break_start_end PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_has_break PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_next_prev_session PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_offset PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_session PASSED [ 19%] 1422s tests/test_xbom_calendar.py::TestXBOMCalendar::test_date_to_session PASSED [ 19%] 1423s tests/test_xbom_calendar.py::TestXBOMCalendar::test_prev_next_open_close PASSED [ 19%] 1423s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_in_range PASSED [ 20%] 1423s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_has_break PASSED [ 20%] 1423s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_window PASSED [ 20%] 1423s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_distance PASSED [ 20%] 1423s tests/test_xbom_calendar.py::TestXBOMCalendar::test_trading_index PASSED [ 20%] 1423s tests/test_xbom_calendar.py::TestXBOMCalendar::test_deprecated PASSED [ 20%] 1423s tests/test_xbru_calendar.py::TestXBRUCalendar::test_testbase_integrity PASSED [ 20%] 1423s tests/test_xbru_calendar.py::TestXBRUCalendar::test_base_integrity PASSED [ 20%] 1424s tests/test_xbru_calendar.py::TestXBRUCalendar::test_calculated_against_csv PASSED [ 20%] 1424s tests/test_xbru_calendar.py::TestXBRUCalendar::test_start_end PASSED [ 20%] 1424s tests/test_xbru_calendar.py::TestXBRUCalendar::test_invalid_input PASSED [ 20%] 1425s tests/test_xbru_calendar.py::TestXBRUCalendar::test_bound_min PASSED [ 20%] 1425s tests/test_xbru_calendar.py::TestXBRUCalendar::test_bound_max PASSED [ 20%] 1425s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sanity_check_session_lengths PASSED [ 20%] 1425s tests/test_xbru_calendar.py::TestXBRUCalendar::test_adhoc_holidays_specification PASSED [ 20%] 1425s tests/test_xbru_calendar.py::TestXBRUCalendar::test_daylight_savings PASSED [ 20%] 1425s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions PASSED [ 20%] 1425s tests/test_xbru_calendar.py::TestXBRUCalendar::test_opens_closes_break_starts_ends PASSED [ 20%] 1426s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_properties[both] PASSED [ 20%] 1426s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes[both] PASSED [ 20%] 1426s tests/test_xbru_calendar.py::TestXBRUCalendar::test_calendar_bounds_properties[both] PASSED [ 20%] 1426s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minute_methods[both] PASSED [ 20%] 1426s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minutes[both] PASSED [ 20%] 1426s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_trading_minute[both] PASSED [ 20%] 1426s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_break_minute[both] PASSED [ 20%] 1426s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_on_minute[both] PASSED [ 20%] 1426s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_at_time[both] PASSED [ 20%] 1427s tests/test_xbru_calendar.py::TestXBRUCalendar::test_prev_next_minute[both] PASSED [ 20%] 1427s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[both-next] PASSED [ 20%] 1427s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[both-next] PASSED [ 20%] 1427s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[left-next] PASSED [ 20%] 1427s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[left-next] PASSED [ 20%] 1427s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_properties[left] PASSED [ 20%] 1427s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes[left] PASSED [ 20%] 1427s tests/test_xbru_calendar.py::TestXBRUCalendar::test_calendar_bounds_properties[left] PASSED [ 20%] 1427s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minute_methods[left] PASSED [ 20%] 1427s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minutes[left] PASSED [ 20%] 1427s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_trading_minute[left] PASSED [ 20%] 1427s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_break_minute[left] PASSED [ 20%] 1427s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_on_minute[left] PASSED [ 20%] 1427s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_at_time[left] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_prev_next_minute[left] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[left-previous] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[both-previous] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[right-previous] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[right-next] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[right-next] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_properties[right] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes[right] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_calendar_bounds_properties[right] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minute_methods[right] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minutes[right] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_trading_minute[right] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_break_minute[right] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_on_minute[right] PASSED [ 20%] 1428s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_at_time[right] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_prev_next_minute[right] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[right-none] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[right-none] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[left-none] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[left-none] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[both-none] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[both-none] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[neither-none] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[neither-previous] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[neither-next] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_properties[neither] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes[neither] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_calendar_bounds_properties[neither] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minute_methods[neither] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minutes[neither] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_trading_minute[neither] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_break_minute[neither] PASSED [ 20%] 1429s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_on_minute[neither] PASSED [ 20%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_at_time[neither] PASSED [ 20%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_prev_next_minute[neither] PASSED [ 20%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_past_session[neither] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_future_session[neither] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset[neither] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset_by_sessions[neither] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_in_range[neither] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_window[neither] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_distance[neither] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_to_sessions[neither] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes[neither] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes_count[neither] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_past_session[right] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_future_session[right] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset[right] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset_by_sessions[right] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_in_range[right] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_window[right] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_distance[right] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_to_sessions[right] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes[right] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes_count[right] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_past_session[left] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_future_session[left] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset[left] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset_by_sessions[left] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_in_range[left] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_window[left] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_distance[left] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_to_sessions[left] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes[left] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes_count[left] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_past_session[both] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_future_session[both] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset[both] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset_by_sessions[both] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_in_range[both] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_window[both] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_distance[both] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_to_sessions[both] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes[both] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes_count[both] PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_has_break PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_regular_holidays_sample PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_adhoc_holidays_sample PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_non_holidays_sample PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_late_opens_sample PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_early_closes_sample PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_early_closes_sample_time PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_early_closes_weekdays PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_early_closes_weekdays_time PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_non_early_closes_sample PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_non_early_closes_sample_time PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_late_opens PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_early_closes PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_open_close_break_start_end PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_has_break PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_next_prev_session PASSED [ 21%] 1430s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_offset PASSED [ 21%] 1431s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_session PASSED [ 21%] 1431s tests/test_xbru_calendar.py::TestXBRUCalendar::test_date_to_session PASSED [ 21%] 1432s tests/test_xbru_calendar.py::TestXBRUCalendar::test_prev_next_open_close PASSED [ 21%] 1432s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_in_range PASSED [ 21%] 1432s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_has_break PASSED [ 21%] 1432s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_window PASSED [ 21%] 1432s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_distance PASSED [ 21%] 1432s tests/test_xbru_calendar.py::TestXBRUCalendar::test_trading_index PASSED [ 21%] 1432s tests/test_xbru_calendar.py::TestXBRUCalendar::test_deprecated PASSED [ 21%] 1432s tests/test_xbse_calendar.py::TestXBSECalendar::test_testbase_integrity PASSED [ 21%] 1432s tests/test_xbse_calendar.py::TestXBSECalendar::test_base_integrity PASSED [ 21%] 1433s tests/test_xbse_calendar.py::TestXBSECalendar::test_calculated_against_csv PASSED [ 21%] 1433s tests/test_xbse_calendar.py::TestXBSECalendar::test_start_end PASSED [ 21%] 1433s tests/test_xbse_calendar.py::TestXBSECalendar::test_invalid_input PASSED [ 21%] 1434s tests/test_xbse_calendar.py::TestXBSECalendar::test_bound_min PASSED [ 21%] 1434s tests/test_xbse_calendar.py::TestXBSECalendar::test_bound_max PASSED [ 21%] 1434s tests/test_xbse_calendar.py::TestXBSECalendar::test_sanity_check_session_lengths PASSED [ 21%] 1434s tests/test_xbse_calendar.py::TestXBSECalendar::test_adhoc_holidays_specification PASSED [ 21%] 1434s tests/test_xbse_calendar.py::TestXBSECalendar::test_daylight_savings PASSED [ 21%] 1434s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions PASSED [ 21%] 1434s tests/test_xbse_calendar.py::TestXBSECalendar::test_opens_closes_break_starts_ends PASSED [ 21%] 1435s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_properties[both] PASSED [ 21%] 1435s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes[both] PASSED [ 21%] 1435s tests/test_xbse_calendar.py::TestXBSECalendar::test_calendar_bounds_properties[both] PASSED [ 21%] 1435s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minute_methods[both] PASSED [ 21%] 1435s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minutes[both] PASSED [ 22%] 1435s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_trading_minute[both] PASSED [ 22%] 1435s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_break_minute[both] PASSED [ 22%] 1435s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_on_minute[both] PASSED [ 22%] 1435s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_at_time[both] PASSED [ 22%] 1436s tests/test_xbse_calendar.py::TestXBSECalendar::test_prev_next_minute[both] PASSED [ 22%] 1436s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[both-next] PASSED [ 22%] 1436s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[both-next] PASSED [ 22%] 1436s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[left-next] PASSED [ 22%] 1436s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[left-next] PASSED [ 22%] 1436s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_properties[left] PASSED [ 22%] 1436s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes[left] PASSED [ 22%] 1436s tests/test_xbse_calendar.py::TestXBSECalendar::test_calendar_bounds_properties[left] PASSED [ 22%] 1436s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minute_methods[left] PASSED [ 22%] 1436s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minutes[left] PASSED [ 22%] 1436s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_trading_minute[left] PASSED [ 22%] 1436s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_break_minute[left] PASSED [ 22%] 1436s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_on_minute[left] PASSED [ 22%] 1436s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_at_time[left] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_prev_next_minute[left] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[left-previous] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[both-previous] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[right-previous] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[right-next] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[right-next] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_properties[right] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes[right] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_calendar_bounds_properties[right] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minute_methods[right] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minutes[right] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_trading_minute[right] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_break_minute[right] PASSED [ 22%] 1437s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_on_minute[right] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_at_time[right] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_prev_next_minute[right] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[right-none] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[right-none] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[left-none] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[left-none] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[both-none] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[both-none] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[neither-none] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[neither-previous] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[neither-next] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 22%] 1438s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_properties[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_calendar_bounds_properties[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minute_methods[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minutes[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_trading_minute[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_break_minute[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_on_minute[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_at_time[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_prev_next_minute[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_past_session[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_future_session[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset_by_sessions[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_in_range[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_window[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_distance[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_to_sessions[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes_count[neither] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_past_session[right] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_future_session[right] PASSED [ 22%] 1439s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset[right] PASSED [ 22%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset_by_sessions[right] PASSED [ 22%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_in_range[right] PASSED [ 22%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_window[right] PASSED [ 22%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_distance[right] PASSED [ 22%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_to_sessions[right] PASSED [ 22%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes[right] PASSED [ 22%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes_count[right] PASSED [ 22%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_past_session[left] PASSED [ 22%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_future_session[left] PASSED [ 22%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset[left] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset_by_sessions[left] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_in_range[left] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_window[left] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_distance[left] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_to_sessions[left] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes[left] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes_count[left] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_past_session[both] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_future_session[both] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset[both] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset_by_sessions[both] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_in_range[both] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_window[both] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_distance[both] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_to_sessions[both] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes[both] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes_count[both] PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_has_break PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_regular_holidays_sample PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_adhoc_holidays_sample PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_non_holidays_sample PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_late_opens_sample PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_early_closes_sample PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_early_closes_sample_time PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_early_closes_weekdays PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_early_closes_weekdays_time PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_non_early_closes_sample PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_non_early_closes_sample_time PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_late_opens PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_early_closes PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_open_close_break_start_end PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_has_break PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_next_prev_session PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_offset PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_session PASSED [ 23%] 1440s tests/test_xbse_calendar.py::TestXBSECalendar::test_date_to_session PASSED [ 23%] 1441s tests/test_xbse_calendar.py::TestXBSECalendar::test_prev_next_open_close PASSED [ 23%] 1441s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_in_range PASSED [ 23%] 1441s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_has_break PASSED [ 23%] 1441s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_window PASSED [ 23%] 1441s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_distance PASSED [ 23%] 1442s tests/test_xbse_calendar.py::TestXBSECalendar::test_trading_index PASSED [ 23%] 1442s tests/test_xbse_calendar.py::TestXBSECalendar::test_deprecated PASSED [ 23%] 1442s tests/test_xbud_calendar.py::TestXBUDCalendar::test_testbase_integrity PASSED [ 23%] 1442s tests/test_xbud_calendar.py::TestXBUDCalendar::test_base_integrity PASSED [ 23%] 1443s tests/test_xbud_calendar.py::TestXBUDCalendar::test_calculated_against_csv PASSED [ 23%] 1443s tests/test_xbud_calendar.py::TestXBUDCalendar::test_start_end PASSED [ 23%] 1443s tests/test_xbud_calendar.py::TestXBUDCalendar::test_invalid_input PASSED [ 23%] 1444s tests/test_xbud_calendar.py::TestXBUDCalendar::test_bound_min PASSED [ 23%] 1444s tests/test_xbud_calendar.py::TestXBUDCalendar::test_bound_max PASSED [ 23%] 1444s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sanity_check_session_lengths PASSED [ 23%] 1445s tests/test_xbud_calendar.py::TestXBUDCalendar::test_adhoc_holidays_specification PASSED [ 23%] 1445s tests/test_xbud_calendar.py::TestXBUDCalendar::test_daylight_savings PASSED [ 23%] 1445s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions PASSED [ 23%] 1445s tests/test_xbud_calendar.py::TestXBUDCalendar::test_opens_closes_break_starts_ends PASSED [ 23%] 1445s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_properties[both] PASSED [ 23%] 1445s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes[both] PASSED [ 23%] 1445s tests/test_xbud_calendar.py::TestXBUDCalendar::test_calendar_bounds_properties[both] PASSED [ 23%] 1445s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minute_methods[both] PASSED [ 23%] 1445s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minutes[both] PASSED [ 23%] 1445s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_trading_minute[both] PASSED [ 23%] 1445s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_break_minute[both] PASSED [ 23%] 1445s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_on_minute[both] PASSED [ 23%] 1445s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_at_time[both] PASSED [ 23%] 1446s tests/test_xbud_calendar.py::TestXBUDCalendar::test_prev_next_minute[both] PASSED [ 23%] 1446s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[both-next] PASSED [ 23%] 1446s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[both-next] PASSED [ 23%] 1446s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[left-next] PASSED [ 23%] 1446s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[left-next] PASSED [ 23%] 1446s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_properties[left] PASSED [ 23%] 1446s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes[left] PASSED [ 23%] 1446s tests/test_xbud_calendar.py::TestXBUDCalendar::test_calendar_bounds_properties[left] PASSED [ 23%] 1446s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minute_methods[left] PASSED [ 23%] 1446s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minutes[left] PASSED [ 23%] 1446s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_trading_minute[left] PASSED [ 23%] 1446s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_break_minute[left] PASSED [ 23%] 1446s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_on_minute[left] PASSED [ 23%] 1446s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_at_time[left] PASSED [ 23%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_prev_next_minute[left] PASSED [ 23%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[left-previous] PASSED [ 23%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 23%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[both-previous] PASSED [ 24%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 24%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[right-previous] PASSED [ 24%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 24%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[right-next] PASSED [ 24%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[right-next] PASSED [ 24%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_properties[right] PASSED [ 24%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes[right] PASSED [ 24%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_calendar_bounds_properties[right] PASSED [ 24%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minute_methods[right] PASSED [ 24%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minutes[right] PASSED [ 24%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_trading_minute[right] PASSED [ 24%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_break_minute[right] PASSED [ 24%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_on_minute[right] PASSED [ 24%] 1447s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_at_time[right] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_prev_next_minute[right] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[right-none] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[right-none] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[left-none] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[left-none] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[both-none] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[both-none] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[neither-none] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[neither-previous] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[neither-next] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_properties[neither] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes[neither] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_calendar_bounds_properties[neither] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minute_methods[neither] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minutes[neither] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_trading_minute[neither] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_break_minute[neither] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_on_minute[neither] PASSED [ 24%] 1448s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_at_time[neither] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_prev_next_minute[neither] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_past_session[neither] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_future_session[neither] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset[neither] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset_by_sessions[neither] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_in_range[neither] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_window[neither] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_distance[neither] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_to_sessions[neither] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes[neither] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes_count[neither] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_past_session[right] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_future_session[right] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset[right] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset_by_sessions[right] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_in_range[right] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_window[right] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_distance[right] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_to_sessions[right] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes[right] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes_count[right] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_past_session[left] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_future_session[left] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset[left] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset_by_sessions[left] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_in_range[left] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_window[left] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_distance[left] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_to_sessions[left] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes[left] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes_count[left] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_past_session[both] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_future_session[both] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset[both] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset_by_sessions[both] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_in_range[both] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_window[both] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_distance[both] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_to_sessions[both] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes[both] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes_count[both] PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_has_break PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_regular_holidays_sample PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_adhoc_holidays_sample PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_non_holidays_sample PASSED [ 24%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_late_opens_sample PASSED [ 25%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_early_closes_sample PASSED [ 25%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_early_closes_sample_time PASSED [ 25%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_early_closes_weekdays PASSED [ 25%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_early_closes_weekdays_time PASSED [ 25%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_non_early_closes_sample PASSED [ 25%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_non_early_closes_sample_time PASSED [ 25%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_late_opens PASSED [ 25%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_early_closes PASSED [ 25%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_open_close_break_start_end PASSED [ 25%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_has_break PASSED [ 25%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_next_prev_session PASSED [ 25%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_offset PASSED [ 25%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_session PASSED [ 25%] 1449s tests/test_xbud_calendar.py::TestXBUDCalendar::test_date_to_session PASSED [ 25%] 1450s tests/test_xbud_calendar.py::TestXBUDCalendar::test_prev_next_open_close PASSED [ 25%] 1450s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_in_range PASSED [ 25%] 1450s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_has_break PASSED [ 25%] 1450s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_window PASSED [ 25%] 1450s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_distance PASSED [ 25%] 1451s tests/test_xbud_calendar.py::TestXBUDCalendar::test_trading_index PASSED [ 25%] 1451s tests/test_xbud_calendar.py::TestXBUDCalendar::test_deprecated PASSED [ 25%] 1451s tests/test_xbue_calendar.py::TestXBUECalendar::test_testbase_integrity PASSED [ 25%] 1451s tests/test_xbue_calendar.py::TestXBUECalendar::test_base_integrity PASSED [ 25%] 1452s tests/test_xbue_calendar.py::TestXBUECalendar::test_calculated_against_csv PASSED [ 25%] 1452s tests/test_xbue_calendar.py::TestXBUECalendar::test_start_end PASSED [ 25%] 1453s tests/test_xbue_calendar.py::TestXBUECalendar::test_invalid_input PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_bound_min PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_bound_max PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_sanity_check_session_lengths PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_adhoc_holidays_specification PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_daylight_savings PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_opens_closes_break_starts_ends PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_properties[both] PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes[both] PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_calendar_bounds_properties[both] PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minute_methods[both] PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minutes[both] PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_trading_minute[both] PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_break_minute[both] PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_on_minute[both] PASSED [ 25%] 1454s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_at_time[both] PASSED [ 25%] 1455s tests/test_xbue_calendar.py::TestXBUECalendar::test_prev_next_minute[both] PASSED [ 25%] 1455s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[both-next] PASSED [ 25%] 1455s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[both-next] PASSED [ 25%] 1455s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[left-next] PASSED [ 25%] 1455s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[left-next] PASSED [ 25%] 1455s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_properties[left] PASSED [ 25%] 1455s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes[left] PASSED [ 25%] 1455s tests/test_xbue_calendar.py::TestXBUECalendar::test_calendar_bounds_properties[left] PASSED [ 25%] 1455s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minute_methods[left] PASSED [ 25%] 1455s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minutes[left] PASSED [ 25%] 1455s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_trading_minute[left] PASSED [ 25%] 1455s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_break_minute[left] PASSED [ 25%] 1455s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_on_minute[left] PASSED [ 25%] 1455s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_at_time[left] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_prev_next_minute[left] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[left-previous] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[both-previous] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[right-previous] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[right-next] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[right-next] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_properties[right] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes[right] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_calendar_bounds_properties[right] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minute_methods[right] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minutes[right] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_trading_minute[right] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_break_minute[right] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_on_minute[right] PASSED [ 25%] 1456s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_at_time[right] PASSED [ 25%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_prev_next_minute[right] PASSED [ 25%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[right-none] PASSED [ 25%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[right-none] PASSED [ 25%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[left-none] PASSED [ 25%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[left-none] PASSED [ 25%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[both-none] PASSED [ 25%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[both-none] PASSED [ 25%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[neither-none] PASSED [ 26%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 26%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[neither-previous] PASSED [ 26%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 26%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[neither-next] PASSED [ 26%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 26%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_properties[neither] PASSED [ 26%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes[neither] PASSED [ 26%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_calendar_bounds_properties[neither] PASSED [ 26%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minute_methods[neither] PASSED [ 26%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minutes[neither] PASSED [ 26%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_trading_minute[neither] PASSED [ 26%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_break_minute[neither] PASSED [ 26%] 1457s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_on_minute[neither] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_at_time[neither] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_prev_next_minute[neither] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_past_session[neither] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_future_session[neither] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset[neither] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset_by_sessions[neither] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_in_range[neither] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_window[neither] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_distance[neither] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_to_sessions[neither] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes[neither] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes_count[neither] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_past_session[right] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_future_session[right] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset[right] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset_by_sessions[right] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_in_range[right] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_window[right] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_distance[right] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_to_sessions[right] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes[right] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes_count[right] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_past_session[left] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_future_session[left] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset[left] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset_by_sessions[left] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_in_range[left] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_window[left] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_distance[left] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_to_sessions[left] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes[left] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes_count[left] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_past_session[both] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_future_session[both] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset[both] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset_by_sessions[both] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_in_range[both] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_window[both] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_distance[both] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_to_sessions[both] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes[both] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes_count[both] PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_has_break PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_regular_holidays_sample PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_adhoc_holidays_sample PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_non_holidays_sample PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_late_opens_sample PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_early_closes_sample PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_early_closes_sample_time PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_early_closes_weekdays PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_early_closes_weekdays_time PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_non_early_closes_sample PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_non_early_closes_sample_time PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_late_opens PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_early_closes PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_open_close_break_start_end PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_has_break PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_next_prev_session PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_offset PASSED [ 26%] 1458s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_session PASSED [ 26%] 1459s tests/test_xbue_calendar.py::TestXBUECalendar::test_date_to_session PASSED [ 26%] 1460s tests/test_xbue_calendar.py::TestXBUECalendar::test_prev_next_open_close PASSED [ 26%] 1460s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_in_range PASSED [ 26%] 1460s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_has_break PASSED [ 26%] 1460s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_window PASSED [ 26%] 1460s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_distance PASSED [ 26%] 1460s tests/test_xbue_calendar.py::TestXBUECalendar::test_trading_index PASSED [ 26%] 1460s tests/test_xbue_calendar.py::TestXBUECalendar::test_deprecated PASSED [ 26%] 1460s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_testbase_integrity PASSED [ 27%] 1460s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_base_integrity PASSED [ 27%] 1461s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_calculated_against_csv PASSED [ 27%] 1461s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_start_end PASSED [ 27%] 1461s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_invalid_input PASSED [ 27%] 1462s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_bound_min PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_bound_max PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sanity_check_session_lengths PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_adhoc_holidays_specification PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_daylight_savings PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_opens_closes_break_starts_ends PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_properties[both] PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes[both] PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_calendar_bounds_properties[both] PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minute_methods[both] PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minutes[both] PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_trading_minute[both] PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_break_minute[both] PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_on_minute[both] PASSED [ 27%] 1463s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_at_time[both] PASSED [ 27%] 1464s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_prev_next_minute[both] PASSED [ 27%] 1464s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[both-next] PASSED [ 27%] 1464s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[both-next] PASSED [ 27%] 1464s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[left-next] PASSED [ 27%] 1464s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[left-next] PASSED [ 27%] 1464s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_properties[left] PASSED [ 27%] 1464s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes[left] PASSED [ 27%] 1464s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_calendar_bounds_properties[left] PASSED [ 27%] 1464s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minute_methods[left] PASSED [ 27%] 1464s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minutes[left] PASSED [ 27%] 1464s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_trading_minute[left] PASSED [ 27%] 1464s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_break_minute[left] PASSED [ 27%] 1464s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_on_minute[left] PASSED [ 27%] 1464s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_at_time[left] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_prev_next_minute[left] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[left-previous] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[both-previous] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[right-previous] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[right-next] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[right-next] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_properties[right] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes[right] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_calendar_bounds_properties[right] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minute_methods[right] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minutes[right] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_trading_minute[right] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_break_minute[right] PASSED [ 27%] 1465s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_on_minute[right] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_at_time[right] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_prev_next_minute[right] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[right-none] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[right-none] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[left-none] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[left-none] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[both-none] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[both-none] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[neither-none] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[neither-previous] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[neither-next] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_properties[neither] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes[neither] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_calendar_bounds_properties[neither] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minute_methods[neither] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minutes[neither] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_trading_minute[neither] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_break_minute[neither] PASSED [ 27%] 1466s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_on_minute[neither] PASSED [ 27%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_at_time[neither] PASSED [ 27%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_prev_next_minute[neither] PASSED [ 27%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_past_session[neither] PASSED [ 27%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_future_session[neither] PASSED [ 27%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset[neither] PASSED [ 27%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset_by_sessions[neither] PASSED [ 27%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_in_range[neither] PASSED [ 27%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_window[neither] PASSED [ 28%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_distance[neither] PASSED [ 28%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_to_sessions[neither] PASSED [ 28%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes[neither] PASSED [ 28%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes_count[neither] PASSED [ 28%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_past_session[right] PASSED [ 28%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_future_session[right] PASSED [ 28%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset[right] PASSED [ 28%] 1467s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset_by_sessions[right] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_in_range[right] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_window[right] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_distance[right] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_to_sessions[right] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes[right] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes_count[right] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_past_session[left] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_future_session[left] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset[left] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset_by_sessions[left] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_in_range[left] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_window[left] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_distance[left] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_to_sessions[left] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes[left] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes_count[left] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_past_session[both] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_future_session[both] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset[both] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset_by_sessions[both] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_in_range[both] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_window[both] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_distance[both] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_to_sessions[both] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes[both] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes_count[both] PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_has_break PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_regular_holidays_sample PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_adhoc_holidays_sample PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_non_holidays_sample PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_late_opens_sample PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_early_closes_sample PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_early_closes_sample_time PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_early_closes_weekdays PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_early_closes_weekdays_time PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_non_early_closes_sample PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_non_early_closes_sample_time PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_late_opens PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_early_closes PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_open_close_break_start_end PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_has_break PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_next_prev_session PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_offset PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_session PASSED [ 28%] 1468s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_date_to_session PASSED [ 28%] 1469s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_prev_next_open_close PASSED [ 28%] 1469s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_in_range PASSED [ 28%] 1469s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_has_break PASSED [ 28%] 1469s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_window PASSED [ 28%] 1469s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_distance PASSED [ 28%] 1470s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_trading_index PASSED [ 28%] 1470s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_deprecated PASSED [ 28%] 1470s tests/test_xcse_calendar.py::TestXCSECalendar::test_testbase_integrity PASSED [ 28%] 1470s tests/test_xcse_calendar.py::TestXCSECalendar::test_base_integrity PASSED [ 28%] 1471s tests/test_xcse_calendar.py::TestXCSECalendar::test_calculated_against_csv PASSED [ 28%] 1471s tests/test_xcse_calendar.py::TestXCSECalendar::test_start_end PASSED [ 28%] 1471s tests/test_xcse_calendar.py::TestXCSECalendar::test_invalid_input PASSED [ 28%] 1472s tests/test_xcse_calendar.py::TestXCSECalendar::test_bound_min PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_bound_max PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_sanity_check_session_lengths PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_adhoc_holidays_specification PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_daylight_savings PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_opens_closes_break_starts_ends PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_properties[both] PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes[both] PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_calendar_bounds_properties[both] PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minute_methods[both] PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minutes[both] PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_trading_minute[both] PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_break_minute[both] PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_on_minute[both] PASSED [ 28%] 1473s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_at_time[both] PASSED [ 28%] 1474s tests/test_xcse_calendar.py::TestXCSECalendar::test_prev_next_minute[both] PASSED [ 29%] 1474s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[both-next] PASSED [ 29%] 1474s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[both-next] PASSED [ 29%] 1474s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[left-next] PASSED [ 29%] 1474s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[left-next] PASSED [ 29%] 1474s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_properties[left] PASSED [ 29%] 1474s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes[left] PASSED [ 29%] 1474s tests/test_xcse_calendar.py::TestXCSECalendar::test_calendar_bounds_properties[left] PASSED [ 29%] 1474s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minute_methods[left] PASSED [ 29%] 1474s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minutes[left] PASSED [ 29%] 1474s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_trading_minute[left] PASSED [ 29%] 1474s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_break_minute[left] PASSED [ 29%] 1474s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_on_minute[left] PASSED [ 29%] 1474s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_at_time[left] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_prev_next_minute[left] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[left-previous] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[both-previous] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[right-previous] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[right-next] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[right-next] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_properties[right] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes[right] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_calendar_bounds_properties[right] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minute_methods[right] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minutes[right] PASSED [ 29%] 1475s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_trading_minute[right] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_break_minute[right] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_on_minute[right] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_at_time[right] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_prev_next_minute[right] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[right-none] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[right-none] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[left-none] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[left-none] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[both-none] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[both-none] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[neither-none] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[neither-previous] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[neither-next] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 29%] 1476s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_properties[neither] PASSED [ 29%] 1477s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes[neither] PASSED [ 29%] 1477s tests/test_xcse_calendar.py::TestXCSECalendar::test_calendar_bounds_properties[neither] PASSED [ 29%] 1477s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minute_methods[neither] PASSED [ 29%] 1477s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minutes[neither] PASSED [ 29%] 1477s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_trading_minute[neither] PASSED [ 29%] 1477s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_break_minute[neither] PASSED [ 29%] 1477s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_on_minute[neither] PASSED [ 29%] 1477s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_at_time[neither] PASSED [ 29%] 1477s tests/test_xcse_calendar.py::TestXCSECalendar::test_prev_next_minute[neither] PASSED [ 29%] 1477s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_past_session[neither] PASSED [ 29%] 1477s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_future_session[neither] PASSED [ 29%] 1477s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset[neither] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset_by_sessions[neither] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_in_range[neither] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_window[neither] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_distance[neither] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_to_sessions[neither] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes[neither] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes_count[neither] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_past_session[right] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_future_session[right] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset[right] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset_by_sessions[right] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_in_range[right] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_window[right] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_distance[right] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_to_sessions[right] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes[right] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes_count[right] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_past_session[left] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_future_session[left] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset[left] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset_by_sessions[left] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_in_range[left] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_window[left] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_distance[left] PASSED [ 29%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_to_sessions[left] PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes[left] PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes_count[left] PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_past_session[both] PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_future_session[both] PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset[both] PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset_by_sessions[both] PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_in_range[both] PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_window[both] PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_distance[both] PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_to_sessions[both] PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes[both] PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes_count[both] PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_has_break PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_regular_holidays_sample PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_adhoc_holidays_sample PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_non_holidays_sample PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_late_opens_sample PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_early_closes_sample PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_early_closes_sample_time PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_early_closes_weekdays PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_early_closes_weekdays_time PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_non_early_closes_sample PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_non_early_closes_sample_time PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_late_opens PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_early_closes PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_open_close_break_start_end PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_has_break PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_next_prev_session PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_offset PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_session PASSED [ 30%] 1478s tests/test_xcse_calendar.py::TestXCSECalendar::test_date_to_session PASSED [ 30%] 1479s tests/test_xcse_calendar.py::TestXCSECalendar::test_prev_next_open_close PASSED [ 30%] 1479s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_in_range PASSED [ 30%] 1479s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_has_break PASSED [ 30%] 1479s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_window PASSED [ 30%] 1479s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_distance PASSED [ 30%] 1479s tests/test_xcse_calendar.py::TestXCSECalendar::test_trading_index PASSED [ 30%] 1479s tests/test_xcse_calendar.py::TestXCSECalendar::test_deprecated PASSED [ 30%] 1479s tests/test_xdub_calendar.py::TestXDUBCalendar::test_testbase_integrity PASSED [ 30%] 1479s tests/test_xdub_calendar.py::TestXDUBCalendar::test_base_integrity PASSED [ 30%] 1481s tests/test_xdub_calendar.py::TestXDUBCalendar::test_calculated_against_csv PASSED [ 30%] 1481s tests/test_xdub_calendar.py::TestXDUBCalendar::test_start_end PASSED [ 30%] 1481s tests/test_xdub_calendar.py::TestXDUBCalendar::test_invalid_input PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_bound_min PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_bound_max PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sanity_check_session_lengths PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_adhoc_holidays_specification PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_daylight_savings PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_opens_closes_break_starts_ends PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_properties[both] PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes[both] PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_calendar_bounds_properties[both] PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minute_methods[both] PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minutes[both] PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_trading_minute[both] PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_break_minute[both] PASSED [ 30%] 1482s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_on_minute[both] PASSED [ 30%] 1483s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_at_time[both] PASSED [ 30%] 1483s tests/test_xdub_calendar.py::TestXDUBCalendar::test_prev_next_minute[both] PASSED [ 30%] 1483s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[both-next] PASSED [ 30%] 1483s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[both-next] PASSED [ 30%] 1483s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[left-next] PASSED [ 30%] 1483s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[left-next] PASSED [ 30%] 1483s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_properties[left] PASSED [ 30%] 1483s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes[left] PASSED [ 30%] 1483s tests/test_xdub_calendar.py::TestXDUBCalendar::test_calendar_bounds_properties[left] PASSED [ 30%] 1483s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minute_methods[left] PASSED [ 30%] 1483s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minutes[left] PASSED [ 30%] 1483s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_trading_minute[left] PASSED [ 30%] 1483s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_break_minute[left] PASSED [ 30%] 1483s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_on_minute[left] PASSED [ 30%] 1484s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_at_time[left] PASSED [ 30%] 1484s tests/test_xdub_calendar.py::TestXDUBCalendar::test_prev_next_minute[left] PASSED [ 30%] 1484s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[left-previous] PASSED [ 30%] 1484s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 30%] 1484s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[both-previous] PASSED [ 30%] 1484s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 30%] 1484s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[right-previous] PASSED [ 30%] 1484s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 30%] 1484s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[right-next] PASSED [ 30%] 1484s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[right-next] PASSED [ 31%] 1484s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_properties[right] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes[right] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_calendar_bounds_properties[right] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minute_methods[right] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minutes[right] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_trading_minute[right] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_break_minute[right] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_on_minute[right] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_at_time[right] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_prev_next_minute[right] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[right-none] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[right-none] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[left-none] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[left-none] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[both-none] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[both-none] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[neither-none] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[neither-previous] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[neither-next] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 31%] 1485s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_properties[neither] PASSED [ 31%] 1486s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes[neither] PASSED [ 31%] 1486s tests/test_xdub_calendar.py::TestXDUBCalendar::test_calendar_bounds_properties[neither] PASSED [ 31%] 1486s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minute_methods[neither] PASSED [ 31%] 1486s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minutes[neither] PASSED [ 31%] 1486s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_trading_minute[neither] PASSED [ 31%] 1486s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_break_minute[neither] PASSED [ 31%] 1486s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_on_minute[neither] PASSED [ 31%] 1486s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_at_time[neither] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_prev_next_minute[neither] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_past_session[neither] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_future_session[neither] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset[neither] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset_by_sessions[neither] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_in_range[neither] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_window[neither] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_distance[neither] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_to_sessions[neither] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes[neither] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes_count[neither] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_past_session[right] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_future_session[right] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset[right] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset_by_sessions[right] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_in_range[right] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_window[right] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_distance[right] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_to_sessions[right] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes[right] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes_count[right] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_past_session[left] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_future_session[left] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset[left] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset_by_sessions[left] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_in_range[left] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_window[left] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_distance[left] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_to_sessions[left] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes[left] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes_count[left] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_past_session[both] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_future_session[both] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset[both] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset_by_sessions[both] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_in_range[both] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_window[both] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_distance[both] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_to_sessions[both] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes[both] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes_count[both] PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_has_break PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_regular_holidays_sample PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_adhoc_holidays_sample PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_non_holidays_sample PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_late_opens_sample PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_early_closes_sample PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_early_closes_sample_time PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_early_closes_weekdays PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_early_closes_weekdays_time PASSED [ 31%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_non_early_closes_sample PASSED [ 32%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_non_early_closes_sample_time PASSED [ 32%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_late_opens PASSED [ 32%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_early_closes PASSED [ 32%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_open_close_break_start_end PASSED [ 32%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_has_break PASSED [ 32%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_next_prev_session PASSED [ 32%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_offset PASSED [ 32%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_session PASSED [ 32%] 1487s tests/test_xdub_calendar.py::TestXDUBCalendar::test_date_to_session PASSED [ 32%] 1488s tests/test_xdub_calendar.py::TestXDUBCalendar::test_prev_next_open_close PASSED [ 32%] 1488s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_in_range PASSED [ 32%] 1488s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_has_break PASSED [ 32%] 1488s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_window PASSED [ 32%] 1488s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_distance PASSED [ 32%] 1488s tests/test_xdub_calendar.py::TestXDUBCalendar::test_trading_index PASSED [ 32%] 1488s tests/test_xdub_calendar.py::TestXDUBCalendar::test_deprecated PASSED [ 32%] 1488s tests/test_xdus_calendar.py::TestXDUSCalendar::test_testbase_integrity PASSED [ 32%] 1488s tests/test_xdus_calendar.py::TestXDUSCalendar::test_base_integrity PASSED [ 32%] 1490s tests/test_xdus_calendar.py::TestXDUSCalendar::test_calculated_against_csv PASSED [ 32%] 1490s tests/test_xdus_calendar.py::TestXDUSCalendar::test_start_end PASSED [ 32%] 1490s tests/test_xdus_calendar.py::TestXDUSCalendar::test_invalid_input PASSED [ 32%] 1491s tests/test_xdus_calendar.py::TestXDUSCalendar::test_bound_min PASSED [ 32%] 1491s tests/test_xdus_calendar.py::TestXDUSCalendar::test_bound_max PASSED [ 32%] 1491s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sanity_check_session_lengths PASSED [ 32%] 1491s tests/test_xdus_calendar.py::TestXDUSCalendar::test_adhoc_holidays_specification PASSED [ 32%] 1491s tests/test_xdus_calendar.py::TestXDUSCalendar::test_daylight_savings PASSED [ 32%] 1491s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions PASSED [ 32%] 1491s tests/test_xdus_calendar.py::TestXDUSCalendar::test_opens_closes_break_starts_ends PASSED [ 32%] 1491s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_properties[both] PASSED [ 32%] 1492s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes[both] PASSED [ 32%] 1492s tests/test_xdus_calendar.py::TestXDUSCalendar::test_calendar_bounds_properties[both] PASSED [ 32%] 1492s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minute_methods[both] PASSED [ 32%] 1492s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minutes[both] PASSED [ 32%] 1492s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_trading_minute[both] PASSED [ 32%] 1492s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_break_minute[both] PASSED [ 32%] 1492s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_on_minute[both] PASSED [ 32%] 1492s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_at_time[both] PASSED [ 32%] 1493s tests/test_xdus_calendar.py::TestXDUSCalendar::test_prev_next_minute[both] PASSED [ 32%] 1493s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[both-next] PASSED [ 32%] 1493s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[both-next] PASSED [ 32%] 1493s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[left-next] PASSED [ 32%] 1493s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[left-next] PASSED [ 32%] 1493s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_properties[left] PASSED [ 32%] 1493s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes[left] PASSED [ 32%] 1493s tests/test_xdus_calendar.py::TestXDUSCalendar::test_calendar_bounds_properties[left] PASSED [ 32%] 1493s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minute_methods[left] PASSED [ 32%] 1493s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minutes[left] PASSED [ 32%] 1493s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_trading_minute[left] PASSED [ 32%] 1493s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_break_minute[left] PASSED [ 32%] 1493s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_on_minute[left] PASSED [ 32%] 1493s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_at_time[left] PASSED [ 32%] 1494s tests/test_xdus_calendar.py::TestXDUSCalendar::test_prev_next_minute[left] PASSED [ 32%] 1494s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[left-previous] PASSED [ 32%] 1494s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 32%] 1494s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[both-previous] PASSED [ 32%] 1494s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 32%] 1494s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[right-previous] PASSED [ 32%] 1494s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 32%] 1494s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[right-next] PASSED [ 32%] 1494s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[right-next] PASSED [ 32%] 1494s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_properties[right] PASSED [ 32%] 1495s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes[right] PASSED [ 32%] 1495s tests/test_xdus_calendar.py::TestXDUSCalendar::test_calendar_bounds_properties[right] PASSED [ 32%] 1495s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minute_methods[right] PASSED [ 32%] 1495s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minutes[right] PASSED [ 32%] 1495s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_trading_minute[right] PASSED [ 32%] 1495s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_break_minute[right] PASSED [ 32%] 1495s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_on_minute[right] PASSED [ 32%] 1495s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_at_time[right] PASSED [ 32%] 1495s tests/test_xdus_calendar.py::TestXDUSCalendar::test_prev_next_minute[right] PASSED [ 32%] 1495s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[right-none] PASSED [ 32%] 1495s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[right-none] PASSED [ 32%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[left-none] PASSED [ 32%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[left-none] PASSED [ 32%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[both-none] PASSED [ 32%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[both-none] PASSED [ 32%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[neither-none] PASSED [ 32%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 32%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[neither-previous] PASSED [ 32%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 32%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[neither-next] PASSED [ 32%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 33%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_properties[neither] PASSED [ 33%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes[neither] PASSED [ 33%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_calendar_bounds_properties[neither] PASSED [ 33%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minute_methods[neither] PASSED [ 33%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minutes[neither] PASSED [ 33%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_trading_minute[neither] PASSED [ 33%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_break_minute[neither] PASSED [ 33%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_on_minute[neither] PASSED [ 33%] 1496s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_at_time[neither] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_prev_next_minute[neither] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_past_session[neither] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_future_session[neither] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset[neither] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset_by_sessions[neither] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_in_range[neither] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_window[neither] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_distance[neither] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_to_sessions[neither] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes[neither] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes_count[neither] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_past_session[right] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_future_session[right] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset[right] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset_by_sessions[right] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_in_range[right] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_window[right] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_distance[right] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_to_sessions[right] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes[right] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes_count[right] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_past_session[left] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_future_session[left] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset[left] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset_by_sessions[left] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_in_range[left] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_window[left] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_distance[left] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_to_sessions[left] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes[left] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes_count[left] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_past_session[both] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_future_session[both] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset[both] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset_by_sessions[both] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_in_range[both] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_window[both] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_distance[both] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_to_sessions[both] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes[both] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes_count[both] PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_has_break PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_regular_holidays_sample PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_adhoc_holidays_sample PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_non_holidays_sample PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_late_opens_sample PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_early_closes_sample PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_early_closes_sample_time PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_early_closes_weekdays PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_early_closes_weekdays_time PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_non_early_closes_sample PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_non_early_closes_sample_time PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_late_opens PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_early_closes PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_open_close_break_start_end PASSED [ 33%] 1497s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_has_break PASSED [ 33%] 1498s tests/test_xdus_calendar.py::TestXDUSCalendar::test_next_prev_session PASSED [ 33%] 1498s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_offset PASSED [ 33%] 1498s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_session PASSED [ 33%] 1498s tests/test_xdus_calendar.py::TestXDUSCalendar::test_date_to_session PASSED [ 33%] 1499s tests/test_xdus_calendar.py::TestXDUSCalendar::test_prev_next_open_close PASSED [ 33%] 1499s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_in_range PASSED [ 33%] 1499s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_has_break PASSED [ 33%] 1499s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_window PASSED [ 33%] 1499s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_distance PASSED [ 33%] 1499s tests/test_xdus_calendar.py::TestXDUSCalendar::test_trading_index PASSED [ 33%] 1499s tests/test_xdus_calendar.py::TestXDUSCalendar::test_deprecated PASSED [ 33%] 1499s tests/test_xeee_calendar.py::TestXEEECalendar::test_testbase_integrity PASSED [ 33%] 1499s tests/test_xeee_calendar.py::TestXEEECalendar::test_base_integrity PASSED [ 33%] 1500s tests/test_xeee_calendar.py::TestXEEECalendar::test_calculated_against_csv PASSED [ 33%] 1500s tests/test_xeee_calendar.py::TestXEEECalendar::test_start_end PASSED [ 33%] 1500s tests/test_xeee_calendar.py::TestXEEECalendar::test_invalid_input PASSED [ 33%] 1501s tests/test_xeee_calendar.py::TestXEEECalendar::test_bound_min PASSED [ 34%] 1501s tests/test_xeee_calendar.py::TestXEEECalendar::test_bound_max PASSED [ 34%] 1501s tests/test_xeee_calendar.py::TestXEEECalendar::test_sanity_check_session_lengths PASSED [ 34%] 1501s tests/test_xeee_calendar.py::TestXEEECalendar::test_adhoc_holidays_specification PASSED [ 34%] 1501s tests/test_xeee_calendar.py::TestXEEECalendar::test_daylight_savings PASSED [ 34%] 1501s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions PASSED [ 34%] 1501s tests/test_xeee_calendar.py::TestXEEECalendar::test_opens_closes_break_starts_ends PASSED [ 34%] 1501s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_properties[both] PASSED [ 34%] 1502s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes[both] PASSED [ 34%] 1502s tests/test_xeee_calendar.py::TestXEEECalendar::test_calendar_bounds_properties[both] PASSED [ 34%] 1502s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minute_methods[both] PASSED [ 34%] 1502s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minutes[both] PASSED [ 34%] 1502s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_trading_minute[both] PASSED [ 34%] 1502s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_break_minute[both] PASSED [ 34%] 1502s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_on_minute[both] PASSED [ 34%] 1502s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_at_time[both] PASSED [ 34%] 1503s tests/test_xeee_calendar.py::TestXEEECalendar::test_prev_next_minute[both] PASSED [ 34%] 1503s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[both-next] PASSED [ 34%] 1503s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[both-next] PASSED [ 34%] 1503s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[left-next] PASSED [ 34%] 1503s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[left-next] PASSED [ 34%] 1503s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_properties[left] PASSED [ 34%] 1503s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes[left] PASSED [ 34%] 1503s tests/test_xeee_calendar.py::TestXEEECalendar::test_calendar_bounds_properties[left] PASSED [ 34%] 1503s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minute_methods[left] PASSED [ 34%] 1503s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minutes[left] PASSED [ 34%] 1503s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_trading_minute[left] PASSED [ 34%] 1503s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_break_minute[left] PASSED [ 34%] 1503s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_on_minute[left] PASSED [ 34%] 1503s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_at_time[left] PASSED [ 34%] 1504s tests/test_xeee_calendar.py::TestXEEECalendar::test_prev_next_minute[left] PASSED [ 34%] 1504s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[left-previous] PASSED [ 34%] 1504s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 34%] 1504s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[both-previous] PASSED [ 34%] 1504s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 34%] 1504s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[right-previous] PASSED [ 34%] 1504s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 34%] 1504s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[right-next] PASSED [ 34%] 1504s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[right-next] PASSED [ 34%] 1504s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_properties[right] PASSED [ 34%] 1504s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes[right] PASSED [ 34%] 1504s tests/test_xeee_calendar.py::TestXEEECalendar::test_calendar_bounds_properties[right] PASSED [ 34%] 1504s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minute_methods[right] PASSED [ 34%] 1505s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minutes[right] PASSED [ 34%] 1505s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_trading_minute[right] PASSED [ 34%] 1505s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_break_minute[right] PASSED [ 34%] 1505s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_on_minute[right] PASSED [ 34%] 1505s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_at_time[right] PASSED [ 34%] 1505s tests/test_xeee_calendar.py::TestXEEECalendar::test_prev_next_minute[right] PASSED [ 34%] 1505s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[right-none] PASSED [ 34%] 1505s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[right-none] PASSED [ 34%] 1505s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[left-none] PASSED [ 34%] 1505s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[left-none] PASSED [ 34%] 1505s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[both-none] PASSED [ 34%] 1505s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[both-none] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[neither-none] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[neither-previous] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[neither-next] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_properties[neither] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes[neither] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_calendar_bounds_properties[neither] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minute_methods[neither] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minutes[neither] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_trading_minute[neither] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_break_minute[neither] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_on_minute[neither] PASSED [ 34%] 1506s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_at_time[neither] PASSED [ 34%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_prev_next_minute[neither] PASSED [ 34%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_past_session[neither] PASSED [ 34%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_future_session[neither] PASSED [ 34%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset[neither] PASSED [ 34%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset_by_sessions[neither] PASSED [ 34%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_in_range[neither] PASSED [ 34%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_window[neither] PASSED [ 34%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_distance[neither] PASSED [ 34%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_to_sessions[neither] PASSED [ 34%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes[neither] PASSED [ 34%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes_count[neither] PASSED [ 34%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_past_session[right] PASSED [ 34%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_future_session[right] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset[right] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset_by_sessions[right] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_in_range[right] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_window[right] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_distance[right] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_to_sessions[right] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes[right] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes_count[right] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_past_session[left] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_future_session[left] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset[left] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset_by_sessions[left] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_in_range[left] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_window[left] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_distance[left] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_to_sessions[left] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes[left] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes_count[left] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_past_session[both] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_future_session[both] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset[both] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset_by_sessions[both] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_in_range[both] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_window[both] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_distance[both] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_to_sessions[both] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes[both] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes_count[both] PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_has_break PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_regular_holidays_sample PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_adhoc_holidays_sample PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_non_holidays_sample PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_late_opens_sample PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_early_closes_sample PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_early_closes_sample_time PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_early_closes_weekdays PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_early_closes_weekdays_time PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_non_early_closes_sample PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_non_early_closes_sample_time PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_late_opens PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_early_closes PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_open_close_break_start_end PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_has_break PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_next_prev_session PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_offset PASSED [ 35%] 1507s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_session PASSED [ 35%] 1508s tests/test_xeee_calendar.py::TestXEEECalendar::test_date_to_session PASSED [ 35%] 1509s tests/test_xeee_calendar.py::TestXEEECalendar::test_prev_next_open_close PASSED [ 35%] 1509s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_in_range PASSED [ 35%] 1509s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_has_break PASSED [ 35%] 1509s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_window PASSED [ 35%] 1509s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_distance PASSED [ 35%] 1509s tests/test_xeee_calendar.py::TestXEEECalendar::test_trading_index PASSED [ 35%] 1509s tests/test_xeee_calendar.py::TestXEEECalendar::test_deprecated PASSED [ 35%] 1509s tests/test_xetr_calendar.py::TestXETRCalendar::test_testbase_integrity PASSED [ 35%] 1509s tests/test_xetr_calendar.py::TestXETRCalendar::test_base_integrity PASSED [ 35%] 1510s tests/test_xetr_calendar.py::TestXETRCalendar::test_calculated_against_csv PASSED [ 35%] 1511s tests/test_xetr_calendar.py::TestXETRCalendar::test_start_end PASSED [ 35%] 1511s tests/test_xetr_calendar.py::TestXETRCalendar::test_invalid_input PASSED [ 35%] 1511s tests/test_xetr_calendar.py::TestXETRCalendar::test_bound_min PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_bound_max PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_sanity_check_session_lengths PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_adhoc_holidays_specification PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_daylight_savings PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_opens_closes_break_starts_ends PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_properties[both] PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes[both] PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_calendar_bounds_properties[both] PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minute_methods[both] PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minutes[both] PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_trading_minute[both] PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_break_minute[both] PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_on_minute[both] PASSED [ 35%] 1512s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_at_time[both] PASSED [ 35%] 1513s tests/test_xetr_calendar.py::TestXETRCalendar::test_prev_next_minute[both] PASSED [ 35%] 1513s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[both-next] PASSED [ 35%] 1513s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[both-next] PASSED [ 35%] 1513s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[left-next] PASSED [ 35%] 1513s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[left-next] PASSED [ 35%] 1513s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_properties[left] PASSED [ 35%] 1513s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes[left] PASSED [ 36%] 1513s tests/test_xetr_calendar.py::TestXETRCalendar::test_calendar_bounds_properties[left] PASSED [ 36%] 1513s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minute_methods[left] PASSED [ 36%] 1513s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minutes[left] PASSED [ 36%] 1513s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_trading_minute[left] PASSED [ 36%] 1513s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_break_minute[left] PASSED [ 36%] 1513s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_on_minute[left] PASSED [ 36%] 1514s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_at_time[left] PASSED [ 36%] 1514s tests/test_xetr_calendar.py::TestXETRCalendar::test_prev_next_minute[left] PASSED [ 36%] 1514s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[left-previous] PASSED [ 36%] 1514s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 36%] 1514s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[both-previous] PASSED [ 36%] 1514s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 36%] 1514s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[right-previous] PASSED [ 36%] 1514s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 36%] 1514s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[right-next] PASSED [ 36%] 1514s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[right-next] PASSED [ 36%] 1514s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_properties[right] PASSED [ 36%] 1515s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes[right] PASSED [ 36%] 1515s tests/test_xetr_calendar.py::TestXETRCalendar::test_calendar_bounds_properties[right] PASSED [ 36%] 1515s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minute_methods[right] PASSED [ 36%] 1515s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minutes[right] PASSED [ 36%] 1515s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_trading_minute[right] PASSED [ 36%] 1515s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_break_minute[right] PASSED [ 36%] 1515s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_on_minute[right] PASSED [ 36%] 1515s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_at_time[right] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_prev_next_minute[right] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[right-none] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[right-none] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[left-none] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[left-none] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[both-none] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[both-none] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[neither-none] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[neither-previous] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[neither-next] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_properties[neither] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes[neither] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_calendar_bounds_properties[neither] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minute_methods[neither] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minutes[neither] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_trading_minute[neither] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_break_minute[neither] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_on_minute[neither] PASSED [ 36%] 1516s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_at_time[neither] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_prev_next_minute[neither] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_past_session[neither] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_future_session[neither] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset[neither] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset_by_sessions[neither] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_in_range[neither] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_window[neither] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_distance[neither] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_to_sessions[neither] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes[neither] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes_count[neither] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_past_session[right] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_future_session[right] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset[right] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset_by_sessions[right] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_in_range[right] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_window[right] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_distance[right] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_to_sessions[right] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes[right] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes_count[right] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_past_session[left] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_future_session[left] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset[left] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset_by_sessions[left] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_in_range[left] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_window[left] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_distance[left] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_to_sessions[left] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes[left] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes_count[left] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_past_session[both] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_future_session[both] PASSED [ 36%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset[both] PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset_by_sessions[both] PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_in_range[both] PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_window[both] PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_distance[both] PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_to_sessions[both] PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes[both] PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes_count[both] PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_has_break PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_regular_holidays_sample PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_adhoc_holidays_sample PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_non_holidays_sample PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_late_opens_sample PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_early_closes_sample PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_early_closes_sample_time PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_early_closes_weekdays PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_early_closes_weekdays_time PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_non_early_closes_sample PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_non_early_closes_sample_time PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_late_opens PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_early_closes PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_open_close_break_start_end PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_has_break PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_next_prev_session PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_offset PASSED [ 37%] 1517s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_session PASSED [ 37%] 1518s tests/test_xetr_calendar.py::TestXETRCalendar::test_date_to_session PASSED [ 37%] 1519s tests/test_xetr_calendar.py::TestXETRCalendar::test_prev_next_open_close PASSED [ 37%] 1519s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_in_range PASSED [ 37%] 1519s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_has_break PASSED [ 37%] 1519s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_window PASSED [ 37%] 1519s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_distance PASSED [ 37%] 1519s tests/test_xetr_calendar.py::TestXETRCalendar::test_trading_index PASSED [ 37%] 1519s tests/test_xetr_calendar.py::TestXETRCalendar::test_deprecated PASSED [ 37%] 1519s tests/test_xfra_calendar.py::TestXFRACalendar::test_testbase_integrity PASSED [ 37%] 1519s tests/test_xfra_calendar.py::TestXFRACalendar::test_base_integrity PASSED [ 37%] 1520s tests/test_xfra_calendar.py::TestXFRACalendar::test_calculated_against_csv PASSED [ 37%] 1520s tests/test_xfra_calendar.py::TestXFRACalendar::test_start_end PASSED [ 37%] 1520s tests/test_xfra_calendar.py::TestXFRACalendar::test_invalid_input PASSED [ 37%] 1521s tests/test_xfra_calendar.py::TestXFRACalendar::test_bound_min PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_bound_max PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_sanity_check_session_lengths PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_adhoc_holidays_specification PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_daylight_savings PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_opens_closes_break_starts_ends PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_properties[both] PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes[both] PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_calendar_bounds_properties[both] PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minute_methods[both] PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minutes[both] PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_trading_minute[both] PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_break_minute[both] PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_on_minute[both] PASSED [ 37%] 1522s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_at_time[both] PASSED [ 37%] 1523s tests/test_xfra_calendar.py::TestXFRACalendar::test_prev_next_minute[both] PASSED [ 37%] 1523s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[both-next] PASSED [ 37%] 1523s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[both-next] PASSED [ 37%] 1523s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[left-next] PASSED [ 37%] 1523s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[left-next] PASSED [ 37%] 1523s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_properties[left] PASSED [ 37%] 1523s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes[left] PASSED [ 37%] 1523s tests/test_xfra_calendar.py::TestXFRACalendar::test_calendar_bounds_properties[left] PASSED [ 37%] 1523s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minute_methods[left] PASSED [ 37%] 1523s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minutes[left] PASSED [ 37%] 1523s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_trading_minute[left] PASSED [ 37%] 1523s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_break_minute[left] PASSED [ 37%] 1523s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_on_minute[left] PASSED [ 37%] 1523s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_at_time[left] PASSED [ 37%] 1524s tests/test_xfra_calendar.py::TestXFRACalendar::test_prev_next_minute[left] PASSED [ 37%] 1524s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[left-previous] PASSED [ 37%] 1524s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[left-previous] PASSED [ 37%] 1524s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[both-previous] PASSED [ 37%] 1524s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[both-previous] PASSED [ 37%] 1524s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[right-previous] PASSED [ 37%] 1524s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[right-previous] PASSED [ 37%] 1524s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[right-next] PASSED [ 37%] 1524s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[right-next] PASSED [ 37%] 1524s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_properties[right] PASSED [ 37%] 1525s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes[right] PASSED [ 37%] 1525s tests/test_xfra_calendar.py::TestXFRACalendar::test_calendar_bounds_properties[right] PASSED [ 37%] 1525s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minute_methods[right] PASSED [ 37%] 1525s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minutes[right] PASSED [ 38%] 1525s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_trading_minute[right] PASSED [ 38%] 1525s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_break_minute[right] PASSED [ 38%] 1525s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_on_minute[right] PASSED [ 38%] 1525s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_at_time[right] PASSED [ 38%] 1525s tests/test_xfra_calendar.py::TestXFRACalendar::test_prev_next_minute[right] PASSED [ 38%] 1525s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[right-none] PASSED [ 38%] 1525s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[right-none] PASSED [ 38%] 1525s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[left-none] PASSED [ 38%] 1525s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[left-none] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[both-none] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[both-none] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[neither-none] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[neither-none] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[neither-previous] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[neither-next] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[neither-next] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_properties[neither] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes[neither] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_calendar_bounds_properties[neither] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minute_methods[neither] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minutes[neither] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_trading_minute[neither] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_break_minute[neither] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_on_minute[neither] PASSED [ 38%] 1526s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_at_time[neither] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_prev_next_minute[neither] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_past_session[neither] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_future_session[neither] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset[neither] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset_by_sessions[neither] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_in_range[neither] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_window[neither] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_distance[neither] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_to_sessions[neither] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes[neither] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes_count[neither] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_past_session[right] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_future_session[right] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset[right] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset_by_sessions[right] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_in_range[right] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_window[right] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_distance[right] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_to_sessions[right] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes[right] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes_count[right] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_past_session[left] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_future_session[left] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset[left] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset_by_sessions[left] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_in_range[left] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_window[left] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_distance[left] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_to_sessions[left] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes[left] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes_count[left] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_past_session[both] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_future_session[both] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset[both] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset_by_sessions[both] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_in_range[both] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_window[both] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_distance[both] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_to_sessions[both] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes[both] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes_count[both] PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_has_break PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_regular_holidays_sample PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_adhoc_holidays_sample PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_non_holidays_sample PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_late_opens_sample PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_early_closes_sample PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_early_closes_sample_time PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_early_closes_weekdays PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_early_closes_weekdays_time PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_non_early_closes_sample PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_non_early_closes_sample_time PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_late_opens PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_early_closes PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_open_close_break_start_end PASSED [ 38%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_has_break PASSED [ 39%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_next_prev_session PASSED [ 39%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_offset PASSED [ 39%] 1527s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_session PASSED [ 39%] 1528s tests/test_xfra_calendar.py::TestXFRACalendar::test_date_to_session PASSED [ 39%] 1529s tests/test_xfra_calendar.py::TestXFRACalendar::test_prev_next_open_close PASSED [ 39%] 1529s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_in_range PASSED [ 39%] 1529s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_has_break PASSED [ 39%] 1529s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_window PASSED [ 39%] 1529s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_distance PASSED [ 39%] 1529s tests/test_xfra_calendar.py::TestXFRACalendar::test_trading_index PASSED [ 39%] 1529s tests/test_xfra_calendar.py::TestXFRACalendar::test_deprecated PASSED [ 39%] 1529s tests/test_xham_calendar.py::TestXHAMCalendar::test_testbase_integrity PASSED [ 39%] 1529s tests/test_xham_calendar.py::TestXHAMCalendar::test_base_integrity PASSED [ 39%] 1530s tests/test_xham_calendar.py::TestXHAMCalendar::test_calculated_against_csv PASSED [ 39%] 1530s tests/test_xham_calendar.py::TestXHAMCalendar::test_start_end PASSED [ 39%] 1530s tests/test_xham_calendar.py::TestXHAMCalendar::test_invalid_input PASSED [ 39%] 1531s tests/test_xham_calendar.py::TestXHAMCalendar::test_bound_min PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_bound_max PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_sanity_check_session_lengths PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_adhoc_holidays_specification PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_daylight_savings PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_opens_closes_break_starts_ends PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_properties[both] PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes[both] PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_calendar_bounds_properties[both] PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minute_methods[both] PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minutes[both] PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_trading_minute[both] PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_break_minute[both] PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_on_minute[both] PASSED [ 39%] 1532s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_at_time[both] PASSED [ 39%] 1533s tests/test_xham_calendar.py::TestXHAMCalendar::test_prev_next_minute[both] PASSED [ 39%] 1533s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[both-next] PASSED [ 39%] 1533s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[both-next] PASSED [ 39%] 1533s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[left-next] PASSED [ 39%] 1533s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[left-next] PASSED [ 39%] 1533s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_properties[left] PASSED [ 39%] 1534s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes[left] PASSED [ 39%] 1534s tests/test_xham_calendar.py::TestXHAMCalendar::test_calendar_bounds_properties[left] PASSED [ 39%] 1534s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minute_methods[left] PASSED [ 39%] 1534s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minutes[left] PASSED [ 39%] 1534s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_trading_minute[left] PASSED [ 39%] 1534s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_break_minute[left] PASSED [ 39%] 1534s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_on_minute[left] PASSED [ 39%] 1534s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_at_time[left] PASSED [ 39%] 1534s tests/test_xham_calendar.py::TestXHAMCalendar::test_prev_next_minute[left] PASSED [ 39%] 1534s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[left-previous] PASSED [ 39%] 1534s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 39%] 1534s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[both-previous] PASSED [ 39%] 1534s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 39%] 1534s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[right-previous] PASSED [ 39%] 1535s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 39%] 1535s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[right-next] PASSED [ 39%] 1535s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[right-next] PASSED [ 39%] 1535s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_properties[right] PASSED [ 39%] 1535s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes[right] PASSED [ 39%] 1535s tests/test_xham_calendar.py::TestXHAMCalendar::test_calendar_bounds_properties[right] PASSED [ 39%] 1535s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minute_methods[right] PASSED [ 39%] 1535s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minutes[right] PASSED [ 39%] 1535s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_trading_minute[right] PASSED [ 39%] 1535s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_break_minute[right] PASSED [ 39%] 1535s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_on_minute[right] PASSED [ 39%] 1535s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_at_time[right] PASSED [ 39%] 1536s tests/test_xham_calendar.py::TestXHAMCalendar::test_prev_next_minute[right] PASSED [ 39%] 1536s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[right-none] PASSED [ 39%] 1536s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[right-none] PASSED [ 39%] 1536s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[left-none] PASSED [ 39%] 1536s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[left-none] PASSED [ 39%] 1536s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[both-none] PASSED [ 39%] 1536s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[both-none] PASSED [ 39%] 1536s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[neither-none] PASSED [ 39%] 1536s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 39%] 1536s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[neither-previous] PASSED [ 39%] 1536s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 39%] 1536s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[neither-next] PASSED [ 39%] 1536s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 39%] 1536s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_properties[neither] PASSED [ 39%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes[neither] PASSED [ 39%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_calendar_bounds_properties[neither] PASSED [ 39%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minute_methods[neither] PASSED [ 39%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minutes[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_trading_minute[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_break_minute[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_on_minute[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_at_time[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_prev_next_minute[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_past_session[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_future_session[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset_by_sessions[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_in_range[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_window[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_distance[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_to_sessions[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes_count[neither] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_past_session[right] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_future_session[right] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset[right] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset_by_sessions[right] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_in_range[right] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_window[right] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_distance[right] PASSED [ 40%] 1537s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_to_sessions[right] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes[right] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes_count[right] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_past_session[left] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_future_session[left] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset[left] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset_by_sessions[left] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_in_range[left] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_window[left] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_distance[left] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_to_sessions[left] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes[left] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes_count[left] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_past_session[both] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_future_session[both] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset[both] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset_by_sessions[both] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_in_range[both] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_window[both] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_distance[both] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_to_sessions[both] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes[both] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes_count[both] PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_has_break PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_regular_holidays_sample PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_adhoc_holidays_sample PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_non_holidays_sample PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_late_opens_sample PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_early_closes_sample PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_early_closes_sample_time PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_early_closes_weekdays PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_early_closes_weekdays_time PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_non_early_closes_sample PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_non_early_closes_sample_time PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_late_opens PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_early_closes PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_open_close_break_start_end PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_has_break PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_next_prev_session PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_offset PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_session PASSED [ 40%] 1538s tests/test_xham_calendar.py::TestXHAMCalendar::test_date_to_session PASSED [ 40%] 1539s tests/test_xham_calendar.py::TestXHAMCalendar::test_prev_next_open_close PASSED [ 40%] 1539s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_in_range PASSED [ 40%] 1539s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_has_break PASSED [ 40%] 1539s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_window PASSED [ 40%] 1539s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_distance PASSED [ 40%] 1539s tests/test_xham_calendar.py::TestXHAMCalendar::test_trading_index PASSED [ 40%] 1539s tests/test_xham_calendar.py::TestXHAMCalendar::test_deprecated PASSED [ 40%] 1539s tests/test_xhel_calendar.py::TestXHELCalendar::test_testbase_integrity PASSED [ 40%] 1539s tests/test_xhel_calendar.py::TestXHELCalendar::test_base_integrity PASSED [ 40%] 1541s tests/test_xhel_calendar.py::TestXHELCalendar::test_calculated_against_csv PASSED [ 40%] 1541s tests/test_xhel_calendar.py::TestXHELCalendar::test_start_end PASSED [ 40%] 1541s tests/test_xhel_calendar.py::TestXHELCalendar::test_invalid_input PASSED [ 40%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_bound_min PASSED [ 40%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_bound_max PASSED [ 40%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_sanity_check_session_lengths PASSED [ 40%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_adhoc_holidays_specification PASSED [ 40%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_daylight_savings PASSED [ 40%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions PASSED [ 41%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_opens_closes_break_starts_ends PASSED [ 41%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_properties[both] PASSED [ 41%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes[both] PASSED [ 41%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_calendar_bounds_properties[both] PASSED [ 41%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minute_methods[both] PASSED [ 41%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minutes[both] PASSED [ 41%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_trading_minute[both] PASSED [ 41%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_break_minute[both] PASSED [ 41%] 1542s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_on_minute[both] PASSED [ 41%] 1543s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_at_time[both] PASSED [ 41%] 1543s tests/test_xhel_calendar.py::TestXHELCalendar::test_prev_next_minute[both] PASSED [ 41%] 1543s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[both-next] PASSED [ 41%] 1543s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[both-next] PASSED [ 41%] 1543s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[left-next] PASSED [ 41%] 1543s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[left-next] PASSED [ 41%] 1543s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_properties[left] PASSED [ 41%] 1543s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes[left] PASSED [ 41%] 1543s tests/test_xhel_calendar.py::TestXHELCalendar::test_calendar_bounds_properties[left] PASSED [ 41%] 1543s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minute_methods[left] PASSED [ 41%] 1543s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minutes[left] PASSED [ 41%] 1543s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_trading_minute[left] PASSED [ 41%] 1543s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_break_minute[left] PASSED [ 41%] 1543s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_on_minute[left] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_at_time[left] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_prev_next_minute[left] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[left-previous] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[both-previous] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[right-previous] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[right-next] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[right-next] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_properties[right] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes[right] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_calendar_bounds_properties[right] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minute_methods[right] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minutes[right] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_trading_minute[right] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_break_minute[right] PASSED [ 41%] 1544s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_on_minute[right] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_at_time[right] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_prev_next_minute[right] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[right-none] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[right-none] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[left-none] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[left-none] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[both-none] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[both-none] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[neither-none] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[neither-previous] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[neither-next] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 41%] 1545s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_properties[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_calendar_bounds_properties[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minute_methods[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minutes[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_trading_minute[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_break_minute[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_on_minute[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_at_time[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_prev_next_minute[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_past_session[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_future_session[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset_by_sessions[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_in_range[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_window[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_distance[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_to_sessions[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes_count[neither] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_past_session[right] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_future_session[right] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset[right] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset_by_sessions[right] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_in_range[right] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_window[right] PASSED [ 41%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_distance[right] PASSED [ 42%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_to_sessions[right] PASSED [ 42%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes[right] PASSED [ 42%] 1546s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes_count[right] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_past_session[left] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_future_session[left] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset[left] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset_by_sessions[left] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_in_range[left] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_window[left] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_distance[left] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_to_sessions[left] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes[left] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes_count[left] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_past_session[both] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_future_session[both] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset[both] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset_by_sessions[both] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_in_range[both] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_window[both] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_distance[both] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_to_sessions[both] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes[both] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes_count[both] PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_has_break PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_regular_holidays_sample PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_adhoc_holidays_sample PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_non_holidays_sample PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_late_opens_sample PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_early_closes_sample PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_early_closes_sample_time PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_early_closes_weekdays PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_early_closes_weekdays_time PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_non_early_closes_sample PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_non_early_closes_sample_time PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_late_opens PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_early_closes PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_open_close_break_start_end PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_has_break PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_next_prev_session PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_offset PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_session PASSED [ 42%] 1547s tests/test_xhel_calendar.py::TestXHELCalendar::test_date_to_session PASSED [ 42%] 1548s tests/test_xhel_calendar.py::TestXHELCalendar::test_prev_next_open_close PASSED [ 42%] 1548s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_in_range PASSED [ 42%] 1548s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_has_break PASSED [ 42%] 1548s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_window PASSED [ 42%] 1548s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_distance PASSED [ 42%] 1548s tests/test_xhel_calendar.py::TestXHELCalendar::test_trading_index PASSED [ 42%] 1548s tests/test_xhel_calendar.py::TestXHELCalendar::test_deprecated PASSED [ 42%] 1548s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_testbase_integrity PASSED [ 42%] 1548s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_base_integrity PASSED [ 42%] 1550s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_calculated_against_csv PASSED [ 42%] 1550s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_start_end PASSED [ 42%] 1550s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_invalid_input PASSED [ 42%] 1551s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_bound_min PASSED [ 42%] 1551s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_bound_max PASSED [ 42%] 1551s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sanity_check_session_lengths PASSED [ 42%] 1551s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_adhoc_holidays_specification PASSED [ 42%] 1551s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_daylight_savings PASSED [ 42%] 1551s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions PASSED [ 42%] 1551s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_opens_closes_break_starts_ends PASSED [ 42%] 1551s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_properties[both] PASSED [ 42%] 1552s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes[both] PASSED [ 42%] 1552s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_calendar_bounds_properties[both] PASSED [ 42%] 1552s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minute_methods[both] PASSED [ 42%] 1552s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minutes[both] PASSED [ 42%] 1552s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_trading_minute[both] PASSED [ 42%] 1552s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_break_minute[both] PASSED [ 42%] 1552s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_on_minute[both] PASSED [ 42%] 1553s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_at_time[both] PASSED [ 42%] 1554s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_prev_next_minute[both] PASSED [ 42%] 1554s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[both-next] PASSED [ 42%] 1554s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[both-next] PASSED [ 42%] 1554s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[left-next] PASSED [ 42%] 1554s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[left-next] PASSED [ 42%] 1554s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_properties[left] PASSED [ 42%] 1554s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes[left] PASSED [ 42%] 1554s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_calendar_bounds_properties[left] PASSED [ 42%] 1554s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minute_methods[left] PASSED [ 42%] 1554s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minutes[left] PASSED [ 42%] 1554s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_trading_minute[left] PASSED [ 42%] 1554s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_break_minute[left] PASSED [ 43%] 1554s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_on_minute[left] PASSED [ 43%] 1555s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_at_time[left] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_prev_next_minute[left] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[left-previous] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[both-previous] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[right-previous] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[right-next] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[right-next] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_properties[right] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes[right] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_calendar_bounds_properties[right] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minute_methods[right] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minutes[right] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_trading_minute[right] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_break_minute[right] PASSED [ 43%] 1556s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_on_minute[right] PASSED [ 43%] 1557s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_at_time[right] PASSED [ 43%] 1558s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_prev_next_minute[right] PASSED [ 43%] 1558s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[right-none] PASSED [ 43%] 1558s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[right-none] PASSED [ 43%] 1558s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[left-none] PASSED [ 43%] 1558s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[left-none] PASSED [ 43%] 1558s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[both-none] PASSED [ 43%] 1558s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[both-none] PASSED [ 43%] 1558s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[neither-none] PASSED [ 43%] 1558s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 43%] 1558s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[neither-previous] PASSED [ 43%] 1558s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 43%] 1558s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[neither-next] PASSED [ 43%] 1558s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 43%] 1558s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_properties[neither] PASSED [ 43%] 1559s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes[neither] PASSED [ 43%] 1559s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_calendar_bounds_properties[neither] PASSED [ 43%] 1559s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minute_methods[neither] PASSED [ 43%] 1559s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minutes[neither] PASSED [ 43%] 1559s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_trading_minute[neither] PASSED [ 43%] 1559s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_break_minute[neither] PASSED [ 43%] 1559s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_on_minute[neither] PASSED [ 43%] 1559s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_at_time[neither] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_prev_next_minute[neither] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_past_session[neither] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_future_session[neither] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset[neither] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset_by_sessions[neither] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_in_range[neither] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_window[neither] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_distance[neither] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_to_sessions[neither] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes[neither] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes_count[neither] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_past_session[right] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_future_session[right] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset[right] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset_by_sessions[right] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_in_range[right] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_window[right] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_distance[right] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_to_sessions[right] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes[right] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes_count[right] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_past_session[left] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_future_session[left] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset[left] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset_by_sessions[left] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_in_range[left] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_window[left] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_distance[left] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_to_sessions[left] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes[left] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes_count[left] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_past_session[both] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_future_session[both] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset[both] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset_by_sessions[both] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_in_range[both] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_window[both] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_distance[both] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_to_sessions[both] PASSED [ 43%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes[both] PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes_count[both] PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_has_break PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_regular_holidays_sample PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_adhoc_holidays_sample PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_non_holidays_sample PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_late_opens_sample PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_early_closes_sample PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_early_closes_sample_time PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_early_closes_weekdays PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_early_closes_weekdays_time PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_non_early_closes_sample PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_non_early_closes_sample_time PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_late_opens PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_early_closes PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_open_close_break_start_end PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_has_break PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_next_prev_session PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_offset PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_session PASSED [ 44%] 1561s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_date_to_session PASSED [ 44%] 1563s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_prev_next_open_close PASSED [ 44%] 1563s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_in_range PASSED [ 44%] 1563s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_has_break PASSED [ 44%] 1563s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_window PASSED [ 44%] 1563s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_distance PASSED [ 44%] 1563s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_trading_index PASSED [ 44%] 1563s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_deprecated PASSED [ 44%] 1563s tests/test_xice_calendar.py::TestXICECalendar::test_testbase_integrity PASSED [ 44%] 1563s tests/test_xice_calendar.py::TestXICECalendar::test_base_integrity PASSED [ 44%] 1564s tests/test_xice_calendar.py::TestXICECalendar::test_calculated_against_csv PASSED [ 44%] 1564s tests/test_xice_calendar.py::TestXICECalendar::test_start_end PASSED [ 44%] 1564s tests/test_xice_calendar.py::TestXICECalendar::test_invalid_input PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_bound_min PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_bound_max PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_sanity_check_session_lengths PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_adhoc_holidays_specification PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_daylight_savings PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_sessions PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_opens_closes_break_starts_ends PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_properties[both] PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_minutes[both] PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_calendar_bounds_properties[both] PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_session_minute_methods[both] PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_session_minutes[both] PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_is_trading_minute[both] PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_is_break_minute[both] PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_on_minute[both] PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_at_time[both] PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_prev_next_minute[both] PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[both-next] PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[both-next] PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[left-next] PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[left-next] PASSED [ 44%] 1565s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_properties[left] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minutes[left] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_calendar_bounds_properties[left] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_session_minute_methods[left] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_session_minutes[left] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_is_trading_minute[left] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_is_break_minute[left] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_on_minute[left] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_at_time[left] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_prev_next_minute[left] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[left-previous] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[both-previous] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[right-previous] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[right-next] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[right-next] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_properties[right] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minutes[right] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_calendar_bounds_properties[right] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_session_minute_methods[right] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_session_minutes[right] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_is_trading_minute[right] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_is_break_minute[right] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_on_minute[right] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_at_time[right] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_prev_next_minute[right] PASSED [ 44%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[right-none] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[right-none] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[left-none] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[left-none] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[both-none] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[both-none] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[neither-none] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[neither-previous] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[neither-next] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_properties[neither] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_minutes[neither] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_calendar_bounds_properties[neither] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_session_minute_methods[neither] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_session_minutes[neither] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_is_trading_minute[neither] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_is_break_minute[neither] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_on_minute[neither] PASSED [ 45%] 1566s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_at_time[neither] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_prev_next_minute[neither] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_past_session[neither] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_future_session[neither] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset[neither] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset_by_sessions[neither] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_in_range[neither] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_window[neither] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_distance[neither] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_to_sessions[neither] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes[neither] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes_count[neither] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_past_session[right] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_future_session[right] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset[right] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset_by_sessions[right] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_in_range[right] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_window[right] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_distance[right] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_to_sessions[right] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes[right] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes_count[right] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_past_session[left] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_future_session[left] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset[left] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset_by_sessions[left] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_in_range[left] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_window[left] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_distance[left] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_to_sessions[left] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes[left] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes_count[left] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_past_session[both] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_future_session[both] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset[both] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset_by_sessions[both] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_in_range[both] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_window[both] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_distance[both] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_to_sessions[both] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes[both] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes_count[both] PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_has_break PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_regular_holidays_sample PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_adhoc_holidays_sample PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_non_holidays_sample PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_late_opens_sample PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_early_closes_sample PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_early_closes_sample_time PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_early_closes_weekdays PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_early_closes_weekdays_time PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_non_early_closes_sample PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_non_early_closes_sample_time PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_late_opens PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_early_closes PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_session_open_close_break_start_end PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_session_has_break PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_next_prev_session PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_session_offset PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_is_session PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_date_to_session PASSED [ 45%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_prev_next_open_close PASSED [ 46%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_in_range PASSED [ 46%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_has_break PASSED [ 46%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_window PASSED [ 46%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_distance PASSED [ 46%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_trading_index PASSED [ 46%] 1567s tests/test_xice_calendar.py::TestXICECalendar::test_deprecated PASSED [ 46%] 1567s tests/test_xidx_calendar.py::TestXIDXCalendar::test_testbase_integrity PASSED [ 46%] 1567s tests/test_xidx_calendar.py::TestXIDXCalendar::test_base_integrity PASSED [ 46%] 1569s tests/test_xidx_calendar.py::TestXIDXCalendar::test_calculated_against_csv PASSED [ 46%] 1569s tests/test_xidx_calendar.py::TestXIDXCalendar::test_start_end PASSED [ 46%] 1569s tests/test_xidx_calendar.py::TestXIDXCalendar::test_invalid_input PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_bound_min PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_bound_max PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sanity_check_session_lengths PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_adhoc_holidays_specification PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_daylight_savings PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_opens_closes_break_starts_ends PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_properties[both] PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes[both] PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_calendar_bounds_properties[both] PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minute_methods[both] PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minutes[both] PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_trading_minute[both] PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_break_minute[both] PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_on_minute[both] PASSED [ 46%] 1570s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_at_time[both] PASSED [ 46%] 1571s tests/test_xidx_calendar.py::TestXIDXCalendar::test_prev_next_minute[both] PASSED [ 46%] 1571s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[both-next] PASSED [ 46%] 1571s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[both-next] PASSED [ 46%] 1571s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[left-next] PASSED [ 46%] 1571s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[left-next] PASSED [ 46%] 1571s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_properties[left] PASSED [ 46%] 1571s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes[left] PASSED [ 46%] 1571s tests/test_xidx_calendar.py::TestXIDXCalendar::test_calendar_bounds_properties[left] PASSED [ 46%] 1571s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minute_methods[left] PASSED [ 46%] 1571s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minutes[left] PASSED [ 46%] 1571s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_trading_minute[left] PASSED [ 46%] 1571s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_break_minute[left] PASSED [ 46%] 1571s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_on_minute[left] PASSED [ 46%] 1571s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_at_time[left] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_prev_next_minute[left] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[left-previous] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[both-previous] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[right-previous] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[right-next] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[right-next] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_properties[right] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes[right] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_calendar_bounds_properties[right] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minute_methods[right] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minutes[right] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_trading_minute[right] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_break_minute[right] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_on_minute[right] PASSED [ 46%] 1572s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_at_time[right] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_prev_next_minute[right] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[right-none] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[right-none] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[left-none] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[left-none] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[both-none] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[both-none] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[neither-none] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[neither-previous] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[neither-next] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_properties[neither] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes[neither] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_calendar_bounds_properties[neither] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minute_methods[neither] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minutes[neither] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_trading_minute[neither] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_break_minute[neither] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_on_minute[neither] PASSED [ 46%] 1573s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_at_time[neither] PASSED [ 46%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_prev_next_minute[neither] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_past_session[neither] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_future_session[neither] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset[neither] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset_by_sessions[neither] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_in_range[neither] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_window[neither] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_distance[neither] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_to_sessions[neither] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes[neither] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes_count[neither] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_past_session[right] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_future_session[right] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset[right] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset_by_sessions[right] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_in_range[right] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_window[right] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_distance[right] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_to_sessions[right] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes[right] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes_count[right] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_past_session[left] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_future_session[left] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset[left] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset_by_sessions[left] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_in_range[left] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_window[left] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_distance[left] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_to_sessions[left] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes[left] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes_count[left] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_past_session[both] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_future_session[both] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset[both] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset_by_sessions[both] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_in_range[both] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_window[both] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_distance[both] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_to_sessions[both] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes[both] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes_count[both] PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_has_break PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_regular_holidays_sample PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_adhoc_holidays_sample PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_non_holidays_sample PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_late_opens_sample PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_early_closes_sample PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_early_closes_sample_time PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_early_closes_weekdays PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_early_closes_weekdays_time PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_non_early_closes_sample PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_non_early_closes_sample_time PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_late_opens PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_early_closes PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_open_close_break_start_end PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_has_break PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_next_prev_session PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_offset PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_session PASSED [ 47%] 1574s tests/test_xidx_calendar.py::TestXIDXCalendar::test_date_to_session PASSED [ 47%] 1575s tests/test_xidx_calendar.py::TestXIDXCalendar::test_prev_next_open_close PASSED [ 47%] 1575s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_in_range PASSED [ 47%] 1575s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_has_break PASSED [ 47%] 1575s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_window PASSED [ 47%] 1575s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_distance PASSED [ 47%] 1575s tests/test_xidx_calendar.py::TestXIDXCalendar::test_trading_index PASSED [ 47%] 1575s tests/test_xidx_calendar.py::TestXIDXCalendar::test_deprecated PASSED [ 47%] 1575s tests/test_xidx_calendar.py::TestXIDXCalendar::test_trading_days PASSED [ 47%] 1575s tests/test_xidx_calendar.py::TestXIDXCalendar::test_holidays_in_year[2019-holidays0] PASSED [ 47%] 1575s tests/test_xidx_calendar.py::TestXIDXCalendar::test_holidays_in_year[2018-holidays1] PASSED [ 47%] 1575s tests/test_xist_calendar.py::TestXISTCalendar::test_testbase_integrity PASSED [ 47%] 1575s tests/test_xist_calendar.py::TestXISTCalendar::test_base_integrity PASSED [ 47%] 1577s tests/test_xist_calendar.py::TestXISTCalendar::test_calculated_against_csv PASSED [ 47%] 1577s tests/test_xist_calendar.py::TestXISTCalendar::test_start_end PASSED [ 47%] 1577s tests/test_xist_calendar.py::TestXISTCalendar::test_invalid_input PASSED [ 47%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_bound_min PASSED [ 47%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_bound_max PASSED [ 47%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_sanity_check_session_lengths PASSED [ 47%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_adhoc_holidays_specification PASSED [ 47%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_daylight_savings PASSED [ 47%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions PASSED [ 47%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_opens_closes_break_starts_ends PASSED [ 47%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_properties[both] PASSED [ 48%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes[both] PASSED [ 48%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_calendar_bounds_properties[both] PASSED [ 48%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minute_methods[both] PASSED [ 48%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minutes[both] PASSED [ 48%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_is_trading_minute[both] PASSED [ 48%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_is_break_minute[both] PASSED [ 48%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_on_minute[both] PASSED [ 48%] 1578s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_at_time[both] PASSED [ 48%] 1579s tests/test_xist_calendar.py::TestXISTCalendar::test_prev_next_minute[both] PASSED [ 48%] 1579s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[both-next] PASSED [ 48%] 1579s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[both-next] PASSED [ 48%] 1579s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[left-next] PASSED [ 48%] 1579s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[left-next] PASSED [ 48%] 1579s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_properties[left] PASSED [ 48%] 1579s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes[left] PASSED [ 48%] 1579s tests/test_xist_calendar.py::TestXISTCalendar::test_calendar_bounds_properties[left] PASSED [ 48%] 1579s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minute_methods[left] PASSED [ 48%] 1579s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minutes[left] PASSED [ 48%] 1579s tests/test_xist_calendar.py::TestXISTCalendar::test_is_trading_minute[left] PASSED [ 48%] 1579s tests/test_xist_calendar.py::TestXISTCalendar::test_is_break_minute[left] PASSED [ 48%] 1579s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_on_minute[left] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_at_time[left] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_prev_next_minute[left] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[left-previous] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[both-previous] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[right-previous] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[right-next] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[right-next] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_properties[right] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes[right] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_calendar_bounds_properties[right] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minute_methods[right] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minutes[right] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_is_trading_minute[right] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_is_break_minute[right] PASSED [ 48%] 1580s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_on_minute[right] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_at_time[right] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_prev_next_minute[right] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[right-none] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[right-none] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[left-none] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[left-none] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[both-none] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[both-none] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[neither-none] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[neither-previous] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[neither-next] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 48%] 1581s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_properties[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_calendar_bounds_properties[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minute_methods[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minutes[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_is_trading_minute[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_is_break_minute[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_on_minute[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_at_time[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_prev_next_minute[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_past_session[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_future_session[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset_by_sessions[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_in_range[neither] PASSED [ 48%] 1582s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_window[neither] PASSED [ 48%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_distance[neither] PASSED [ 48%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_to_sessions[neither] PASSED [ 48%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes[neither] PASSED [ 48%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes_count[neither] PASSED [ 48%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_past_session[right] PASSED [ 48%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_future_session[right] PASSED [ 48%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset[right] PASSED [ 48%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset_by_sessions[right] PASSED [ 48%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_in_range[right] PASSED [ 48%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_window[right] PASSED [ 48%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_distance[right] PASSED [ 48%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_to_sessions[right] PASSED [ 48%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes[right] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes_count[right] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_past_session[left] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_future_session[left] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset[left] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset_by_sessions[left] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_in_range[left] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_window[left] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_distance[left] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_to_sessions[left] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes[left] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes_count[left] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_past_session[both] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_future_session[both] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset[both] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset_by_sessions[both] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_in_range[both] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_window[both] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_distance[both] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_to_sessions[both] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes[both] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes_count[both] PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_has_break PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_regular_holidays_sample PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_adhoc_holidays_sample PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_non_holidays_sample PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_late_opens_sample PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_early_closes_sample PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_early_closes_sample_time PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_early_closes_weekdays PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_early_closes_weekdays_time PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_non_early_closes_sample PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_non_early_closes_sample_time PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_late_opens PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_early_closes PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_session_open_close_break_start_end PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_session_has_break PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_next_prev_session PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_session_offset PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_is_session PASSED [ 49%] 1583s tests/test_xist_calendar.py::TestXISTCalendar::test_date_to_session PASSED [ 49%] 1584s tests/test_xist_calendar.py::TestXISTCalendar::test_prev_next_open_close PASSED [ 49%] 1584s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_in_range PASSED [ 49%] 1584s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_has_break PASSED [ 49%] 1584s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_window PASSED [ 49%] 1584s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_distance PASSED [ 49%] 1584s tests/test_xist_calendar.py::TestXISTCalendar::test_trading_index PASSED [ 49%] 1584s tests/test_xist_calendar.py::TestXISTCalendar::test_deprecated PASSED [ 49%] 1584s tests/test_xjse_calendar.py::TestXJSECalendar::test_testbase_integrity PASSED [ 49%] 1584s tests/test_xjse_calendar.py::TestXJSECalendar::test_base_integrity PASSED [ 49%] 1586s tests/test_xjse_calendar.py::TestXJSECalendar::test_calculated_against_csv PASSED [ 49%] 1586s tests/test_xjse_calendar.py::TestXJSECalendar::test_start_end PASSED [ 49%] 1586s tests/test_xjse_calendar.py::TestXJSECalendar::test_invalid_input PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_bound_min PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_bound_max PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_sanity_check_session_lengths PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_adhoc_holidays_specification PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_daylight_savings PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_opens_closes_break_starts_ends PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_properties[both] PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes[both] PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_calendar_bounds_properties[both] PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minute_methods[both] PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minutes[both] PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_trading_minute[both] PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_break_minute[both] PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_on_minute[both] PASSED [ 49%] 1587s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_at_time[both] PASSED [ 49%] 1588s tests/test_xjse_calendar.py::TestXJSECalendar::test_prev_next_minute[both] PASSED [ 49%] 1588s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[both-next] PASSED [ 49%] 1588s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[both-next] PASSED [ 49%] 1588s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[left-next] PASSED [ 49%] 1588s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[left-next] PASSED [ 49%] 1588s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_properties[left] PASSED [ 49%] 1588s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes[left] PASSED [ 49%] 1588s tests/test_xjse_calendar.py::TestXJSECalendar::test_calendar_bounds_properties[left] PASSED [ 49%] 1588s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minute_methods[left] PASSED [ 49%] 1588s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minutes[left] PASSED [ 49%] 1588s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_trading_minute[left] PASSED [ 49%] 1588s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_break_minute[left] PASSED [ 49%] 1588s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_on_minute[left] PASSED [ 49%] 1588s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_at_time[left] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_prev_next_minute[left] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[left-previous] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[both-previous] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[right-previous] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[right-next] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[right-next] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_properties[right] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes[right] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_calendar_bounds_properties[right] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minute_methods[right] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minutes[right] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_trading_minute[right] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_break_minute[right] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_on_minute[right] PASSED [ 50%] 1589s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_at_time[right] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_prev_next_minute[right] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[right-none] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[right-none] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[left-none] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[left-none] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[both-none] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[both-none] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[neither-none] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[neither-previous] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[neither-next] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_properties[neither] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes[neither] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_calendar_bounds_properties[neither] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minute_methods[neither] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minutes[neither] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_trading_minute[neither] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_break_minute[neither] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_on_minute[neither] PASSED [ 50%] 1590s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_at_time[neither] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_prev_next_minute[neither] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_past_session[neither] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_future_session[neither] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset[neither] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset_by_sessions[neither] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_in_range[neither] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_window[neither] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_distance[neither] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_to_sessions[neither] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes[neither] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes_count[neither] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_past_session[right] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_future_session[right] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset[right] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset_by_sessions[right] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_in_range[right] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_window[right] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_distance[right] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_to_sessions[right] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes[right] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes_count[right] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_past_session[left] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_future_session[left] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset[left] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset_by_sessions[left] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_in_range[left] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_window[left] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_distance[left] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_to_sessions[left] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes[left] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes_count[left] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_past_session[both] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_future_session[both] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset[both] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset_by_sessions[both] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_in_range[both] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_window[both] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_distance[both] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_to_sessions[both] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes[both] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes_count[both] PASSED [ 50%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_has_break PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_regular_holidays_sample PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_adhoc_holidays_sample PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_non_holidays_sample PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_late_opens_sample PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_early_closes_sample PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_early_closes_sample_time PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_early_closes_weekdays PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_early_closes_weekdays_time PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_non_early_closes_sample PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_non_early_closes_sample_time PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_late_opens PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_early_closes PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_open_close_break_start_end PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_has_break PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_next_prev_session PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_offset PASSED [ 51%] 1591s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_session PASSED [ 51%] 1592s tests/test_xjse_calendar.py::TestXJSECalendar::test_date_to_session PASSED [ 51%] 1593s tests/test_xjse_calendar.py::TestXJSECalendar::test_prev_next_open_close PASSED [ 51%] 1593s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_in_range PASSED [ 51%] 1593s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_has_break PASSED [ 51%] 1593s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_window PASSED [ 51%] 1593s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_distance PASSED [ 51%] 1593s tests/test_xjse_calendar.py::TestXJSECalendar::test_trading_index PASSED [ 51%] 1593s tests/test_xjse_calendar.py::TestXJSECalendar::test_deprecated PASSED [ 51%] 1593s tests/test_xjse_calendar.py::TestXJSECalendar::test_no_weekend_sessions PASSED [ 51%] 1593s tests/test_xjse_calendar.py::TestXJSECalendar::test_holidays_in_year[2019-holidays0] PASSED [ 51%] 1593s tests/test_xjse_calendar.py::TestXJSECalendar::test_holidays_in_year[2018-holidays1] PASSED [ 51%] 1593s tests/test_xjse_calendar.py::TestXJSECalendar::test_holidays_in_year[2016-holidays2] PASSED [ 51%] 1593s tests/test_xkar_calendar.py::TestXKARCalendar::test_testbase_integrity PASSED [ 51%] 1593s tests/test_xkar_calendar.py::TestXKARCalendar::test_base_integrity PASSED [ 51%] 1594s tests/test_xkar_calendar.py::TestXKARCalendar::test_calculated_against_csv PASSED [ 51%] 1594s tests/test_xkar_calendar.py::TestXKARCalendar::test_start_end PASSED [ 51%] 1594s tests/test_xkar_calendar.py::TestXKARCalendar::test_invalid_input PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_bound_min PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_bound_max PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_sanity_check_session_lengths PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_adhoc_holidays_specification PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_daylight_savings PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_opens_closes_break_starts_ends PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_properties[both] PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes[both] PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_calendar_bounds_properties[both] PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minute_methods[both] PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minutes[both] PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_trading_minute[both] PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_break_minute[both] PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_on_minute[both] PASSED [ 51%] 1595s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_at_time[both] PASSED [ 51%] 1596s tests/test_xkar_calendar.py::TestXKARCalendar::test_prev_next_minute[both] PASSED [ 51%] 1596s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[both-next] PASSED [ 51%] 1596s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[both-next] PASSED [ 51%] 1596s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[left-next] PASSED [ 51%] 1596s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[left-next] PASSED [ 51%] 1596s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_properties[left] PASSED [ 51%] 1596s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes[left] PASSED [ 51%] 1596s tests/test_xkar_calendar.py::TestXKARCalendar::test_calendar_bounds_properties[left] PASSED [ 51%] 1596s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minute_methods[left] PASSED [ 51%] 1596s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minutes[left] PASSED [ 51%] 1596s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_trading_minute[left] PASSED [ 51%] 1596s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_break_minute[left] PASSED [ 51%] 1596s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_on_minute[left] PASSED [ 51%] 1596s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_at_time[left] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_prev_next_minute[left] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[left-previous] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[both-previous] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[right-previous] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[right-next] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[right-next] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_properties[right] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes[right] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_calendar_bounds_properties[right] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minute_methods[right] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minutes[right] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_trading_minute[right] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_break_minute[right] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_on_minute[right] PASSED [ 51%] 1597s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_at_time[right] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_prev_next_minute[right] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[right-none] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[right-none] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[left-none] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[left-none] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[both-none] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[both-none] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[neither-none] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[neither-previous] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[neither-next] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_properties[neither] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes[neither] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_calendar_bounds_properties[neither] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minute_methods[neither] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minutes[neither] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_trading_minute[neither] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_break_minute[neither] PASSED [ 52%] 1598s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_on_minute[neither] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_at_time[neither] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_prev_next_minute[neither] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_past_session[neither] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_future_session[neither] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset[neither] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset_by_sessions[neither] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_in_range[neither] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_window[neither] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_distance[neither] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_to_sessions[neither] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes[neither] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes_count[neither] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_past_session[right] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_future_session[right] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset[right] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset_by_sessions[right] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_in_range[right] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_window[right] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_distance[right] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_to_sessions[right] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes[right] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes_count[right] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_past_session[left] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_future_session[left] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset[left] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset_by_sessions[left] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_in_range[left] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_window[left] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_distance[left] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_to_sessions[left] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes[left] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes_count[left] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_past_session[both] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_future_session[both] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset[both] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset_by_sessions[both] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_in_range[both] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_window[both] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_distance[both] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_to_sessions[both] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes[both] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes_count[both] PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_has_break PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_regular_holidays_sample PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_adhoc_holidays_sample PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_non_holidays_sample PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_late_opens_sample PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_early_closes_sample PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_early_closes_sample_time PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_early_closes_weekdays PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_early_closes_weekdays_time PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_non_early_closes_sample PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_non_early_closes_sample_time PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_late_opens PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_early_closes PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_open_close_break_start_end PASSED [ 52%] 1599s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_has_break PASSED [ 52%] 1600s tests/test_xkar_calendar.py::TestXKARCalendar::test_next_prev_session PASSED [ 52%] 1600s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_offset PASSED [ 52%] 1600s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_session PASSED [ 52%] 1600s tests/test_xkar_calendar.py::TestXKARCalendar::test_date_to_session PASSED [ 53%] 1601s tests/test_xkar_calendar.py::TestXKARCalendar::test_prev_next_open_close PASSED [ 53%] 1601s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_in_range PASSED [ 53%] 1601s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_has_break PASSED [ 53%] 1601s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_window PASSED [ 53%] 1601s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_distance PASSED [ 53%] 1601s tests/test_xkar_calendar.py::TestXKARCalendar::test_trading_index PASSED [ 53%] 1601s tests/test_xkar_calendar.py::TestXKARCalendar::test_deprecated PASSED [ 53%] 1601s tests/test_xkar_calendar.py::TestXKARCalendar::test_holidays_in_year[2019-holidays0] PASSED [ 53%] 1601s tests/test_xkls_calendar.py::TestXKLSCalendar::test_testbase_integrity PASSED [ 53%] 1601s tests/test_xkls_calendar.py::TestXKLSCalendar::test_base_integrity PASSED [ 53%] 1602s tests/test_xkls_calendar.py::TestXKLSCalendar::test_calculated_against_csv PASSED [ 53%] 1602s tests/test_xkls_calendar.py::TestXKLSCalendar::test_start_end PASSED [ 53%] 1602s tests/test_xkls_calendar.py::TestXKLSCalendar::test_invalid_input PASSED [ 53%] 1603s tests/test_xkls_calendar.py::TestXKLSCalendar::test_bound_min PASSED [ 53%] 1603s tests/test_xkls_calendar.py::TestXKLSCalendar::test_bound_max PASSED [ 53%] 1603s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sanity_check_session_lengths PASSED [ 53%] 1603s tests/test_xkls_calendar.py::TestXKLSCalendar::test_adhoc_holidays_specification PASSED [ 53%] 1603s tests/test_xkls_calendar.py::TestXKLSCalendar::test_daylight_savings PASSED [ 53%] 1603s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions PASSED [ 53%] 1603s tests/test_xkls_calendar.py::TestXKLSCalendar::test_opens_closes_break_starts_ends PASSED [ 53%] 1603s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_properties[both] PASSED [ 53%] 1604s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes[both] PASSED [ 53%] 1604s tests/test_xkls_calendar.py::TestXKLSCalendar::test_calendar_bounds_properties[both] PASSED [ 53%] 1604s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minute_methods[both] PASSED [ 53%] 1604s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minutes[both] PASSED [ 53%] 1604s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_trading_minute[both] PASSED [ 53%] 1604s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_break_minute[both] PASSED [ 53%] 1604s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_on_minute[both] PASSED [ 53%] 1604s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_at_time[both] PASSED [ 53%] 1604s tests/test_xkls_calendar.py::TestXKLSCalendar::test_prev_next_minute[both] PASSED [ 53%] 1604s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[both-next] PASSED [ 53%] 1604s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[both-next] PASSED [ 53%] 1604s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[left-next] PASSED [ 53%] 1604s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[left-next] PASSED [ 53%] 1604s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_properties[left] PASSED [ 53%] 1605s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes[left] PASSED [ 53%] 1605s tests/test_xkls_calendar.py::TestXKLSCalendar::test_calendar_bounds_properties[left] PASSED [ 53%] 1605s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minute_methods[left] PASSED [ 53%] 1605s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minutes[left] PASSED [ 53%] 1605s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_trading_minute[left] PASSED [ 53%] 1605s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_break_minute[left] PASSED [ 53%] 1605s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_on_minute[left] PASSED [ 53%] 1605s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_at_time[left] PASSED [ 53%] 1605s tests/test_xkls_calendar.py::TestXKLSCalendar::test_prev_next_minute[left] PASSED [ 53%] 1605s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[left-previous] PASSED [ 53%] 1605s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 53%] 1605s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[both-previous] PASSED [ 53%] 1605s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 53%] 1606s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[right-previous] PASSED [ 53%] 1606s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 53%] 1606s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[right-next] PASSED [ 53%] 1606s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[right-next] PASSED [ 53%] 1606s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_properties[right] PASSED [ 53%] 1606s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes[right] PASSED [ 53%] 1606s tests/test_xkls_calendar.py::TestXKLSCalendar::test_calendar_bounds_properties[right] PASSED [ 53%] 1606s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minute_methods[right] PASSED [ 53%] 1606s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minutes[right] PASSED [ 53%] 1606s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_trading_minute[right] PASSED [ 53%] 1606s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_break_minute[right] PASSED [ 53%] 1606s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_on_minute[right] PASSED [ 53%] 1606s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_at_time[right] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_prev_next_minute[right] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[right-none] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[right-none] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[left-none] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[left-none] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[both-none] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[both-none] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[neither-none] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[neither-previous] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[neither-next] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_properties[neither] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes[neither] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_calendar_bounds_properties[neither] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minute_methods[neither] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minutes[neither] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_trading_minute[neither] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_break_minute[neither] PASSED [ 53%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_on_minute[neither] PASSED [ 54%] 1607s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_at_time[neither] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_prev_next_minute[neither] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_past_session[neither] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_future_session[neither] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset[neither] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset_by_sessions[neither] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_in_range[neither] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_window[neither] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_distance[neither] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_to_sessions[neither] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes[neither] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes_count[neither] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_past_session[right] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_future_session[right] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset[right] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset_by_sessions[right] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_in_range[right] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_window[right] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_distance[right] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_to_sessions[right] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes[right] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes_count[right] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_past_session[left] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_future_session[left] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset[left] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset_by_sessions[left] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_in_range[left] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_window[left] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_distance[left] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_to_sessions[left] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes[left] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes_count[left] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_past_session[both] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_future_session[both] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset[both] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset_by_sessions[both] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_in_range[both] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_window[both] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_distance[both] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_to_sessions[both] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes[both] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes_count[both] PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_has_break PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_regular_holidays_sample PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_adhoc_holidays_sample PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_non_holidays_sample PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_late_opens_sample PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_early_closes_sample PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_early_closes_sample_time PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_early_closes_weekdays PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_early_closes_weekdays_time PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_non_early_closes_sample PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_non_early_closes_sample_time PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_late_opens PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_early_closes PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_open_close_break_start_end PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_has_break PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_next_prev_session PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_offset PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_session PASSED [ 54%] 1608s tests/test_xkls_calendar.py::TestXKLSCalendar::test_date_to_session PASSED [ 54%] 1609s tests/test_xkls_calendar.py::TestXKLSCalendar::test_prev_next_open_close PASSED [ 54%] 1609s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_in_range PASSED [ 54%] 1609s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_has_break PASSED [ 54%] 1609s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_window PASSED [ 54%] 1609s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_distance PASSED [ 54%] 1610s tests/test_xkls_calendar.py::TestXKLSCalendar::test_trading_index PASSED [ 54%] 1610s tests/test_xkls_calendar.py::TestXKLSCalendar::test_deprecated PASSED [ 54%] 1610s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_testbase_integrity PASSED [ 54%] 1610s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_base_integrity PASSED [ 54%] 1622s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_calculated_against_csv PASSED [ 54%] 1624s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_start_end PASSED [ 54%] 1625s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_invalid_input PASSED [ 54%] 1630s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_bound_min PASSED [ 54%] 1632s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_bound_max PASSED [ 54%] 1632s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sanity_check_session_lengths PASSED [ 54%] 1632s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_adhoc_holidays_specification PASSED [ 54%] 1632s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_daylight_savings PASSED [ 54%] 1632s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions PASSED [ 54%] 1632s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_opens_closes_break_starts_ends PASSED [ 54%] 1632s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_properties[both] PASSED [ 55%] 1633s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes[both] PASSED [ 55%] 1633s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_calendar_bounds_properties[both] PASSED [ 55%] 1633s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minute_methods[both] PASSED [ 55%] 1633s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minutes[both] PASSED [ 55%] 1633s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_trading_minute[both] PASSED [ 55%] 1633s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_break_minute[both] PASSED [ 55%] 1633s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_on_minute[both] PASSED [ 55%] 1634s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_at_time[both] PASSED [ 55%] 1635s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_prev_next_minute[both] PASSED [ 55%] 1635s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[both-next] PASSED [ 55%] 1635s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[both-next] PASSED [ 55%] 1635s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[left-next] PASSED [ 55%] 1635s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[left-next] PASSED [ 55%] 1635s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_properties[left] PASSED [ 55%] 1635s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes[left] PASSED [ 55%] 1635s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_calendar_bounds_properties[left] PASSED [ 55%] 1635s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minute_methods[left] PASSED [ 55%] 1635s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minutes[left] PASSED [ 55%] 1635s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_trading_minute[left] PASSED [ 55%] 1635s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_break_minute[left] PASSED [ 55%] 1635s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_on_minute[left] PASSED [ 55%] 1636s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_at_time[left] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_prev_next_minute[left] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[left-previous] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[both-previous] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[right-previous] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[right-next] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[right-next] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_properties[right] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes[right] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_calendar_bounds_properties[right] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minute_methods[right] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minutes[right] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_trading_minute[right] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_break_minute[right] PASSED [ 55%] 1637s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_on_minute[right] PASSED [ 55%] 1638s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_at_time[right] PASSED [ 55%] 1639s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_prev_next_minute[right] PASSED [ 55%] 1639s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[right-none] PASSED [ 55%] 1639s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[right-none] PASSED [ 55%] 1639s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[left-none] PASSED [ 55%] 1639s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[left-none] PASSED [ 55%] 1639s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[both-none] PASSED [ 55%] 1639s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[both-none] PASSED [ 55%] 1639s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[neither-none] PASSED [ 55%] 1639s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 55%] 1639s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[neither-previous] PASSED [ 55%] 1639s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 55%] 1639s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[neither-next] PASSED [ 55%] 1639s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 55%] 1639s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_properties[neither] PASSED [ 55%] 1640s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes[neither] PASSED [ 55%] 1640s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_calendar_bounds_properties[neither] PASSED [ 55%] 1640s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minute_methods[neither] PASSED [ 55%] 1640s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minutes[neither] PASSED [ 55%] 1640s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_trading_minute[neither] PASSED [ 55%] 1640s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_break_minute[neither] PASSED [ 55%] 1640s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_on_minute[neither] PASSED [ 55%] 1641s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_at_time[neither] PASSED [ 55%] 1641s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_prev_next_minute[neither] PASSED [ 55%] 1641s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_past_session[neither] PASSED [ 55%] 1641s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_future_session[neither] PASSED [ 55%] 1641s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset[neither] PASSED [ 55%] 1641s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset_by_sessions[neither] PASSED [ 55%] 1641s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_in_range[neither] PASSED [ 55%] 1641s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_window[neither] PASSED [ 55%] 1641s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_distance[neither] PASSED [ 55%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_to_sessions[neither] PASSED [ 55%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes[neither] PASSED [ 55%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes_count[neither] PASSED [ 55%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_past_session[right] PASSED [ 55%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_future_session[right] PASSED [ 55%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset[right] PASSED [ 55%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset_by_sessions[right] PASSED [ 55%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_in_range[right] PASSED [ 55%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_window[right] PASSED [ 55%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_distance[right] PASSED [ 55%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_to_sessions[right] PASSED [ 55%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes[right] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes_count[right] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_past_session[left] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_future_session[left] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset[left] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset_by_sessions[left] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_in_range[left] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_window[left] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_distance[left] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_to_sessions[left] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes[left] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes_count[left] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_past_session[both] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_future_session[both] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset[both] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset_by_sessions[both] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_in_range[both] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_window[both] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_distance[both] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_to_sessions[both] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes[both] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes_count[both] PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_has_break PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_regular_holidays_sample PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_adhoc_holidays_sample PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_non_holidays_sample PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_late_opens_sample PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_early_closes_sample PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_early_closes_sample_time PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_early_closes_weekdays PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_early_closes_weekdays_time PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_non_early_closes_sample PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_non_early_closes_sample_time PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_early_closes PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_open_close_break_start_end PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_has_break PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_next_prev_session PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_offset PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_session PASSED [ 56%] 1642s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_date_to_session PASSED [ 56%] 1644s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_prev_next_open_close PASSED [ 56%] 1644s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_in_range PASSED [ 56%] 1644s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_has_break PASSED [ 56%] 1644s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_window PASSED [ 56%] 1644s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_distance PASSED [ 56%] 1644s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_trading_index PASSED [ 56%] 1644s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_deprecated PASSED [ 56%] 1644s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_late_opens XFAIL [ 56%] 1645s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_historical_regular_holidays_fall_into_precomputed_holidays PASSED [ 56%] 1645s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_feb_29_2022_in_lunar_calendar PASSED [ 56%] 1645s tests/test_xlim_calendar.py::TestXLIMCalendar::test_testbase_integrity PASSED [ 56%] 1645s tests/test_xlim_calendar.py::TestXLIMCalendar::test_base_integrity PASSED [ 56%] 1646s tests/test_xlim_calendar.py::TestXLIMCalendar::test_calculated_against_csv PASSED [ 56%] 1647s tests/test_xlim_calendar.py::TestXLIMCalendar::test_start_end PASSED [ 56%] 1647s tests/test_xlim_calendar.py::TestXLIMCalendar::test_invalid_input PASSED [ 56%] 1647s tests/test_xlim_calendar.py::TestXLIMCalendar::test_bound_min PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_bound_max PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sanity_check_session_lengths PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_adhoc_holidays_specification PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_daylight_savings PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_opens_closes_break_starts_ends PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_properties[both] PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes[both] PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_calendar_bounds_properties[both] PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minute_methods[both] PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minutes[both] PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_trading_minute[both] PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_break_minute[both] PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_on_minute[both] PASSED [ 56%] 1648s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_at_time[both] PASSED [ 56%] 1649s tests/test_xlim_calendar.py::TestXLIMCalendar::test_prev_next_minute[both] PASSED [ 56%] 1649s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[both-next] PASSED [ 56%] 1649s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[both-next] PASSED [ 56%] 1649s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[left-next] PASSED [ 56%] 1649s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[left-next] PASSED [ 56%] 1649s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_properties[left] PASSED [ 56%] 1649s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes[left] PASSED [ 56%] 1649s tests/test_xlim_calendar.py::TestXLIMCalendar::test_calendar_bounds_properties[left] PASSED [ 56%] 1649s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minute_methods[left] PASSED [ 56%] 1649s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minutes[left] PASSED [ 56%] 1649s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_trading_minute[left] PASSED [ 56%] 1649s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_break_minute[left] PASSED [ 57%] 1649s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_on_minute[left] PASSED [ 57%] 1649s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_at_time[left] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_prev_next_minute[left] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[left-previous] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[both-previous] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[right-previous] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[right-next] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[right-next] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_properties[right] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes[right] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_calendar_bounds_properties[right] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minute_methods[right] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minutes[right] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_trading_minute[right] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_break_minute[right] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_on_minute[right] PASSED [ 57%] 1650s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_at_time[right] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_prev_next_minute[right] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[right-none] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[right-none] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[left-none] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[left-none] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[both-none] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[both-none] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[neither-none] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[neither-previous] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[neither-next] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_properties[neither] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes[neither] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_calendar_bounds_properties[neither] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minute_methods[neither] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minutes[neither] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_trading_minute[neither] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_break_minute[neither] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_on_minute[neither] PASSED [ 57%] 1651s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_at_time[neither] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_prev_next_minute[neither] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_past_session[neither] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_future_session[neither] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset[neither] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset_by_sessions[neither] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_in_range[neither] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_window[neither] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_distance[neither] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_to_sessions[neither] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes[neither] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes_count[neither] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_past_session[right] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_future_session[right] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset[right] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset_by_sessions[right] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_in_range[right] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_window[right] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_distance[right] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_to_sessions[right] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes[right] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes_count[right] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_past_session[left] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_future_session[left] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset[left] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset_by_sessions[left] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_in_range[left] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_window[left] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_distance[left] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_to_sessions[left] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes[left] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes_count[left] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_past_session[both] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_future_session[both] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset[both] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset_by_sessions[both] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_in_range[both] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_window[both] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_distance[both] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_to_sessions[both] PASSED [ 57%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes[both] PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes_count[both] PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_has_break PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_regular_holidays_sample PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_adhoc_holidays_sample PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_non_holidays_sample PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_late_opens_sample PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_early_closes_sample PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_early_closes_sample_time PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_early_closes_weekdays PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_early_closes_weekdays_time PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_non_early_closes_sample PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_non_early_closes_sample_time PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_late_opens PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_early_closes PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_open_close_break_start_end PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_has_break PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_next_prev_session PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_offset PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_session PASSED [ 58%] 1652s tests/test_xlim_calendar.py::TestXLIMCalendar::test_date_to_session PASSED [ 58%] 1653s tests/test_xlim_calendar.py::TestXLIMCalendar::test_prev_next_open_close PASSED [ 58%] 1653s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_in_range PASSED [ 58%] 1653s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_has_break PASSED [ 58%] 1653s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_window PASSED [ 58%] 1653s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_distance PASSED [ 58%] 1653s tests/test_xlim_calendar.py::TestXLIMCalendar::test_trading_index PASSED [ 58%] 1653s tests/test_xlim_calendar.py::TestXLIMCalendar::test_deprecated PASSED [ 58%] 1653s tests/test_xlis_calendar.py::TestXLISCalendar::test_testbase_integrity PASSED [ 58%] 1653s tests/test_xlis_calendar.py::TestXLISCalendar::test_base_integrity PASSED [ 58%] 1655s tests/test_xlis_calendar.py::TestXLISCalendar::test_calculated_against_csv PASSED [ 58%] 1655s tests/test_xlis_calendar.py::TestXLISCalendar::test_start_end PASSED [ 58%] 1655s tests/test_xlis_calendar.py::TestXLISCalendar::test_invalid_input PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_bound_min PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_bound_max PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_sanity_check_session_lengths PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_adhoc_holidays_specification PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_daylight_savings PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_opens_closes_break_starts_ends PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_properties[both] PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes[both] PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_calendar_bounds_properties[both] PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minute_methods[both] PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minutes[both] PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_trading_minute[both] PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_break_minute[both] PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_on_minute[both] PASSED [ 58%] 1656s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_at_time[both] PASSED [ 58%] 1657s tests/test_xlis_calendar.py::TestXLISCalendar::test_prev_next_minute[both] PASSED [ 58%] 1657s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[both-next] PASSED [ 58%] 1657s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[both-next] PASSED [ 58%] 1657s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[left-next] PASSED [ 58%] 1657s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[left-next] PASSED [ 58%] 1657s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_properties[left] PASSED [ 58%] 1657s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes[left] PASSED [ 58%] 1657s tests/test_xlis_calendar.py::TestXLISCalendar::test_calendar_bounds_properties[left] PASSED [ 58%] 1657s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minute_methods[left] PASSED [ 58%] 1657s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minutes[left] PASSED [ 58%] 1657s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_trading_minute[left] PASSED [ 58%] 1657s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_break_minute[left] PASSED [ 58%] 1657s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_on_minute[left] PASSED [ 58%] 1657s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_at_time[left] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_prev_next_minute[left] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[left-previous] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[both-previous] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[right-previous] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[right-next] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[right-next] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_properties[right] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes[right] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_calendar_bounds_properties[right] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minute_methods[right] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minutes[right] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_trading_minute[right] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_break_minute[right] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_on_minute[right] PASSED [ 58%] 1658s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_at_time[right] PASSED [ 58%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_prev_next_minute[right] PASSED [ 58%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[right-none] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[right-none] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[left-none] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[left-none] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[both-none] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[both-none] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[neither-none] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[neither-previous] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[neither-next] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_properties[neither] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes[neither] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_calendar_bounds_properties[neither] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minute_methods[neither] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minutes[neither] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_trading_minute[neither] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_break_minute[neither] PASSED [ 59%] 1659s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_on_minute[neither] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_at_time[neither] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_prev_next_minute[neither] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_past_session[neither] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_future_session[neither] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset[neither] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset_by_sessions[neither] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_in_range[neither] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_window[neither] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_distance[neither] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_to_sessions[neither] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes[neither] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes_count[neither] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_past_session[right] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_future_session[right] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset[right] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset_by_sessions[right] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_in_range[right] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_window[right] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_distance[right] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_to_sessions[right] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes[right] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes_count[right] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_past_session[left] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_future_session[left] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset[left] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset_by_sessions[left] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_in_range[left] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_window[left] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_distance[left] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_to_sessions[left] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes[left] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes_count[left] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_past_session[both] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_future_session[both] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset[both] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset_by_sessions[both] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_in_range[both] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_window[both] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_distance[both] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_to_sessions[both] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes[both] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes_count[both] PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_has_break PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_regular_holidays_sample PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_adhoc_holidays_sample PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_non_holidays_sample PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_late_opens_sample PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_early_closes_sample PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_early_closes_sample_time PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_early_closes_weekdays PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_early_closes_weekdays_time PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_non_early_closes_sample PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_non_early_closes_sample_time PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_late_opens PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_early_closes PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_open_close_break_start_end PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_has_break PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_next_prev_session PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_offset PASSED [ 59%] 1660s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_session PASSED [ 59%] 1661s tests/test_xlis_calendar.py::TestXLISCalendar::test_date_to_session PASSED [ 59%] 1662s tests/test_xlis_calendar.py::TestXLISCalendar::test_prev_next_open_close PASSED [ 59%] 1662s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_in_range PASSED [ 60%] 1662s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_has_break PASSED [ 60%] 1662s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_window PASSED [ 60%] 1662s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_distance PASSED [ 60%] 1662s tests/test_xlis_calendar.py::TestXLISCalendar::test_trading_index PASSED [ 60%] 1662s tests/test_xlis_calendar.py::TestXLISCalendar::test_deprecated PASSED [ 60%] 1662s tests/test_xlon_calendar.py::TestXLONCalendar::test_testbase_integrity PASSED [ 60%] 1662s tests/test_xlon_calendar.py::TestXLONCalendar::test_base_integrity PASSED [ 60%] 1663s tests/test_xlon_calendar.py::TestXLONCalendar::test_calculated_against_csv PASSED [ 60%] 1663s tests/test_xlon_calendar.py::TestXLONCalendar::test_start_end PASSED [ 60%] 1663s tests/test_xlon_calendar.py::TestXLONCalendar::test_invalid_input PASSED [ 60%] 1664s tests/test_xlon_calendar.py::TestXLONCalendar::test_bound_min PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_bound_max PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_sanity_check_session_lengths PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_adhoc_holidays_specification PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_daylight_savings PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_opens_closes_break_starts_ends PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_properties[both] PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes[both] PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_calendar_bounds_properties[both] PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minute_methods[both] PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minutes[both] PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_trading_minute[both] PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_break_minute[both] PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_on_minute[both] PASSED [ 60%] 1665s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_at_time[both] PASSED [ 60%] 1666s tests/test_xlon_calendar.py::TestXLONCalendar::test_prev_next_minute[both] PASSED [ 60%] 1666s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[both-next] PASSED [ 60%] 1666s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[both-next] PASSED [ 60%] 1666s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[left-next] PASSED [ 60%] 1666s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[left-next] PASSED [ 60%] 1666s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_properties[left] PASSED [ 60%] 1666s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes[left] PASSED [ 60%] 1666s tests/test_xlon_calendar.py::TestXLONCalendar::test_calendar_bounds_properties[left] PASSED [ 60%] 1666s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minute_methods[left] PASSED [ 60%] 1666s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minutes[left] PASSED [ 60%] 1666s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_trading_minute[left] PASSED [ 60%] 1666s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_break_minute[left] PASSED [ 60%] 1666s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_on_minute[left] PASSED [ 60%] 1666s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_at_time[left] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_prev_next_minute[left] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[left-previous] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[both-previous] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[right-previous] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[right-next] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[right-next] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_properties[right] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes[right] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_calendar_bounds_properties[right] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minute_methods[right] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minutes[right] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_trading_minute[right] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_break_minute[right] PASSED [ 60%] 1667s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_on_minute[right] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_at_time[right] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_prev_next_minute[right] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[right-none] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[right-none] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[left-none] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[left-none] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[both-none] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[both-none] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[neither-none] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[neither-previous] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[neither-next] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 60%] 1668s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_properties[neither] PASSED [ 60%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes[neither] PASSED [ 60%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_calendar_bounds_properties[neither] PASSED [ 60%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minute_methods[neither] PASSED [ 60%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minutes[neither] PASSED [ 60%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_trading_minute[neither] PASSED [ 60%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_break_minute[neither] PASSED [ 60%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_on_minute[neither] PASSED [ 60%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_at_time[neither] PASSED [ 60%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_prev_next_minute[neither] PASSED [ 60%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_past_session[neither] PASSED [ 61%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_future_session[neither] PASSED [ 61%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset[neither] PASSED [ 61%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset_by_sessions[neither] PASSED [ 61%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_in_range[neither] PASSED [ 61%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_window[neither] PASSED [ 61%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_distance[neither] PASSED [ 61%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_to_sessions[neither] PASSED [ 61%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes[neither] PASSED [ 61%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes_count[neither] PASSED [ 61%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_past_session[right] PASSED [ 61%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_future_session[right] PASSED [ 61%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset[right] PASSED [ 61%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset_by_sessions[right] PASSED [ 61%] 1669s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_in_range[right] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_window[right] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_distance[right] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_to_sessions[right] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes[right] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes_count[right] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_past_session[left] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_future_session[left] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset[left] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset_by_sessions[left] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_in_range[left] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_window[left] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_distance[left] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_to_sessions[left] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes[left] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes_count[left] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_past_session[both] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_future_session[both] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset[both] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset_by_sessions[both] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_in_range[both] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_window[both] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_distance[both] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_to_sessions[both] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes[both] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes_count[both] PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_has_break PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_regular_holidays_sample PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_adhoc_holidays_sample PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_non_holidays_sample PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_late_opens_sample PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_early_closes_sample PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_early_closes_sample_time PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_early_closes_weekdays PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_early_closes_weekdays_time PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_non_early_closes_sample PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_non_early_closes_sample_time PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_late_opens PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_early_closes PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_open_close_break_start_end PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_has_break PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_next_prev_session PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_offset PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_session PASSED [ 61%] 1670s tests/test_xlon_calendar.py::TestXLONCalendar::test_date_to_session PASSED [ 61%] 1671s tests/test_xlon_calendar.py::TestXLONCalendar::test_prev_next_open_close PASSED [ 61%] 1671s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_in_range PASSED [ 61%] 1671s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_has_break PASSED [ 61%] 1671s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_window PASSED [ 61%] 1671s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_distance PASSED [ 61%] 1671s tests/test_xlon_calendar.py::TestXLONCalendar::test_trading_index PASSED [ 61%] 1671s tests/test_xlon_calendar.py::TestXLONCalendar::test_deprecated PASSED [ 61%] 1671s tests/test_xmad_calendar.py::TestXMADCalendar::test_testbase_integrity PASSED [ 61%] 1671s tests/test_xmad_calendar.py::TestXMADCalendar::test_base_integrity PASSED [ 61%] 1673s tests/test_xmad_calendar.py::TestXMADCalendar::test_calculated_against_csv PASSED [ 61%] 1673s tests/test_xmad_calendar.py::TestXMADCalendar::test_start_end PASSED [ 61%] 1673s tests/test_xmad_calendar.py::TestXMADCalendar::test_invalid_input PASSED [ 61%] 1674s tests/test_xmad_calendar.py::TestXMADCalendar::test_bound_min PASSED [ 61%] 1674s tests/test_xmad_calendar.py::TestXMADCalendar::test_bound_max PASSED [ 61%] 1674s tests/test_xmad_calendar.py::TestXMADCalendar::test_sanity_check_session_lengths PASSED [ 61%] 1674s tests/test_xmad_calendar.py::TestXMADCalendar::test_adhoc_holidays_specification PASSED [ 61%] 1674s tests/test_xmad_calendar.py::TestXMADCalendar::test_daylight_savings PASSED [ 61%] 1674s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions PASSED [ 61%] 1674s tests/test_xmad_calendar.py::TestXMADCalendar::test_opens_closes_break_starts_ends PASSED [ 61%] 1674s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_properties[both] PASSED [ 61%] 1675s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes[both] PASSED [ 61%] 1675s tests/test_xmad_calendar.py::TestXMADCalendar::test_calendar_bounds_properties[both] PASSED [ 61%] 1675s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minute_methods[both] PASSED [ 61%] 1675s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minutes[both] PASSED [ 62%] 1675s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_trading_minute[both] PASSED [ 62%] 1675s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_break_minute[both] PASSED [ 62%] 1675s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_on_minute[both] PASSED [ 62%] 1675s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_at_time[both] PASSED [ 62%] 1675s tests/test_xmad_calendar.py::TestXMADCalendar::test_prev_next_minute[both] PASSED [ 62%] 1675s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[both-next] PASSED [ 62%] 1675s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[both-next] PASSED [ 62%] 1675s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[left-next] PASSED [ 62%] 1675s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[left-next] PASSED [ 62%] 1675s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_properties[left] PASSED [ 62%] 1676s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes[left] PASSED [ 62%] 1676s tests/test_xmad_calendar.py::TestXMADCalendar::test_calendar_bounds_properties[left] PASSED [ 62%] 1676s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minute_methods[left] PASSED [ 62%] 1676s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minutes[left] PASSED [ 62%] 1676s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_trading_minute[left] PASSED [ 62%] 1676s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_break_minute[left] PASSED [ 62%] 1676s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_on_minute[left] PASSED [ 62%] 1676s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_at_time[left] PASSED [ 62%] 1676s tests/test_xmad_calendar.py::TestXMADCalendar::test_prev_next_minute[left] PASSED [ 62%] 1676s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[left-previous] PASSED [ 62%] 1676s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 62%] 1676s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[both-previous] PASSED [ 62%] 1676s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 62%] 1677s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[right-previous] PASSED [ 62%] 1677s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 62%] 1677s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[right-next] PASSED [ 62%] 1677s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[right-next] PASSED [ 62%] 1677s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_properties[right] PASSED [ 62%] 1677s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes[right] PASSED [ 62%] 1677s tests/test_xmad_calendar.py::TestXMADCalendar::test_calendar_bounds_properties[right] PASSED [ 62%] 1677s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minute_methods[right] PASSED [ 62%] 1677s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minutes[right] PASSED [ 62%] 1677s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_trading_minute[right] PASSED [ 62%] 1677s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_break_minute[right] PASSED [ 62%] 1677s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_on_minute[right] PASSED [ 62%] 1677s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_at_time[right] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_prev_next_minute[right] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[right-none] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[right-none] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[left-none] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[left-none] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[both-none] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[both-none] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[neither-none] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[neither-previous] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[neither-next] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_properties[neither] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes[neither] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_calendar_bounds_properties[neither] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minute_methods[neither] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minutes[neither] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_trading_minute[neither] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_break_minute[neither] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_on_minute[neither] PASSED [ 62%] 1678s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_at_time[neither] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_prev_next_minute[neither] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_past_session[neither] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_future_session[neither] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset[neither] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset_by_sessions[neither] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_in_range[neither] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_window[neither] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_distance[neither] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_to_sessions[neither] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes[neither] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes_count[neither] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_past_session[right] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_future_session[right] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset[right] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset_by_sessions[right] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_in_range[right] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_window[right] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_distance[right] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_to_sessions[right] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes[right] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes_count[right] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_past_session[left] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_future_session[left] PASSED [ 62%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset[left] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset_by_sessions[left] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_in_range[left] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_window[left] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_distance[left] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_to_sessions[left] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes[left] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes_count[left] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_past_session[both] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_future_session[both] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset[both] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset_by_sessions[both] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_in_range[both] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_window[both] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_distance[both] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_to_sessions[both] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes[both] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes_count[both] PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_has_break PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_regular_holidays_sample PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_adhoc_holidays_sample PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_non_holidays_sample PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_late_opens_sample PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_early_closes_sample PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_early_closes_sample_time PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_early_closes_weekdays PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_early_closes_weekdays_time PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_non_early_closes_sample PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_non_early_closes_sample_time PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_late_opens PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_early_closes PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_open_close_break_start_end PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_has_break PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_next_prev_session PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_offset PASSED [ 63%] 1679s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_session PASSED [ 63%] 1680s tests/test_xmad_calendar.py::TestXMADCalendar::test_date_to_session PASSED [ 63%] 1681s tests/test_xmad_calendar.py::TestXMADCalendar::test_prev_next_open_close PASSED [ 63%] 1681s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_in_range PASSED [ 63%] 1681s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_has_break PASSED [ 63%] 1681s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_window PASSED [ 63%] 1681s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_distance PASSED [ 63%] 1681s tests/test_xmad_calendar.py::TestXMADCalendar::test_trading_index PASSED [ 63%] 1681s tests/test_xmad_calendar.py::TestXMADCalendar::test_deprecated PASSED [ 63%] 1681s tests/test_xmex_calendar.py::TestXMEXCalendar::test_testbase_integrity PASSED [ 63%] 1681s tests/test_xmex_calendar.py::TestXMEXCalendar::test_base_integrity PASSED [ 63%] 1682s tests/test_xmex_calendar.py::TestXMEXCalendar::test_calculated_against_csv PASSED [ 63%] 1682s tests/test_xmex_calendar.py::TestXMEXCalendar::test_start_end PASSED [ 63%] 1682s tests/test_xmex_calendar.py::TestXMEXCalendar::test_invalid_input PASSED [ 63%] 1683s tests/test_xmex_calendar.py::TestXMEXCalendar::test_bound_min PASSED [ 63%] 1683s tests/test_xmex_calendar.py::TestXMEXCalendar::test_bound_max PASSED [ 63%] 1683s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sanity_check_session_lengths PASSED [ 63%] 1683s tests/test_xmex_calendar.py::TestXMEXCalendar::test_adhoc_holidays_specification PASSED [ 63%] 1683s tests/test_xmex_calendar.py::TestXMEXCalendar::test_daylight_savings PASSED [ 63%] 1683s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions PASSED [ 63%] 1683s tests/test_xmex_calendar.py::TestXMEXCalendar::test_opens_closes_break_starts_ends PASSED [ 63%] 1683s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_properties[both] PASSED [ 63%] 1684s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes[both] PASSED [ 63%] 1684s tests/test_xmex_calendar.py::TestXMEXCalendar::test_calendar_bounds_properties[both] PASSED [ 63%] 1684s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minute_methods[both] PASSED [ 63%] 1684s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minutes[both] PASSED [ 63%] 1684s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_trading_minute[both] PASSED [ 63%] 1684s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_break_minute[both] PASSED [ 63%] 1684s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_on_minute[both] PASSED [ 63%] 1684s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_at_time[both] PASSED [ 63%] 1684s tests/test_xmex_calendar.py::TestXMEXCalendar::test_prev_next_minute[both] PASSED [ 63%] 1684s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[both-next] PASSED [ 63%] 1684s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[both-next] PASSED [ 63%] 1684s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[left-next] PASSED [ 63%] 1684s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[left-next] PASSED [ 63%] 1684s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_properties[left] PASSED [ 63%] 1685s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes[left] PASSED [ 63%] 1685s tests/test_xmex_calendar.py::TestXMEXCalendar::test_calendar_bounds_properties[left] PASSED [ 63%] 1685s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minute_methods[left] PASSED [ 63%] 1685s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minutes[left] PASSED [ 63%] 1685s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_trading_minute[left] PASSED [ 63%] 1685s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_break_minute[left] PASSED [ 63%] 1685s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_on_minute[left] PASSED [ 63%] 1685s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_at_time[left] PASSED [ 63%] 1685s tests/test_xmex_calendar.py::TestXMEXCalendar::test_prev_next_minute[left] PASSED [ 63%] 1685s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[left-previous] PASSED [ 63%] 1685s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 64%] 1685s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[both-previous] PASSED [ 64%] 1685s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 64%] 1686s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[right-previous] PASSED [ 64%] 1686s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 64%] 1686s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[right-next] PASSED [ 64%] 1686s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[right-next] PASSED [ 64%] 1686s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_properties[right] PASSED [ 64%] 1686s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes[right] PASSED [ 64%] 1686s tests/test_xmex_calendar.py::TestXMEXCalendar::test_calendar_bounds_properties[right] PASSED [ 64%] 1686s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minute_methods[right] PASSED [ 64%] 1686s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minutes[right] PASSED [ 64%] 1686s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_trading_minute[right] PASSED [ 64%] 1686s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_break_minute[right] PASSED [ 64%] 1686s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_on_minute[right] PASSED [ 64%] 1686s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_at_time[right] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_prev_next_minute[right] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[right-none] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[right-none] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[left-none] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[left-none] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[both-none] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[both-none] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[neither-none] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[neither-previous] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[neither-next] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_properties[neither] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes[neither] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_calendar_bounds_properties[neither] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minute_methods[neither] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minutes[neither] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_trading_minute[neither] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_break_minute[neither] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_on_minute[neither] PASSED [ 64%] 1687s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_at_time[neither] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_prev_next_minute[neither] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_past_session[neither] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_future_session[neither] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset[neither] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset_by_sessions[neither] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_in_range[neither] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_window[neither] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_distance[neither] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_to_sessions[neither] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes[neither] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes_count[neither] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_past_session[right] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_future_session[right] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset[right] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset_by_sessions[right] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_in_range[right] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_window[right] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_distance[right] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_to_sessions[right] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes[right] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes_count[right] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_past_session[left] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_future_session[left] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset[left] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset_by_sessions[left] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_in_range[left] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_window[left] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_distance[left] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_to_sessions[left] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes[left] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes_count[left] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_past_session[both] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_future_session[both] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset[both] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset_by_sessions[both] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_in_range[both] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_window[both] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_distance[both] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_to_sessions[both] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes[both] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes_count[both] PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_has_break PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_regular_holidays_sample PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_adhoc_holidays_sample PASSED [ 64%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_non_holidays_sample PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_late_opens_sample PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_early_closes_sample PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_early_closes_sample_time PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_early_closes_weekdays PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_early_closes_weekdays_time PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_non_early_closes_sample PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_non_early_closes_sample_time PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_late_opens PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_early_closes PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_open_close_break_start_end PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_has_break PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_next_prev_session PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_offset PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_session PASSED [ 65%] 1688s tests/test_xmex_calendar.py::TestXMEXCalendar::test_date_to_session PASSED [ 65%] 1689s tests/test_xmex_calendar.py::TestXMEXCalendar::test_prev_next_open_close PASSED [ 65%] 1689s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_in_range PASSED [ 65%] 1689s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_has_break PASSED [ 65%] 1689s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_window PASSED [ 65%] 1689s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_distance PASSED [ 65%] 1689s tests/test_xmex_calendar.py::TestXMEXCalendar::test_trading_index PASSED [ 65%] 1689s tests/test_xmex_calendar.py::TestXMEXCalendar::test_deprecated PASSED [ 65%] 1689s tests/test_xmil_calendar.py::TestXMILCalendar::test_testbase_integrity PASSED [ 65%] 1689s tests/test_xmil_calendar.py::TestXMILCalendar::test_base_integrity PASSED [ 65%] 1691s tests/test_xmil_calendar.py::TestXMILCalendar::test_calculated_against_csv PASSED [ 65%] 1691s tests/test_xmil_calendar.py::TestXMILCalendar::test_start_end PASSED [ 65%] 1691s tests/test_xmil_calendar.py::TestXMILCalendar::test_invalid_input PASSED [ 65%] 1691s tests/test_xmil_calendar.py::TestXMILCalendar::test_bound_min PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_bound_max PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_sanity_check_session_lengths PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_adhoc_holidays_specification PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_daylight_savings PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_opens_closes_break_starts_ends PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_properties[both] PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes[both] PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_calendar_bounds_properties[both] PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minute_methods[both] PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minutes[both] PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_trading_minute[both] PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_break_minute[both] PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_on_minute[both] PASSED [ 65%] 1692s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_at_time[both] PASSED [ 65%] 1693s tests/test_xmil_calendar.py::TestXMILCalendar::test_prev_next_minute[both] PASSED [ 65%] 1693s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[both-next] PASSED [ 65%] 1693s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[both-next] PASSED [ 65%] 1693s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[left-next] PASSED [ 65%] 1693s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[left-next] PASSED [ 65%] 1693s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_properties[left] PASSED [ 65%] 1693s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes[left] PASSED [ 65%] 1693s tests/test_xmil_calendar.py::TestXMILCalendar::test_calendar_bounds_properties[left] PASSED [ 65%] 1693s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minute_methods[left] PASSED [ 65%] 1693s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minutes[left] PASSED [ 65%] 1693s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_trading_minute[left] PASSED [ 65%] 1693s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_break_minute[left] PASSED [ 65%] 1693s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_on_minute[left] PASSED [ 65%] 1693s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_at_time[left] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_prev_next_minute[left] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[left-previous] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[both-previous] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[right-previous] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[right-next] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[right-next] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_properties[right] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes[right] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_calendar_bounds_properties[right] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minute_methods[right] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minutes[right] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_trading_minute[right] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_break_minute[right] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_on_minute[right] PASSED [ 65%] 1694s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_at_time[right] PASSED [ 65%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_prev_next_minute[right] PASSED [ 65%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[right-none] PASSED [ 65%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[right-none] PASSED [ 65%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[left-none] PASSED [ 65%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[left-none] PASSED [ 65%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[both-none] PASSED [ 65%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[both-none] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[neither-none] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[neither-previous] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[neither-next] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_properties[neither] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes[neither] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_calendar_bounds_properties[neither] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minute_methods[neither] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minutes[neither] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_trading_minute[neither] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_break_minute[neither] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_on_minute[neither] PASSED [ 66%] 1695s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_at_time[neither] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_prev_next_minute[neither] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_past_session[neither] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_future_session[neither] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset[neither] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset_by_sessions[neither] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_in_range[neither] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_window[neither] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_distance[neither] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_to_sessions[neither] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes[neither] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes_count[neither] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_past_session[right] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_future_session[right] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset[right] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset_by_sessions[right] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_in_range[right] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_window[right] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_distance[right] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_to_sessions[right] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes[right] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes_count[right] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_past_session[left] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_future_session[left] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset[left] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset_by_sessions[left] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_in_range[left] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_window[left] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_distance[left] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_to_sessions[left] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes[left] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes_count[left] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_past_session[both] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_future_session[both] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset[both] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset_by_sessions[both] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_in_range[both] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_window[both] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_distance[both] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_to_sessions[both] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes[both] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes_count[both] PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_has_break PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_regular_holidays_sample PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_adhoc_holidays_sample PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_non_holidays_sample PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_late_opens_sample PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_early_closes_sample PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_early_closes_sample_time PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_early_closes_weekdays PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_early_closes_weekdays_time PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_non_early_closes_sample PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_non_early_closes_sample_time PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_late_opens PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_early_closes PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_open_close_break_start_end PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_has_break PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_next_prev_session PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_offset PASSED [ 66%] 1696s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_session PASSED [ 66%] 1697s tests/test_xmil_calendar.py::TestXMILCalendar::test_date_to_session PASSED [ 66%] 1697s tests/test_xmil_calendar.py::TestXMILCalendar::test_prev_next_open_close PASSED [ 66%] 1697s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_in_range PASSED [ 66%] 1697s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_has_break PASSED [ 66%] 1697s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_window PASSED [ 66%] 1697s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_distance PASSED [ 66%] 1698s tests/test_xmil_calendar.py::TestXMILCalendar::test_trading_index PASSED [ 66%] 1698s tests/test_xmil_calendar.py::TestXMILCalendar::test_deprecated PASSED [ 67%] 1698s tests/test_xmos_calendar.py::TestXMOSCalendar::test_testbase_integrity PASSED [ 67%] 1698s tests/test_xmos_calendar.py::TestXMOSCalendar::test_base_integrity PASSED [ 67%] 1707s tests/test_xmos_calendar.py::TestXMOSCalendar::test_calculated_against_csv PASSED [ 67%] 1709s tests/test_xmos_calendar.py::TestXMOSCalendar::test_start_end PASSED [ 67%] 1710s tests/test_xmos_calendar.py::TestXMOSCalendar::test_invalid_input PASSED [ 67%] 1716s tests/test_xmos_calendar.py::TestXMOSCalendar::test_bound_min PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_bound_max PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sanity_check_session_lengths PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_adhoc_holidays_specification PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_daylight_savings PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_opens_closes_break_starts_ends PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_properties[both] PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes[both] PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_calendar_bounds_properties[both] PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minute_methods[both] PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minutes[both] PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_trading_minute[both] PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_break_minute[both] PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_on_minute[both] PASSED [ 67%] 1718s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_at_time[both] PASSED [ 67%] 1719s tests/test_xmos_calendar.py::TestXMOSCalendar::test_prev_next_minute[both] PASSED [ 67%] 1719s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[both-next] PASSED [ 67%] 1719s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[both-next] PASSED [ 67%] 1719s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[left-next] PASSED [ 67%] 1719s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[left-next] PASSED [ 67%] 1719s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_properties[left] PASSED [ 67%] 1719s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes[left] PASSED [ 67%] 1719s tests/test_xmos_calendar.py::TestXMOSCalendar::test_calendar_bounds_properties[left] PASSED [ 67%] 1719s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minute_methods[left] PASSED [ 67%] 1719s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minutes[left] PASSED [ 67%] 1719s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_trading_minute[left] PASSED [ 67%] 1719s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_break_minute[left] PASSED [ 67%] 1719s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_on_minute[left] PASSED [ 67%] 1720s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_at_time[left] PASSED [ 67%] 1720s tests/test_xmos_calendar.py::TestXMOSCalendar::test_prev_next_minute[left] PASSED [ 67%] 1720s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[left-previous] PASSED [ 67%] 1720s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 67%] 1720s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[both-previous] PASSED [ 67%] 1720s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 67%] 1720s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[right-previous] PASSED [ 67%] 1720s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 67%] 1720s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[right-next] PASSED [ 67%] 1720s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[right-next] PASSED [ 67%] 1720s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_properties[right] PASSED [ 67%] 1721s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes[right] PASSED [ 67%] 1721s tests/test_xmos_calendar.py::TestXMOSCalendar::test_calendar_bounds_properties[right] PASSED [ 67%] 1721s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minute_methods[right] PASSED [ 67%] 1721s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minutes[right] PASSED [ 67%] 1721s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_trading_minute[right] PASSED [ 67%] 1721s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_break_minute[right] PASSED [ 67%] 1721s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_on_minute[right] PASSED [ 67%] 1721s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_at_time[right] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_prev_next_minute[right] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[right-none] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[right-none] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[left-none] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[left-none] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[both-none] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[both-none] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[neither-none] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[neither-previous] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[neither-next] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_properties[neither] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes[neither] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_calendar_bounds_properties[neither] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minute_methods[neither] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minutes[neither] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_trading_minute[neither] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_break_minute[neither] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_on_minute[neither] PASSED [ 67%] 1722s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_at_time[neither] PASSED [ 67%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_prev_next_minute[neither] PASSED [ 67%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_past_session[neither] PASSED [ 67%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_future_session[neither] PASSED [ 67%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset[neither] PASSED [ 67%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset_by_sessions[neither] PASSED [ 67%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_in_range[neither] PASSED [ 67%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_window[neither] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_distance[neither] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_to_sessions[neither] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes[neither] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes_count[neither] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_past_session[right] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_future_session[right] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset[right] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset_by_sessions[right] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_in_range[right] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_window[right] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_distance[right] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_to_sessions[right] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes[right] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes_count[right] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_past_session[left] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_future_session[left] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset[left] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset_by_sessions[left] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_in_range[left] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_window[left] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_distance[left] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_to_sessions[left] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes[left] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes_count[left] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_past_session[both] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_future_session[both] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset[both] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset_by_sessions[both] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_in_range[both] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_window[both] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_distance[both] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_to_sessions[both] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes[both] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes_count[both] PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_has_break PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_regular_holidays_sample PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_adhoc_holidays_sample PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_non_holidays_sample PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_late_opens_sample PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_early_closes_sample PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_early_closes_sample_time PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_early_closes_weekdays PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_early_closes_weekdays_time PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_non_early_closes_sample PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_non_early_closes_sample_time PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_late_opens PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_early_closes PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_open_close_break_start_end PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_has_break PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_next_prev_session PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_offset PASSED [ 68%] 1723s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_session PASSED [ 68%] 1724s tests/test_xmos_calendar.py::TestXMOSCalendar::test_date_to_session PASSED [ 68%] 1725s tests/test_xmos_calendar.py::TestXMOSCalendar::test_prev_next_open_close PASSED [ 68%] 1725s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_in_range PASSED [ 68%] 1725s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_has_break PASSED [ 68%] 1725s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_window PASSED [ 68%] 1725s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_distance PASSED [ 68%] 1725s tests/test_xmos_calendar.py::TestXMOSCalendar::test_trading_index PASSED [ 68%] 1725s tests/test_xmos_calendar.py::TestXMOSCalendar::test_deprecated PASSED [ 68%] 1725s tests/test_xnys_calendar.py::TestXNYSCalendar::test_testbase_integrity PASSED [ 68%] 1725s tests/test_xnys_calendar.py::TestXNYSCalendar::test_base_integrity PASSED [ 68%] 1726s tests/test_xnys_calendar.py::TestXNYSCalendar::test_calculated_against_csv PASSED [ 68%] 1727s tests/test_xnys_calendar.py::TestXNYSCalendar::test_start_end PASSED [ 68%] 1727s tests/test_xnys_calendar.py::TestXNYSCalendar::test_invalid_input PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_bound_min PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_bound_max PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sanity_check_session_lengths PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_adhoc_holidays_specification PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_daylight_savings PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_opens_closes_break_starts_ends PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_properties[both] PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes[both] PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_calendar_bounds_properties[both] PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minute_methods[both] PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minutes[both] PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_trading_minute[both] PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_break_minute[both] PASSED [ 68%] 1728s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_on_minute[both] PASSED [ 68%] 1729s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_at_time[both] PASSED [ 68%] 1729s tests/test_xnys_calendar.py::TestXNYSCalendar::test_prev_next_minute[both] PASSED [ 69%] 1729s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[both-next] PASSED [ 69%] 1729s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[both-next] PASSED [ 69%] 1729s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[left-next] PASSED [ 69%] 1729s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[left-next] PASSED [ 69%] 1729s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_properties[left] PASSED [ 69%] 1729s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes[left] PASSED [ 69%] 1729s tests/test_xnys_calendar.py::TestXNYSCalendar::test_calendar_bounds_properties[left] PASSED [ 69%] 1729s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minute_methods[left] PASSED [ 69%] 1729s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minutes[left] PASSED [ 69%] 1729s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_trading_minute[left] PASSED [ 69%] 1729s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_break_minute[left] PASSED [ 69%] 1729s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_on_minute[left] PASSED [ 69%] 1730s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_at_time[left] PASSED [ 69%] 1730s tests/test_xnys_calendar.py::TestXNYSCalendar::test_prev_next_minute[left] PASSED [ 69%] 1730s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[left-previous] PASSED [ 69%] 1730s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 69%] 1730s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[both-previous] PASSED [ 69%] 1730s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 69%] 1730s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[right-previous] PASSED [ 69%] 1730s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 69%] 1730s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[right-next] PASSED [ 69%] 1730s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[right-next] PASSED [ 69%] 1730s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_properties[right] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes[right] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_calendar_bounds_properties[right] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minute_methods[right] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minutes[right] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_trading_minute[right] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_break_minute[right] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_on_minute[right] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_at_time[right] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_prev_next_minute[right] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[right-none] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[right-none] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[left-none] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[left-none] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[both-none] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[both-none] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[neither-none] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[neither-previous] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[neither-next] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 69%] 1731s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_properties[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_calendar_bounds_properties[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minute_methods[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minutes[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_trading_minute[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_break_minute[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_on_minute[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_at_time[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_prev_next_minute[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_past_session[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_future_session[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset_by_sessions[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_in_range[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_window[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_distance[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_to_sessions[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes_count[neither] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_past_session[right] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_future_session[right] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset[right] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset_by_sessions[right] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_in_range[right] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_window[right] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_distance[right] PASSED [ 69%] 1732s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_to_sessions[right] PASSED [ 69%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes[right] PASSED [ 69%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes_count[right] PASSED [ 69%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_past_session[left] PASSED [ 69%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_future_session[left] PASSED [ 69%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset[left] PASSED [ 69%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset_by_sessions[left] PASSED [ 69%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_in_range[left] PASSED [ 69%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_window[left] PASSED [ 69%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_distance[left] PASSED [ 69%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_to_sessions[left] PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes[left] PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes_count[left] PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_past_session[both] PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_future_session[both] PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset[both] PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset_by_sessions[both] PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_in_range[both] PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_window[both] PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_distance[both] PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_to_sessions[both] PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes[both] PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes_count[both] PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_has_break PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_regular_holidays_sample PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_adhoc_holidays_sample PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_non_holidays_sample PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_late_opens_sample PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_early_closes_sample PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_early_closes_sample_time PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_early_closes_weekdays PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_early_closes_weekdays_time PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_non_early_closes_sample PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_non_early_closes_sample_time PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_late_opens PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_early_closes PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_open_close_break_start_end PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_has_break PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_next_prev_session PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_offset PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_session PASSED [ 70%] 1733s tests/test_xnys_calendar.py::TestXNYSCalendar::test_date_to_session PASSED [ 70%] 1734s tests/test_xnys_calendar.py::TestXNYSCalendar::test_prev_next_open_close PASSED [ 70%] 1734s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_in_range PASSED [ 70%] 1734s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_has_break PASSED [ 70%] 1734s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_window PASSED [ 70%] 1734s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_distance PASSED [ 70%] 1734s tests/test_xnys_calendar.py::TestXNYSCalendar::test_trading_index PASSED [ 70%] 1734s tests/test_xnys_calendar.py::TestXNYSCalendar::test_deprecated PASSED [ 70%] 1734s tests/test_xnze_calendar.py::TestXNZECalendar::test_testbase_integrity PASSED [ 70%] 1734s tests/test_xnze_calendar.py::TestXNZECalendar::test_base_integrity PASSED [ 70%] 1736s tests/test_xnze_calendar.py::TestXNZECalendar::test_calculated_against_csv PASSED [ 70%] 1736s tests/test_xnze_calendar.py::TestXNZECalendar::test_start_end PASSED [ 70%] 1736s tests/test_xnze_calendar.py::TestXNZECalendar::test_invalid_input PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_bound_min PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_bound_max PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_sanity_check_session_lengths PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_adhoc_holidays_specification PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_daylight_savings PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_opens_closes_break_starts_ends PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_properties[both] PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes[both] PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_calendar_bounds_properties[both] PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minute_methods[both] PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minutes[both] PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_trading_minute[both] PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_break_minute[both] PASSED [ 70%] 1737s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_on_minute[both] PASSED [ 70%] 1738s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_at_time[both] PASSED [ 70%] 1738s tests/test_xnze_calendar.py::TestXNZECalendar::test_prev_next_minute[both] PASSED [ 70%] 1738s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[both-next] PASSED [ 70%] 1738s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[both-next] PASSED [ 70%] 1738s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[left-next] PASSED [ 70%] 1738s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[left-next] PASSED [ 70%] 1738s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_properties[left] PASSED [ 70%] 1738s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes[left] PASSED [ 70%] 1738s tests/test_xnze_calendar.py::TestXNZECalendar::test_calendar_bounds_properties[left] PASSED [ 70%] 1738s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minute_methods[left] PASSED [ 70%] 1738s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minutes[left] PASSED [ 70%] 1738s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_trading_minute[left] PASSED [ 70%] 1738s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_break_minute[left] PASSED [ 70%] 1738s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_on_minute[left] PASSED [ 70%] 1739s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_at_time[left] PASSED [ 70%] 1739s tests/test_xnze_calendar.py::TestXNZECalendar::test_prev_next_minute[left] PASSED [ 70%] 1739s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[left-previous] PASSED [ 70%] 1739s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 70%] 1739s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[both-previous] PASSED [ 70%] 1739s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 70%] 1739s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[right-previous] PASSED [ 70%] 1739s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 70%] 1739s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[right-next] PASSED [ 70%] 1739s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[right-next] PASSED [ 71%] 1739s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_properties[right] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes[right] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_calendar_bounds_properties[right] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minute_methods[right] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minutes[right] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_trading_minute[right] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_break_minute[right] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_on_minute[right] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_at_time[right] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_prev_next_minute[right] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[right-none] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[right-none] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[left-none] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[left-none] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[both-none] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[both-none] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[neither-none] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[neither-previous] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[neither-next] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 71%] 1740s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_properties[neither] PASSED [ 71%] 1741s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes[neither] PASSED [ 71%] 1741s tests/test_xnze_calendar.py::TestXNZECalendar::test_calendar_bounds_properties[neither] PASSED [ 71%] 1741s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minute_methods[neither] PASSED [ 71%] 1741s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minutes[neither] PASSED [ 71%] 1741s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_trading_minute[neither] PASSED [ 71%] 1741s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_break_minute[neither] PASSED [ 71%] 1741s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_on_minute[neither] PASSED [ 71%] 1741s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_at_time[neither] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_prev_next_minute[neither] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_past_session[neither] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_future_session[neither] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset[neither] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset_by_sessions[neither] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_in_range[neither] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_window[neither] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_distance[neither] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_to_sessions[neither] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes[neither] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes_count[neither] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_past_session[right] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_future_session[right] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset[right] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset_by_sessions[right] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_in_range[right] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_window[right] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_distance[right] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_to_sessions[right] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes[right] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes_count[right] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_past_session[left] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_future_session[left] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset[left] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset_by_sessions[left] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_in_range[left] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_window[left] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_distance[left] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_to_sessions[left] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes[left] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes_count[left] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_past_session[both] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_future_session[both] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset[both] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset_by_sessions[both] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_in_range[both] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_window[both] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_distance[both] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_to_sessions[both] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes[both] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes_count[both] PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_has_break PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_regular_holidays_sample PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_adhoc_holidays_sample PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_non_holidays_sample PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_late_opens_sample PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_early_closes_sample PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_early_closes_sample_time PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_early_closes_weekdays PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_early_closes_weekdays_time PASSED [ 71%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_non_early_closes_sample PASSED [ 72%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_non_early_closes_sample_time PASSED [ 72%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_late_opens PASSED [ 72%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_early_closes PASSED [ 72%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_open_close_break_start_end PASSED [ 72%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_has_break PASSED [ 72%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_next_prev_session PASSED [ 72%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_offset PASSED [ 72%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_session PASSED [ 72%] 1742s tests/test_xnze_calendar.py::TestXNZECalendar::test_date_to_session PASSED [ 72%] 1743s tests/test_xnze_calendar.py::TestXNZECalendar::test_prev_next_open_close PASSED [ 72%] 1743s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_in_range PASSED [ 72%] 1743s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_has_break PASSED [ 72%] 1743s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_window PASSED [ 72%] 1743s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_distance PASSED [ 72%] 1743s tests/test_xnze_calendar.py::TestXNZECalendar::test_trading_index PASSED [ 72%] 1743s tests/test_xnze_calendar.py::TestXNZECalendar::test_deprecated PASSED [ 72%] 1744s tests/test_xosl_calendar.py::TestXOSLCalendar::test_testbase_integrity PASSED [ 72%] 1744s tests/test_xosl_calendar.py::TestXOSLCalendar::test_base_integrity PASSED [ 72%] 1745s tests/test_xosl_calendar.py::TestXOSLCalendar::test_calculated_against_csv PASSED [ 72%] 1745s tests/test_xosl_calendar.py::TestXOSLCalendar::test_start_end PASSED [ 72%] 1745s tests/test_xosl_calendar.py::TestXOSLCalendar::test_invalid_input PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_bound_min PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_bound_max PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sanity_check_session_lengths PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_adhoc_holidays_specification PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_daylight_savings PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_opens_closes_break_starts_ends PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_properties[both] PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes[both] PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_calendar_bounds_properties[both] PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minute_methods[both] PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minutes[both] PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_trading_minute[both] PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_break_minute[both] PASSED [ 72%] 1746s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_on_minute[both] PASSED [ 72%] 1747s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_at_time[both] PASSED [ 72%] 1747s tests/test_xosl_calendar.py::TestXOSLCalendar::test_prev_next_minute[both] PASSED [ 72%] 1747s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[both-next] PASSED [ 72%] 1747s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[both-next] PASSED [ 72%] 1747s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[left-next] PASSED [ 72%] 1747s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[left-next] PASSED [ 72%] 1747s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_properties[left] PASSED [ 72%] 1747s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes[left] PASSED [ 72%] 1747s tests/test_xosl_calendar.py::TestXOSLCalendar::test_calendar_bounds_properties[left] PASSED [ 72%] 1747s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minute_methods[left] PASSED [ 72%] 1747s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minutes[left] PASSED [ 72%] 1747s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_trading_minute[left] PASSED [ 72%] 1747s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_break_minute[left] PASSED [ 72%] 1747s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_on_minute[left] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_at_time[left] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_prev_next_minute[left] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[left-previous] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[both-previous] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[right-previous] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[right-next] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[right-next] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_properties[right] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes[right] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_calendar_bounds_properties[right] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minute_methods[right] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minutes[right] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_trading_minute[right] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_break_minute[right] PASSED [ 72%] 1748s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_on_minute[right] PASSED [ 72%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_at_time[right] PASSED [ 72%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_prev_next_minute[right] PASSED [ 72%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[right-none] PASSED [ 72%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[right-none] PASSED [ 72%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[left-none] PASSED [ 72%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[left-none] PASSED [ 72%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[both-none] PASSED [ 72%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[both-none] PASSED [ 72%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[neither-none] PASSED [ 72%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 72%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[neither-previous] PASSED [ 72%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 72%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[neither-next] PASSED [ 73%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 73%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_properties[neither] PASSED [ 73%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes[neither] PASSED [ 73%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_calendar_bounds_properties[neither] PASSED [ 73%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minute_methods[neither] PASSED [ 73%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minutes[neither] PASSED [ 73%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_trading_minute[neither] PASSED [ 73%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_break_minute[neither] PASSED [ 73%] 1749s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_on_minute[neither] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_at_time[neither] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_prev_next_minute[neither] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_past_session[neither] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_future_session[neither] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset[neither] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset_by_sessions[neither] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_in_range[neither] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_window[neither] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_distance[neither] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_to_sessions[neither] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes[neither] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes_count[neither] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_past_session[right] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_future_session[right] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset[right] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset_by_sessions[right] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_in_range[right] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_window[right] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_distance[right] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_to_sessions[right] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes[right] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes_count[right] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_past_session[left] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_future_session[left] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset[left] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset_by_sessions[left] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_in_range[left] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_window[left] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_distance[left] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_to_sessions[left] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes[left] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes_count[left] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_past_session[both] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_future_session[both] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset[both] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset_by_sessions[both] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_in_range[both] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_window[both] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_distance[both] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_to_sessions[both] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes[both] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes_count[both] PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_has_break PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_regular_holidays_sample PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_adhoc_holidays_sample PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_non_holidays_sample PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_late_opens_sample PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_early_closes_sample PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_early_closes_sample_time PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_early_closes_weekdays PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_early_closes_weekdays_time PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_non_early_closes_sample PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_non_early_closes_sample_time PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_late_opens PASSED [ 73%] 1750s tests/test_xosl_calendar.py::TestXOSLCalendar::test_early_closes PASSED [ 73%] 1751s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_open_close_break_start_end PASSED [ 73%] 1751s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_has_break PASSED [ 73%] 1751s tests/test_xosl_calendar.py::TestXOSLCalendar::test_next_prev_session PASSED [ 73%] 1751s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_offset PASSED [ 73%] 1751s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_session PASSED [ 73%] 1751s tests/test_xosl_calendar.py::TestXOSLCalendar::test_date_to_session PASSED [ 73%] 1752s tests/test_xosl_calendar.py::TestXOSLCalendar::test_prev_next_open_close PASSED [ 73%] 1752s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_in_range PASSED [ 73%] 1752s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_has_break PASSED [ 73%] 1752s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_window PASSED [ 73%] 1752s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_distance PASSED [ 73%] 1752s tests/test_xosl_calendar.py::TestXOSLCalendar::test_trading_index PASSED [ 73%] 1752s tests/test_xosl_calendar.py::TestXOSLCalendar::test_deprecated PASSED [ 73%] 1752s tests/test_xpar_calendar.py::TestXPARCalendar::test_testbase_integrity PASSED [ 73%] 1752s tests/test_xpar_calendar.py::TestXPARCalendar::test_base_integrity PASSED [ 73%] 1753s tests/test_xpar_calendar.py::TestXPARCalendar::test_calculated_against_csv PASSED [ 73%] 1753s tests/test_xpar_calendar.py::TestXPARCalendar::test_start_end PASSED [ 73%] 1753s tests/test_xpar_calendar.py::TestXPARCalendar::test_invalid_input PASSED [ 74%] 1754s tests/test_xpar_calendar.py::TestXPARCalendar::test_bound_min PASSED [ 74%] 1754s tests/test_xpar_calendar.py::TestXPARCalendar::test_bound_max PASSED [ 74%] 1754s tests/test_xpar_calendar.py::TestXPARCalendar::test_sanity_check_session_lengths PASSED [ 74%] 1754s tests/test_xpar_calendar.py::TestXPARCalendar::test_adhoc_holidays_specification PASSED [ 74%] 1754s tests/test_xpar_calendar.py::TestXPARCalendar::test_daylight_savings PASSED [ 74%] 1754s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions PASSED [ 74%] 1754s tests/test_xpar_calendar.py::TestXPARCalendar::test_opens_closes_break_starts_ends PASSED [ 74%] 1754s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_properties[both] PASSED [ 74%] 1754s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes[both] PASSED [ 74%] 1754s tests/test_xpar_calendar.py::TestXPARCalendar::test_calendar_bounds_properties[both] PASSED [ 74%] 1754s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minute_methods[both] PASSED [ 74%] 1754s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minutes[both] PASSED [ 74%] 1754s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_trading_minute[both] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_break_minute[both] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_on_minute[both] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_at_time[both] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_prev_next_minute[both] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[both-next] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[both-next] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[left-next] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[left-next] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_properties[left] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes[left] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_calendar_bounds_properties[left] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minute_methods[left] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minutes[left] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_trading_minute[left] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_break_minute[left] PASSED [ 74%] 1755s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_on_minute[left] PASSED [ 74%] 1756s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_at_time[left] PASSED [ 74%] 1756s tests/test_xpar_calendar.py::TestXPARCalendar::test_prev_next_minute[left] PASSED [ 74%] 1756s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[left-previous] PASSED [ 74%] 1756s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 74%] 1756s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[both-previous] PASSED [ 74%] 1756s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 74%] 1756s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[right-previous] PASSED [ 74%] 1756s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 74%] 1756s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[right-next] PASSED [ 74%] 1756s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[right-next] PASSED [ 74%] 1756s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_properties[right] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes[right] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_calendar_bounds_properties[right] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minute_methods[right] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minutes[right] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_trading_minute[right] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_break_minute[right] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_on_minute[right] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_at_time[right] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_prev_next_minute[right] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[right-none] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[right-none] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[left-none] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[left-none] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[both-none] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[both-none] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[neither-none] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[neither-previous] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[neither-next] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 74%] 1757s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_properties[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_calendar_bounds_properties[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minute_methods[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minutes[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_trading_minute[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_break_minute[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_on_minute[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_at_time[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_prev_next_minute[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_past_session[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_future_session[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset_by_sessions[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_in_range[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_window[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_distance[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_to_sessions[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes_count[neither] PASSED [ 74%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_past_session[right] PASSED [ 75%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_future_session[right] PASSED [ 75%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset[right] PASSED [ 75%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset_by_sessions[right] PASSED [ 75%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_in_range[right] PASSED [ 75%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_window[right] PASSED [ 75%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_distance[right] PASSED [ 75%] 1758s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_to_sessions[right] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes[right] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes_count[right] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_past_session[left] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_future_session[left] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset[left] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset_by_sessions[left] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_in_range[left] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_window[left] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_distance[left] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_to_sessions[left] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes[left] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes_count[left] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_past_session[both] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_future_session[both] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset[both] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset_by_sessions[both] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_in_range[both] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_window[both] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_distance[both] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_to_sessions[both] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes[both] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes_count[both] PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_has_break PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_regular_holidays_sample PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_adhoc_holidays_sample PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_non_holidays_sample PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_late_opens_sample PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_early_closes_sample PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_early_closes_sample_time PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_early_closes_weekdays PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_early_closes_weekdays_time PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_non_early_closes_sample PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_non_early_closes_sample_time PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_late_opens PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_early_closes PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_open_close_break_start_end PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_has_break PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_next_prev_session PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_offset PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_session PASSED [ 75%] 1759s tests/test_xpar_calendar.py::TestXPARCalendar::test_date_to_session PASSED [ 75%] 1760s tests/test_xpar_calendar.py::TestXPARCalendar::test_prev_next_open_close PASSED [ 75%] 1760s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_in_range PASSED [ 75%] 1760s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_has_break PASSED [ 75%] 1760s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_window PASSED [ 75%] 1760s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_distance PASSED [ 75%] 1760s tests/test_xpar_calendar.py::TestXPARCalendar::test_trading_index PASSED [ 75%] 1760s tests/test_xpar_calendar.py::TestXPARCalendar::test_deprecated PASSED [ 75%] 1760s tests/test_xphs_calendar.py::TestXPHSCalendar::test_testbase_integrity PASSED [ 75%] 1760s tests/test_xphs_calendar.py::TestXPHSCalendar::test_base_integrity PASSED [ 75%] 1762s tests/test_xphs_calendar.py::TestXPHSCalendar::test_calculated_against_csv PASSED [ 75%] 1762s tests/test_xphs_calendar.py::TestXPHSCalendar::test_start_end PASSED [ 75%] 1762s tests/test_xphs_calendar.py::TestXPHSCalendar::test_invalid_input PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_bound_min PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_bound_max PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sanity_check_session_lengths PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_adhoc_holidays_specification PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_daylight_savings PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_opens_closes_break_starts_ends PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_properties[both] PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes[both] PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_calendar_bounds_properties[both] PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minute_methods[both] PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minutes[both] PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_trading_minute[both] PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_break_minute[both] PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_on_minute[both] PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_at_time[both] PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_prev_next_minute[both] PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[both-next] PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[both-next] PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[left-next] PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[left-next] PASSED [ 75%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_properties[left] PASSED [ 76%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes[left] PASSED [ 76%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_calendar_bounds_properties[left] PASSED [ 76%] 1764s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minute_methods[left] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minutes[left] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_trading_minute[left] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_break_minute[left] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_on_minute[left] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_at_time[left] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_prev_next_minute[left] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[left-previous] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[both-previous] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[right-previous] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[right-next] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[right-next] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_properties[right] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes[right] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_calendar_bounds_properties[right] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minute_methods[right] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minutes[right] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_trading_minute[right] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_break_minute[right] PASSED [ 76%] 1765s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_on_minute[right] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_at_time[right] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_prev_next_minute[right] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[right-none] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[right-none] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[left-none] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[left-none] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[both-none] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[both-none] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[neither-none] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[neither-previous] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[neither-next] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_properties[neither] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes[neither] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_calendar_bounds_properties[neither] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minute_methods[neither] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minutes[neither] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_trading_minute[neither] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_break_minute[neither] PASSED [ 76%] 1766s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_on_minute[neither] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_at_time[neither] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_prev_next_minute[neither] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_past_session[neither] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_future_session[neither] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset[neither] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset_by_sessions[neither] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_in_range[neither] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_window[neither] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_distance[neither] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_to_sessions[neither] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes[neither] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes_count[neither] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_past_session[right] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_future_session[right] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset[right] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset_by_sessions[right] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_in_range[right] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_window[right] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_distance[right] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_to_sessions[right] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes[right] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes_count[right] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_past_session[left] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_future_session[left] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset[left] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset_by_sessions[left] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_in_range[left] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_window[left] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_distance[left] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_to_sessions[left] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes[left] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes_count[left] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_past_session[both] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_future_session[both] PASSED [ 76%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset[both] PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset_by_sessions[both] PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_in_range[both] PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_window[both] PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_distance[both] PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_to_sessions[both] PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes[both] PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes_count[both] PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_has_break PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_regular_holidays_sample PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_adhoc_holidays_sample PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_non_holidays_sample PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_late_opens_sample PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_early_closes_sample PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_early_closes_sample_time PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_early_closes_weekdays PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_early_closes_weekdays_time PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_non_early_closes_sample PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_non_early_closes_sample_time PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_late_opens PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_early_closes PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_open_close_break_start_end PASSED [ 77%] 1767s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_has_break PASSED [ 77%] 1768s tests/test_xphs_calendar.py::TestXPHSCalendar::test_next_prev_session PASSED [ 77%] 1768s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_offset PASSED [ 77%] 1768s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_session PASSED [ 77%] 1768s tests/test_xphs_calendar.py::TestXPHSCalendar::test_date_to_session PASSED [ 77%] 1769s tests/test_xphs_calendar.py::TestXPHSCalendar::test_prev_next_open_close PASSED [ 77%] 1769s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_in_range PASSED [ 77%] 1769s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_has_break PASSED [ 77%] 1769s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_window PASSED [ 77%] 1769s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_distance PASSED [ 77%] 1769s tests/test_xphs_calendar.py::TestXPHSCalendar::test_trading_index PASSED [ 77%] 1769s tests/test_xphs_calendar.py::TestXPHSCalendar::test_deprecated PASSED [ 77%] 1769s tests/test_xpra_calendar.py::TestXPRACalendar::test_testbase_integrity PASSED [ 77%] 1769s tests/test_xpra_calendar.py::TestXPRACalendar::test_base_integrity PASSED [ 77%] 1770s tests/test_xpra_calendar.py::TestXPRACalendar::test_calculated_against_csv PASSED [ 77%] 1771s tests/test_xpra_calendar.py::TestXPRACalendar::test_start_end PASSED [ 77%] 1771s tests/test_xpra_calendar.py::TestXPRACalendar::test_invalid_input PASSED [ 77%] 1771s tests/test_xpra_calendar.py::TestXPRACalendar::test_bound_min PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_bound_max PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_sanity_check_session_lengths PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_adhoc_holidays_specification PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_daylight_savings PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_opens_closes_break_starts_ends PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_properties[both] PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes[both] PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_calendar_bounds_properties[both] PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minute_methods[both] PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minutes[both] PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_trading_minute[both] PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_break_minute[both] PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_on_minute[both] PASSED [ 77%] 1772s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_at_time[both] PASSED [ 77%] 1773s tests/test_xpra_calendar.py::TestXPRACalendar::test_prev_next_minute[both] PASSED [ 77%] 1773s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[both-next] PASSED [ 77%] 1773s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[both-next] PASSED [ 77%] 1773s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[left-next] PASSED [ 77%] 1773s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[left-next] PASSED [ 77%] 1773s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_properties[left] PASSED [ 77%] 1773s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes[left] PASSED [ 77%] 1773s tests/test_xpra_calendar.py::TestXPRACalendar::test_calendar_bounds_properties[left] PASSED [ 77%] 1773s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minute_methods[left] PASSED [ 77%] 1773s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minutes[left] PASSED [ 77%] 1773s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_trading_minute[left] PASSED [ 77%] 1773s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_break_minute[left] PASSED [ 77%] 1773s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_on_minute[left] PASSED [ 77%] 1773s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_at_time[left] PASSED [ 77%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_prev_next_minute[left] PASSED [ 77%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[left-previous] PASSED [ 77%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[left-previous] PASSED [ 77%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[both-previous] PASSED [ 77%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[both-previous] PASSED [ 77%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[right-previous] PASSED [ 77%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[right-previous] PASSED [ 77%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[right-next] PASSED [ 77%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[right-next] PASSED [ 77%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_properties[right] PASSED [ 77%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes[right] PASSED [ 77%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_calendar_bounds_properties[right] PASSED [ 77%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minute_methods[right] PASSED [ 77%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minutes[right] PASSED [ 78%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_trading_minute[right] PASSED [ 78%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_break_minute[right] PASSED [ 78%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_on_minute[right] PASSED [ 78%] 1774s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_at_time[right] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_prev_next_minute[right] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[right-none] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[right-none] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[left-none] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[left-none] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[both-none] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[both-none] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[neither-none] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[neither-none] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[neither-previous] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[neither-next] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[neither-next] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_properties[neither] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes[neither] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_calendar_bounds_properties[neither] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minute_methods[neither] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minutes[neither] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_trading_minute[neither] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_break_minute[neither] PASSED [ 78%] 1775s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_on_minute[neither] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_at_time[neither] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_prev_next_minute[neither] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_past_session[neither] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_future_session[neither] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset[neither] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset_by_sessions[neither] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_in_range[neither] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_window[neither] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_distance[neither] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_to_sessions[neither] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes[neither] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes_count[neither] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_past_session[right] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_future_session[right] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset[right] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset_by_sessions[right] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_in_range[right] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_window[right] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_distance[right] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_to_sessions[right] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes[right] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes_count[right] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_past_session[left] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_future_session[left] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset[left] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset_by_sessions[left] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_in_range[left] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_window[left] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_distance[left] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_to_sessions[left] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes[left] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes_count[left] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_past_session[both] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_future_session[both] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset[both] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset_by_sessions[both] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_in_range[both] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_window[both] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_distance[both] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_to_sessions[both] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes[both] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes_count[both] PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_has_break PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_regular_holidays_sample PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_adhoc_holidays_sample PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_non_holidays_sample PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_late_opens_sample PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_early_closes_sample PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_early_closes_sample_time PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_early_closes_weekdays PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_early_closes_weekdays_time PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_non_early_closes_sample PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_non_early_closes_sample_time PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_late_opens PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_early_closes PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_open_close_break_start_end PASSED [ 78%] 1776s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_has_break PASSED [ 79%] 1777s tests/test_xpra_calendar.py::TestXPRACalendar::test_next_prev_session PASSED [ 79%] 1777s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_offset PASSED [ 79%] 1777s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_session PASSED [ 79%] 1777s tests/test_xpra_calendar.py::TestXPRACalendar::test_date_to_session PASSED [ 79%] 1778s tests/test_xpra_calendar.py::TestXPRACalendar::test_prev_next_open_close PASSED [ 79%] 1778s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_in_range PASSED [ 79%] 1778s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_has_break PASSED [ 79%] 1778s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_window PASSED [ 79%] 1778s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_distance PASSED [ 79%] 1778s tests/test_xpra_calendar.py::TestXPRACalendar::test_trading_index PASSED [ 79%] 1778s tests/test_xpra_calendar.py::TestXPRACalendar::test_deprecated PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_testbase_integrity PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_base_integrity PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_calculated_against_csv PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_start_end PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_invalid_input PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_bound_min PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_bound_max PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_sanity_check_session_lengths PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_adhoc_holidays_specification PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_daylight_savings PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_opens_closes_break_starts_ends PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_properties[both] PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes[both] PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_calendar_bounds_properties[both] PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minute_methods[both] PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minutes[both] PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_trading_minute[both] PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_break_minute[both] PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_on_minute[both] PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_at_time[both] PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_prev_next_minute[both] PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[both-next] PASSED [ 79%] 1778s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[both-next] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[left-next] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[left-next] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_properties[left] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes[left] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_calendar_bounds_properties[left] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minute_methods[left] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minutes[left] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_trading_minute[left] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_break_minute[left] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_on_minute[left] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_at_time[left] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_prev_next_minute[left] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[left-previous] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[both-previous] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[right-previous] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[right-next] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[right-next] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_properties[right] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes[right] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_calendar_bounds_properties[right] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minute_methods[right] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minutes[right] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_trading_minute[right] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_break_minute[right] PASSED [ 79%] 1779s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_on_minute[right] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_at_time[right] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_prev_next_minute[right] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[right-none] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[right-none] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[left-none] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[left-none] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[both-none] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[both-none] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[neither-none] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[neither-previous] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[neither-next] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_properties[neither] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes[neither] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_calendar_bounds_properties[neither] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minute_methods[neither] PASSED [ 79%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minutes[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_trading_minute[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_break_minute[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_on_minute[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_at_time[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_prev_next_minute[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_past_session[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_future_session[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset_by_sessions[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_in_range[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_window[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_distance[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_to_sessions[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes_count[neither] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_past_session[right] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_future_session[right] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset[right] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset_by_sessions[right] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_in_range[right] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_window[right] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_distance[right] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_to_sessions[right] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes[right] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes_count[right] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_past_session[left] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_future_session[left] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset[left] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset_by_sessions[left] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_in_range[left] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_window[left] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_distance[left] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_to_sessions[left] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes[left] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes_count[left] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_past_session[both] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_future_session[both] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset[both] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset_by_sessions[both] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_in_range[both] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_window[both] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_distance[both] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_to_sessions[both] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes[both] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes_count[both] PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_has_break PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_regular_holidays_sample PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_adhoc_holidays_sample PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_non_holidays_sample PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_late_opens_sample PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_early_closes_sample PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_early_closes_sample_time PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_early_closes_weekdays PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_early_closes_weekdays_time PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_non_early_closes_sample PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_non_early_closes_sample_time PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_late_opens PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_early_closes PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_open_close_break_start_end PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_has_break PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_next_prev_session PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_offset PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_session PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_date_to_session PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_prev_next_open_close PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_in_range PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_has_break PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_window PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_distance PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_trading_index PASSED [ 80%] 1780s tests/test_xsau_calendar.py::TestXASUCalendar::test_deprecated PASSED [ 80%] 1780s tests/test_xses_calendar.py::TestXSESCalendar::test_testbase_integrity PASSED [ 80%] 1780s tests/test_xses_calendar.py::TestXSESCalendar::test_base_integrity PASSED [ 80%] 1781s tests/test_xses_calendar.py::TestXSESCalendar::test_calculated_against_csv PASSED [ 80%] 1781s tests/test_xses_calendar.py::TestXSESCalendar::test_start_end PASSED [ 80%] 1781s tests/test_xses_calendar.py::TestXSESCalendar::test_invalid_input PASSED [ 80%] 1781s tests/test_xses_calendar.py::TestXSESCalendar::test_bound_min PASSED [ 80%] 1781s tests/test_xses_calendar.py::TestXSESCalendar::test_bound_max PASSED [ 80%] 1781s tests/test_xses_calendar.py::TestXSESCalendar::test_sanity_check_session_lengths PASSED [ 80%] 1781s tests/test_xses_calendar.py::TestXSESCalendar::test_adhoc_holidays_specification PASSED [ 80%] 1781s tests/test_xses_calendar.py::TestXSESCalendar::test_daylight_savings PASSED [ 80%] 1781s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions PASSED [ 81%] 1781s tests/test_xses_calendar.py::TestXSESCalendar::test_opens_closes_break_starts_ends PASSED [ 81%] 1781s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_properties[both] PASSED [ 81%] 1782s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes[both] PASSED [ 81%] 1782s tests/test_xses_calendar.py::TestXSESCalendar::test_calendar_bounds_properties[both] PASSED [ 81%] 1782s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minute_methods[both] PASSED [ 81%] 1782s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minutes[both] PASSED [ 81%] 1782s tests/test_xses_calendar.py::TestXSESCalendar::test_is_trading_minute[both] PASSED [ 81%] 1782s tests/test_xses_calendar.py::TestXSESCalendar::test_is_break_minute[both] PASSED [ 81%] 1782s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_on_minute[both] PASSED [ 81%] 1782s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_at_time[both] PASSED [ 81%] 1783s tests/test_xses_calendar.py::TestXSESCalendar::test_prev_next_minute[both] PASSED [ 81%] 1783s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[both-next] PASSED [ 81%] 1783s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[both-next] PASSED [ 81%] 1783s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[left-next] PASSED [ 81%] 1783s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[left-next] PASSED [ 81%] 1783s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_properties[left] PASSED [ 81%] 1783s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes[left] PASSED [ 81%] 1783s tests/test_xses_calendar.py::TestXSESCalendar::test_calendar_bounds_properties[left] PASSED [ 81%] 1783s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minute_methods[left] PASSED [ 81%] 1783s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minutes[left] PASSED [ 81%] 1783s tests/test_xses_calendar.py::TestXSESCalendar::test_is_trading_minute[left] PASSED [ 81%] 1783s tests/test_xses_calendar.py::TestXSESCalendar::test_is_break_minute[left] PASSED [ 81%] 1783s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_on_minute[left] PASSED [ 81%] 1783s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_at_time[left] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_prev_next_minute[left] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[left-previous] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[both-previous] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[right-previous] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[right-next] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[right-next] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_properties[right] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes[right] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_calendar_bounds_properties[right] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minute_methods[right] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minutes[right] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_is_trading_minute[right] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_is_break_minute[right] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_on_minute[right] PASSED [ 81%] 1784s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_at_time[right] PASSED [ 81%] 1785s tests/test_xses_calendar.py::TestXSESCalendar::test_prev_next_minute[right] PASSED [ 81%] 1785s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[right-none] PASSED [ 81%] 1785s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[right-none] PASSED [ 81%] 1785s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[left-none] PASSED [ 81%] 1785s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[left-none] PASSED [ 81%] 1785s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[both-none] PASSED [ 81%] 1785s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[both-none] PASSED [ 81%] 1785s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[neither-none] PASSED [ 81%] 1785s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 81%] 1785s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[neither-previous] PASSED [ 81%] 1785s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 81%] 1785s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[neither-next] PASSED [ 81%] 1785s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 81%] 1785s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_properties[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_calendar_bounds_properties[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minute_methods[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minutes[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_is_trading_minute[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_is_break_minute[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_on_minute[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_at_time[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_prev_next_minute[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_past_session[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_future_session[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset_by_sessions[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_in_range[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_window[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_distance[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_to_sessions[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes_count[neither] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_past_session[right] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_future_session[right] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset[right] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset_by_sessions[right] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_in_range[right] PASSED [ 81%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_window[right] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_distance[right] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_to_sessions[right] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes[right] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes_count[right] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_past_session[left] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_future_session[left] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset[left] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset_by_sessions[left] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_in_range[left] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_window[left] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_distance[left] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_to_sessions[left] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes[left] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes_count[left] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_past_session[both] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_future_session[both] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset[both] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset_by_sessions[both] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_in_range[both] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_window[both] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_distance[both] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_to_sessions[both] PASSED [ 82%] 1786s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes[both] PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes_count[both] PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_has_break PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_regular_holidays_sample PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_adhoc_holidays_sample PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_non_holidays_sample PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_late_opens_sample PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_early_closes_sample PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_early_closes_sample_time PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_early_closes_weekdays PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_early_closes_weekdays_time PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_non_early_closes_sample PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_non_early_closes_sample_time PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_late_opens PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_early_closes PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_session_open_close_break_start_end PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_session_has_break PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_next_prev_session PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_session_offset PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_is_session PASSED [ 82%] 1787s tests/test_xses_calendar.py::TestXSESCalendar::test_date_to_session PASSED [ 82%] 1788s tests/test_xses_calendar.py::TestXSESCalendar::test_prev_next_open_close PASSED [ 82%] 1788s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_in_range PASSED [ 82%] 1788s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_has_break PASSED [ 82%] 1788s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_window PASSED [ 82%] 1788s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_distance PASSED [ 82%] 1788s tests/test_xses_calendar.py::TestXSESCalendar::test_trading_index PASSED [ 82%] 1788s tests/test_xses_calendar.py::TestXSESCalendar::test_deprecated PASSED [ 82%] 1788s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_testbase_integrity PASSED [ 82%] 1788s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_base_integrity PASSED [ 82%] 1790s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_calculated_against_csv PASSED [ 82%] 1790s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_start_end PASSED [ 82%] 1790s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_invalid_input PASSED [ 82%] 1791s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_bound_min PASSED [ 82%] 1791s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_bound_max PASSED [ 82%] 1791s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sanity_check_session_lengths PASSED [ 82%] 1791s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_adhoc_holidays_specification PASSED [ 82%] 1791s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_daylight_savings PASSED [ 82%] 1791s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions PASSED [ 82%] 1791s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_opens_closes_break_starts_ends PASSED [ 82%] 1791s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_properties[both] PASSED [ 82%] 1791s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes[both] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_calendar_bounds_properties[both] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minute_methods[both] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minutes[both] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_trading_minute[both] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_break_minute[both] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_on_minute[both] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_at_time[both] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_prev_next_minute[both] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[both-next] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[both-next] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[left-next] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[left-next] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_properties[left] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes[left] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_calendar_bounds_properties[left] PASSED [ 82%] 1792s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minute_methods[left] PASSED [ 82%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minutes[left] PASSED [ 82%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_trading_minute[left] PASSED [ 83%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_break_minute[left] PASSED [ 83%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_on_minute[left] PASSED [ 83%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_at_time[left] PASSED [ 83%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_prev_next_minute[left] PASSED [ 83%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[left-previous] PASSED [ 83%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 83%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[both-previous] PASSED [ 83%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 83%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[right-previous] PASSED [ 83%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 83%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[right-next] PASSED [ 83%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[right-next] PASSED [ 83%] 1793s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_properties[right] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes[right] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_calendar_bounds_properties[right] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minute_methods[right] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minutes[right] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_trading_minute[right] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_break_minute[right] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_on_minute[right] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_at_time[right] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_prev_next_minute[right] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[right-none] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[right-none] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[left-none] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[left-none] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[both-none] PASSED [ 83%] 1794s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[both-none] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[neither-none] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[neither-previous] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[neither-next] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_properties[neither] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes[neither] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_calendar_bounds_properties[neither] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minute_methods[neither] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minutes[neither] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_trading_minute[neither] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_break_minute[neither] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_on_minute[neither] PASSED [ 83%] 1795s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_at_time[neither] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_prev_next_minute[neither] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_past_session[neither] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_future_session[neither] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset[neither] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset_by_sessions[neither] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_in_range[neither] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_window[neither] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_distance[neither] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_to_sessions[neither] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes[neither] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes_count[neither] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_past_session[right] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_future_session[right] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset[right] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset_by_sessions[right] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_in_range[right] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_window[right] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_distance[right] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_to_sessions[right] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes[right] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes_count[right] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_past_session[left] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_future_session[left] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset[left] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset_by_sessions[left] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_in_range[left] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_window[left] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_distance[left] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_to_sessions[left] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes[left] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes_count[left] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_past_session[both] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_future_session[both] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset[both] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset_by_sessions[both] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_in_range[both] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_window[both] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_distance[both] PASSED [ 83%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_to_sessions[both] PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes[both] PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes_count[both] PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_has_break PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_regular_holidays_sample PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_adhoc_holidays_sample PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_non_holidays_sample PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_late_opens_sample PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_early_closes_sample PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_early_closes_sample_time PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_early_closes_weekdays PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_early_closes_weekdays_time PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_non_early_closes_sample PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_non_early_closes_sample_time PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_late_opens PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_early_closes PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_open_close_break_start_end PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_has_break PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_next_prev_session PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_offset PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_session PASSED [ 84%] 1796s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_date_to_session PASSED [ 84%] 1797s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_prev_next_open_close PASSED [ 84%] 1797s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_in_range PASSED [ 84%] 1797s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_has_break PASSED [ 84%] 1797s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_window PASSED [ 84%] 1797s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_distance PASSED [ 84%] 1798s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_trading_index PASSED [ 84%] 1798s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_deprecated PASSED [ 84%] 1798s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_additional_early_closes_sample PASSED [ 84%] 1798s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_close_time_change PASSED [ 84%] 1798s tests/test_xshg_calendar.py::TestXSHGCalendar::test_testbase_integrity PASSED [ 84%] 1798s tests/test_xshg_calendar.py::TestXSHGCalendar::test_base_integrity PASSED [ 84%] 1799s tests/test_xshg_calendar.py::TestXSHGCalendar::test_calculated_against_csv PASSED [ 84%] 1799s tests/test_xshg_calendar.py::TestXSHGCalendar::test_start_end PASSED [ 84%] 1799s tests/test_xshg_calendar.py::TestXSHGCalendar::test_invalid_input PASSED [ 84%] 1799s tests/test_xshg_calendar.py::TestXSHGCalendar::test_bound_min PASSED [ 84%] 1799s tests/test_xshg_calendar.py::TestXSHGCalendar::test_bound_max PASSED [ 84%] 1799s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sanity_check_session_lengths PASSED [ 84%] 1799s tests/test_xshg_calendar.py::TestXSHGCalendar::test_adhoc_holidays_specification PASSED [ 84%] 1799s tests/test_xshg_calendar.py::TestXSHGCalendar::test_daylight_savings PASSED [ 84%] 1799s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions PASSED [ 84%] 1799s tests/test_xshg_calendar.py::TestXSHGCalendar::test_opens_closes_break_starts_ends PASSED [ 84%] 1799s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_properties[both] PASSED [ 84%] 1800s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes[both] PASSED [ 84%] 1800s tests/test_xshg_calendar.py::TestXSHGCalendar::test_calendar_bounds_properties[both] PASSED [ 84%] 1800s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minute_methods[both] PASSED [ 84%] 1800s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minutes[both] PASSED [ 84%] 1800s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_trading_minute[both] PASSED [ 84%] 1800s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_break_minute[both] PASSED [ 84%] 1800s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_on_minute[both] PASSED [ 84%] 1800s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_at_time[both] PASSED [ 84%] 1801s tests/test_xshg_calendar.py::TestXSHGCalendar::test_prev_next_minute[both] PASSED [ 84%] 1801s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[both-next] PASSED [ 84%] 1801s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[both-next] PASSED [ 84%] 1801s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[left-next] PASSED [ 84%] 1801s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[left-next] PASSED [ 84%] 1801s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_properties[left] PASSED [ 84%] 1802s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes[left] PASSED [ 84%] 1802s tests/test_xshg_calendar.py::TestXSHGCalendar::test_calendar_bounds_properties[left] PASSED [ 84%] 1802s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minute_methods[left] PASSED [ 84%] 1802s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minutes[left] PASSED [ 84%] 1802s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_trading_minute[left] PASSED [ 84%] 1802s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_break_minute[left] PASSED [ 84%] 1802s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_on_minute[left] PASSED [ 84%] 1802s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_at_time[left] PASSED [ 84%] 1803s tests/test_xshg_calendar.py::TestXSHGCalendar::test_prev_next_minute[left] PASSED [ 84%] 1803s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[left-previous] PASSED [ 84%] 1803s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 84%] 1803s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[both-previous] PASSED [ 84%] 1803s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 84%] 1803s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[right-previous] PASSED [ 84%] 1803s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 84%] 1803s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[right-next] PASSED [ 84%] 1803s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[right-next] PASSED [ 84%] 1803s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_properties[right] PASSED [ 84%] 1804s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes[right] PASSED [ 84%] 1804s tests/test_xshg_calendar.py::TestXSHGCalendar::test_calendar_bounds_properties[right] PASSED [ 84%] 1804s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minute_methods[right] PASSED [ 84%] 1804s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minutes[right] PASSED [ 84%] 1804s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_trading_minute[right] PASSED [ 84%] 1804s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_break_minute[right] PASSED [ 84%] 1804s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_on_minute[right] PASSED [ 85%] 1804s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_at_time[right] PASSED [ 85%] 1805s tests/test_xshg_calendar.py::TestXSHGCalendar::test_prev_next_minute[right] PASSED [ 85%] 1805s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[right-none] PASSED [ 85%] 1805s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[right-none] PASSED [ 85%] 1805s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[left-none] PASSED [ 85%] 1805s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[left-none] PASSED [ 85%] 1805s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[both-none] PASSED [ 85%] 1805s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[both-none] PASSED [ 85%] 1805s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[neither-none] PASSED [ 85%] 1805s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 85%] 1805s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[neither-previous] PASSED [ 85%] 1805s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 85%] 1805s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[neither-next] PASSED [ 85%] 1805s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 85%] 1805s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_properties[neither] PASSED [ 85%] 1806s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes[neither] PASSED [ 85%] 1806s tests/test_xshg_calendar.py::TestXSHGCalendar::test_calendar_bounds_properties[neither] PASSED [ 85%] 1806s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minute_methods[neither] PASSED [ 85%] 1806s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minutes[neither] PASSED [ 85%] 1806s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_trading_minute[neither] PASSED [ 85%] 1806s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_break_minute[neither] PASSED [ 85%] 1806s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_on_minute[neither] PASSED [ 85%] 1806s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_at_time[neither] PASSED [ 85%] 1807s tests/test_xshg_calendar.py::TestXSHGCalendar::test_prev_next_minute[neither] PASSED [ 85%] 1807s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_past_session[neither] PASSED [ 85%] 1807s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_future_session[neither] PASSED [ 85%] 1807s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset[neither] PASSED [ 85%] 1807s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset_by_sessions[neither] PASSED [ 85%] 1807s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_in_range[neither] PASSED [ 85%] 1807s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_window[neither] PASSED [ 85%] 1807s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_distance[neither] PASSED [ 85%] 1807s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_to_sessions[neither] PASSED [ 85%] 1807s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes[neither] PASSED [ 85%] 1807s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes_count[neither] PASSED [ 85%] 1807s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_past_session[right] PASSED [ 85%] 1807s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_future_session[right] PASSED [ 85%] 1807s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset[right] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset_by_sessions[right] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_in_range[right] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_window[right] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_distance[right] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_to_sessions[right] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes[right] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes_count[right] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_past_session[left] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_future_session[left] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset[left] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset_by_sessions[left] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_in_range[left] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_window[left] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_distance[left] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_to_sessions[left] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes[left] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes_count[left] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_past_session[both] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_future_session[both] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset[both] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset_by_sessions[both] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_in_range[both] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_window[both] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_distance[both] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_to_sessions[both] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes[both] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes_count[both] PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_has_break PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_regular_holidays_sample PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_adhoc_holidays_sample PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_non_holidays_sample PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_late_opens_sample PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_early_closes_sample PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_early_closes_sample_time PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_early_closes_weekdays PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_early_closes_weekdays_time PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_non_early_closes_sample PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_non_early_closes_sample_time PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_late_opens PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_early_closes PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_open_close_break_start_end PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_has_break PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_next_prev_session PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_offset PASSED [ 85%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_session PASSED [ 86%] 1808s tests/test_xshg_calendar.py::TestXSHGCalendar::test_date_to_session PASSED [ 86%] 1809s tests/test_xshg_calendar.py::TestXSHGCalendar::test_prev_next_open_close PASSED [ 86%] 1809s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_in_range PASSED [ 86%] 1809s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_has_break PASSED [ 86%] 1809s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_window PASSED [ 86%] 1809s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_distance PASSED [ 86%] 1810s tests/test_xshg_calendar.py::TestXSHGCalendar::test_trading_index PASSED [ 86%] 1810s tests/test_xshg_calendar.py::TestXSHGCalendar::test_deprecated PASSED [ 86%] 1810s tests/test_xsto_calendar.py::TestXSTOCalendar::test_testbase_integrity PASSED [ 86%] 1810s tests/test_xsto_calendar.py::TestXSTOCalendar::test_base_integrity PASSED [ 86%] 1811s tests/test_xsto_calendar.py::TestXSTOCalendar::test_calculated_against_csv PASSED [ 86%] 1811s tests/test_xsto_calendar.py::TestXSTOCalendar::test_start_end PASSED [ 86%] 1811s tests/test_xsto_calendar.py::TestXSTOCalendar::test_invalid_input PASSED [ 86%] 1812s tests/test_xsto_calendar.py::TestXSTOCalendar::test_bound_min PASSED [ 86%] 1812s tests/test_xsto_calendar.py::TestXSTOCalendar::test_bound_max PASSED [ 86%] 1812s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sanity_check_session_lengths PASSED [ 86%] 1812s tests/test_xsto_calendar.py::TestXSTOCalendar::test_adhoc_holidays_specification PASSED [ 86%] 1813s tests/test_xsto_calendar.py::TestXSTOCalendar::test_daylight_savings PASSED [ 86%] 1813s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions PASSED [ 86%] 1813s tests/test_xsto_calendar.py::TestXSTOCalendar::test_opens_closes_break_starts_ends PASSED [ 86%] 1813s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_properties[both] PASSED [ 86%] 1813s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes[both] PASSED [ 86%] 1813s tests/test_xsto_calendar.py::TestXSTOCalendar::test_calendar_bounds_properties[both] PASSED [ 86%] 1813s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minute_methods[both] PASSED [ 86%] 1813s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minutes[both] PASSED [ 86%] 1813s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_trading_minute[both] PASSED [ 86%] 1813s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_break_minute[both] PASSED [ 86%] 1813s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_on_minute[both] PASSED [ 86%] 1813s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_at_time[both] PASSED [ 86%] 1814s tests/test_xsto_calendar.py::TestXSTOCalendar::test_prev_next_minute[both] PASSED [ 86%] 1814s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[both-next] PASSED [ 86%] 1814s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[both-next] PASSED [ 86%] 1814s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[left-next] PASSED [ 86%] 1814s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[left-next] PASSED [ 86%] 1814s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_properties[left] PASSED [ 86%] 1814s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes[left] PASSED [ 86%] 1814s tests/test_xsto_calendar.py::TestXSTOCalendar::test_calendar_bounds_properties[left] PASSED [ 86%] 1814s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minute_methods[left] PASSED [ 86%] 1814s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minutes[left] PASSED [ 86%] 1814s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_trading_minute[left] PASSED [ 86%] 1814s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_break_minute[left] PASSED [ 86%] 1814s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_on_minute[left] PASSED [ 86%] 1814s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_at_time[left] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_prev_next_minute[left] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[left-previous] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[both-previous] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[right-previous] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[right-next] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[right-next] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_properties[right] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes[right] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_calendar_bounds_properties[right] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minute_methods[right] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minutes[right] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_trading_minute[right] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_break_minute[right] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_on_minute[right] PASSED [ 86%] 1815s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_at_time[right] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_prev_next_minute[right] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[right-none] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[right-none] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[left-none] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[left-none] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[both-none] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[both-none] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[neither-none] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[neither-previous] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[neither-next] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_properties[neither] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes[neither] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_calendar_bounds_properties[neither] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minute_methods[neither] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minutes[neither] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_trading_minute[neither] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_break_minute[neither] PASSED [ 86%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_on_minute[neither] PASSED [ 87%] 1816s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_at_time[neither] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_prev_next_minute[neither] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_past_session[neither] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_future_session[neither] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset[neither] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset_by_sessions[neither] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_in_range[neither] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_window[neither] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_distance[neither] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_to_sessions[neither] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes[neither] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes_count[neither] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_past_session[right] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_future_session[right] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset[right] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset_by_sessions[right] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_in_range[right] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_window[right] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_distance[right] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_to_sessions[right] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes[right] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes_count[right] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_past_session[left] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_future_session[left] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset[left] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset_by_sessions[left] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_in_range[left] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_window[left] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_distance[left] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_to_sessions[left] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes[left] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes_count[left] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_past_session[both] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_future_session[both] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset[both] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset_by_sessions[both] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_in_range[both] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_window[both] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_distance[both] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_to_sessions[both] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes[both] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes_count[both] PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_has_break PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_regular_holidays_sample PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_adhoc_holidays_sample PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_non_holidays_sample PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_late_opens_sample PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_early_closes_sample PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_early_closes_sample_time PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_early_closes_weekdays PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_early_closes_weekdays_time PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_non_early_closes_sample PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_non_early_closes_sample_time PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_late_opens PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_early_closes PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_open_close_break_start_end PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_has_break PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_next_prev_session PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_offset PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_session PASSED [ 87%] 1817s tests/test_xsto_calendar.py::TestXSTOCalendar::test_date_to_session PASSED [ 87%] 1818s tests/test_xsto_calendar.py::TestXSTOCalendar::test_prev_next_open_close PASSED [ 87%] 1818s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_in_range PASSED [ 87%] 1818s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_has_break PASSED [ 87%] 1818s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_window PASSED [ 87%] 1818s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_distance PASSED [ 87%] 1819s tests/test_xsto_calendar.py::TestXSTOCalendar::test_trading_index PASSED [ 87%] 1819s tests/test_xsto_calendar.py::TestXSTOCalendar::test_deprecated PASSED [ 87%] 1819s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_testbase_integrity PASSED [ 87%] 1819s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_base_integrity PASSED [ 87%] 1820s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_calculated_against_csv PASSED [ 87%] 1820s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_start_end PASSED [ 87%] 1820s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_invalid_input PASSED [ 87%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_bound_min PASSED [ 87%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_bound_max PASSED [ 87%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sanity_check_session_lengths PASSED [ 87%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_adhoc_holidays_specification PASSED [ 87%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_daylight_savings PASSED [ 87%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions PASSED [ 87%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_opens_closes_break_starts_ends PASSED [ 87%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_properties[both] PASSED [ 87%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes[both] PASSED [ 88%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_calendar_bounds_properties[both] PASSED [ 88%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minute_methods[both] PASSED [ 88%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minutes[both] PASSED [ 88%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_trading_minute[both] PASSED [ 88%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_break_minute[both] PASSED [ 88%] 1821s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_on_minute[both] PASSED [ 88%] 1822s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_at_time[both] PASSED [ 88%] 1822s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_prev_next_minute[both] PASSED [ 88%] 1822s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[both-next] PASSED [ 88%] 1822s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[both-next] PASSED [ 88%] 1822s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[left-next] PASSED [ 88%] 1822s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[left-next] PASSED [ 88%] 1822s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_properties[left] PASSED [ 88%] 1822s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes[left] PASSED [ 88%] 1822s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_calendar_bounds_properties[left] PASSED [ 88%] 1822s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minute_methods[left] PASSED [ 88%] 1822s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minutes[left] PASSED [ 88%] 1822s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_trading_minute[left] PASSED [ 88%] 1822s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_break_minute[left] PASSED [ 88%] 1822s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_on_minute[left] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_at_time[left] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_prev_next_minute[left] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[left-previous] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[both-previous] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[right-previous] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[right-next] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[right-next] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_properties[right] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes[right] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_calendar_bounds_properties[right] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minute_methods[right] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minutes[right] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_trading_minute[right] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_break_minute[right] PASSED [ 88%] 1823s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_on_minute[right] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_at_time[right] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_prev_next_minute[right] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[right-none] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[right-none] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[left-none] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[left-none] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[both-none] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[both-none] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[neither-none] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[neither-previous] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[neither-next] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_properties[neither] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes[neither] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_calendar_bounds_properties[neither] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minute_methods[neither] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minutes[neither] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_trading_minute[neither] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_break_minute[neither] PASSED [ 88%] 1824s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_on_minute[neither] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_at_time[neither] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_prev_next_minute[neither] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_past_session[neither] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_future_session[neither] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset[neither] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset_by_sessions[neither] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_in_range[neither] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_window[neither] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_distance[neither] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_to_sessions[neither] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes[neither] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes_count[neither] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_past_session[right] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_future_session[right] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset[right] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset_by_sessions[right] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_in_range[right] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_window[right] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_distance[right] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_to_sessions[right] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes[right] PASSED [ 88%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes_count[right] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_past_session[left] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_future_session[left] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset[left] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset_by_sessions[left] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_in_range[left] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_window[left] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_distance[left] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_to_sessions[left] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes[left] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes_count[left] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_past_session[both] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_future_session[both] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset[both] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset_by_sessions[both] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_in_range[both] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_window[both] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_distance[both] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_to_sessions[both] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes[both] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes_count[both] PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_has_break PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_regular_holidays_sample PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_adhoc_holidays_sample PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_non_holidays_sample PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_late_opens_sample PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_early_closes_sample PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_early_closes_sample_time PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_early_closes_weekdays PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_early_closes_weekdays_time PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_non_early_closes_sample PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_non_early_closes_sample_time PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_late_opens PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_early_closes PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_open_close_break_start_end PASSED [ 89%] 1825s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_has_break PASSED [ 89%] 1826s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_next_prev_session PASSED [ 89%] 1826s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_offset PASSED [ 89%] 1826s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_session PASSED [ 89%] 1826s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_date_to_session PASSED [ 89%] 1827s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_prev_next_open_close PASSED [ 89%] 1827s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_in_range PASSED [ 89%] 1827s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_has_break PASSED [ 89%] 1827s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_window PASSED [ 89%] 1827s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_distance PASSED [ 89%] 1827s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_trading_index PASSED [ 89%] 1827s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_deprecated PASSED [ 89%] 1827s tests/test_xtae_calendar.py::TestXTAECalendar::test_testbase_integrity PASSED [ 89%] 1827s tests/test_xtae_calendar.py::TestXTAECalendar::test_base_integrity PASSED [ 89%] 1828s tests/test_xtae_calendar.py::TestXTAECalendar::test_calculated_against_csv PASSED [ 89%] 1829s tests/test_xtae_calendar.py::TestXTAECalendar::test_start_end PASSED [ 89%] 1829s tests/test_xtae_calendar.py::TestXTAECalendar::test_invalid_input PASSED [ 89%] 1830s tests/test_xtae_calendar.py::TestXTAECalendar::test_bound_min PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_bound_max PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_sanity_check_session_lengths PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_adhoc_holidays_specification PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_daylight_savings PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_opens_closes_break_starts_ends PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_properties[both] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes[both] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_calendar_bounds_properties[both] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minute_methods[both] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minutes[both] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_trading_minute[both] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_break_minute[both] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_on_minute[both] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_at_time[both] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_prev_next_minute[both] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[both-next] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[both-next] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[left-next] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[left-next] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_properties[left] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes[left] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_calendar_bounds_properties[left] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minute_methods[left] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minutes[left] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_trading_minute[left] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_break_minute[left] PASSED [ 89%] 1831s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_on_minute[left] PASSED [ 89%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_at_time[left] PASSED [ 89%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_prev_next_minute[left] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[left-previous] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[both-previous] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[right-previous] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[right-next] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[right-next] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_properties[right] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes[right] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_calendar_bounds_properties[right] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minute_methods[right] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minutes[right] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_trading_minute[right] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_break_minute[right] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_on_minute[right] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_at_time[right] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_prev_next_minute[right] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[right-none] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[right-none] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[left-none] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[left-none] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[both-none] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[both-none] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[neither-none] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[neither-previous] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[neither-next] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_properties[neither] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes[neither] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_calendar_bounds_properties[neither] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minute_methods[neither] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minutes[neither] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_trading_minute[neither] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_break_minute[neither] PASSED [ 90%] 1832s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_on_minute[neither] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_at_time[neither] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_prev_next_minute[neither] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_past_session[neither] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_future_session[neither] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset[neither] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset_by_sessions[neither] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_in_range[neither] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_window[neither] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_distance[neither] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_to_sessions[neither] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes[neither] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes_count[neither] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_past_session[right] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_future_session[right] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset[right] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset_by_sessions[right] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_in_range[right] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_window[right] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_distance[right] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_to_sessions[right] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes[right] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes_count[right] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_past_session[left] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_future_session[left] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset[left] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset_by_sessions[left] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_in_range[left] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_window[left] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_distance[left] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_to_sessions[left] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes[left] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes_count[left] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_past_session[both] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_future_session[both] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset[both] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset_by_sessions[both] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_in_range[both] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_window[both] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_distance[both] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_to_sessions[both] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes[both] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes_count[both] PASSED [ 90%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_has_break PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_regular_holidays_sample PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_adhoc_holidays_sample PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_non_holidays_sample PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_late_opens_sample PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_early_closes_sample PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_early_closes_sample_time PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_early_closes_weekdays PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_early_closes_weekdays_time PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_non_early_closes_sample PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_non_early_closes_sample_time PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_late_opens PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_early_closes PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_open_close_break_start_end PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_has_break PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_next_prev_session PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_offset PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_session PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_date_to_session PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_prev_next_open_close PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_in_range PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_has_break PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_window PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_distance PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_trading_index PASSED [ 91%] 1833s tests/test_xtae_calendar.py::TestXTAECalendar::test_deprecated PASSED [ 91%] 1833s tests/test_xtai_calendar.py::TestXTAICalendar::test_testbase_integrity PASSED [ 91%] 1833s tests/test_xtai_calendar.py::TestXTAICalendar::test_base_integrity PASSED [ 91%] 1837s tests/test_xtai_calendar.py::TestXTAICalendar::test_calculated_against_csv PASSED [ 91%] 1838s tests/test_xtai_calendar.py::TestXTAICalendar::test_start_end PASSED [ 91%] 1838s tests/test_xtai_calendar.py::TestXTAICalendar::test_invalid_input PASSED [ 91%] 1838s tests/test_xtai_calendar.py::TestXTAICalendar::test_bound_min PASSED [ 91%] 1839s tests/test_xtai_calendar.py::TestXTAICalendar::test_bound_max PASSED [ 91%] 1839s tests/test_xtai_calendar.py::TestXTAICalendar::test_sanity_check_session_lengths PASSED [ 91%] 1839s tests/test_xtai_calendar.py::TestXTAICalendar::test_adhoc_holidays_specification PASSED [ 91%] 1839s tests/test_xtai_calendar.py::TestXTAICalendar::test_daylight_savings PASSED [ 91%] 1839s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions PASSED [ 91%] 1839s tests/test_xtai_calendar.py::TestXTAICalendar::test_opens_closes_break_starts_ends PASSED [ 91%] 1839s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_properties[both] PASSED [ 91%] 1840s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes[both] PASSED [ 91%] 1840s tests/test_xtai_calendar.py::TestXTAICalendar::test_calendar_bounds_properties[both] PASSED [ 91%] 1840s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minute_methods[both] PASSED [ 91%] 1840s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minutes[both] PASSED [ 91%] 1840s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_trading_minute[both] PASSED [ 91%] 1840s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_break_minute[both] PASSED [ 91%] 1840s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_on_minute[both] PASSED [ 91%] 1840s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_at_time[both] PASSED [ 91%] 1842s tests/test_xtai_calendar.py::TestXTAICalendar::test_prev_next_minute[both] PASSED [ 91%] 1842s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[both-next] PASSED [ 91%] 1842s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[both-next] PASSED [ 91%] 1842s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[left-next] PASSED [ 91%] 1842s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[left-next] PASSED [ 91%] 1842s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_properties[left] PASSED [ 91%] 1843s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes[left] PASSED [ 91%] 1843s tests/test_xtai_calendar.py::TestXTAICalendar::test_calendar_bounds_properties[left] PASSED [ 91%] 1843s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minute_methods[left] PASSED [ 91%] 1843s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minutes[left] PASSED [ 91%] 1843s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_trading_minute[left] PASSED [ 91%] 1843s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_break_minute[left] PASSED [ 91%] 1843s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_on_minute[left] PASSED [ 91%] 1843s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_at_time[left] PASSED [ 91%] 1845s tests/test_xtai_calendar.py::TestXTAICalendar::test_prev_next_minute[left] PASSED [ 91%] 1845s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[left-previous] PASSED [ 91%] 1845s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[left-previous] PASSED [ 91%] 1845s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[both-previous] PASSED [ 91%] 1845s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[both-previous] PASSED [ 91%] 1846s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[right-previous] PASSED [ 91%] 1846s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[right-previous] PASSED [ 91%] 1846s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[right-next] PASSED [ 91%] 1846s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[right-next] PASSED [ 91%] 1846s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_properties[right] PASSED [ 91%] 1846s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes[right] PASSED [ 91%] 1846s tests/test_xtai_calendar.py::TestXTAICalendar::test_calendar_bounds_properties[right] PASSED [ 91%] 1846s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minute_methods[right] PASSED [ 91%] 1846s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minutes[right] PASSED [ 91%] 1846s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_trading_minute[right] PASSED [ 91%] 1846s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_break_minute[right] PASSED [ 91%] 1846s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_on_minute[right] PASSED [ 91%] 1846s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_at_time[right] PASSED [ 91%] 1848s tests/test_xtai_calendar.py::TestXTAICalendar::test_prev_next_minute[right] PASSED [ 91%] 1848s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[right-none] PASSED [ 91%] 1848s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[right-none] PASSED [ 91%] 1848s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[left-none] PASSED [ 92%] 1848s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[left-none] PASSED [ 92%] 1848s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[both-none] PASSED [ 92%] 1848s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[both-none] PASSED [ 92%] 1849s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[neither-none] PASSED [ 92%] 1849s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[neither-none] PASSED [ 92%] 1849s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[neither-previous] PASSED [ 92%] 1849s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 92%] 1849s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[neither-next] PASSED [ 92%] 1849s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[neither-next] PASSED [ 92%] 1849s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_properties[neither] PASSED [ 92%] 1849s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes[neither] PASSED [ 92%] 1849s tests/test_xtai_calendar.py::TestXTAICalendar::test_calendar_bounds_properties[neither] PASSED [ 92%] 1849s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minute_methods[neither] PASSED [ 92%] 1850s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minutes[neither] PASSED [ 92%] 1850s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_trading_minute[neither] PASSED [ 92%] 1850s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_break_minute[neither] PASSED [ 92%] 1850s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_on_minute[neither] PASSED [ 92%] 1850s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_at_time[neither] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_prev_next_minute[neither] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_past_session[neither] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_future_session[neither] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset[neither] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset_by_sessions[neither] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_in_range[neither] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_window[neither] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_distance[neither] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_to_sessions[neither] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes[neither] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes_count[neither] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_past_session[right] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_future_session[right] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset[right] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset_by_sessions[right] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_in_range[right] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_window[right] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_distance[right] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_to_sessions[right] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes[right] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes_count[right] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_past_session[left] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_future_session[left] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset[left] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset_by_sessions[left] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_in_range[left] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_window[left] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_distance[left] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_to_sessions[left] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes[left] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes_count[left] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_past_session[both] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_future_session[both] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset[both] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset_by_sessions[both] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_in_range[both] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_window[both] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_distance[both] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_to_sessions[both] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes[both] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes_count[both] PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_has_break PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_regular_holidays_sample PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_adhoc_holidays_sample PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_non_holidays_sample PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_late_opens_sample PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_early_closes_sample PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_early_closes_sample_time PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_early_closes_weekdays PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_early_closes_weekdays_time PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_non_early_closes_sample PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_non_early_closes_sample_time PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_late_opens PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_early_closes PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_open_close_break_start_end PASSED [ 92%] 1852s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_has_break PASSED [ 92%] 1853s tests/test_xtai_calendar.py::TestXTAICalendar::test_next_prev_session PASSED [ 92%] 1853s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_offset PASSED [ 92%] 1853s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_session PASSED [ 92%] 1853s tests/test_xtai_calendar.py::TestXTAICalendar::test_date_to_session PASSED [ 92%] 1857s tests/test_xtai_calendar.py::TestXTAICalendar::test_prev_next_open_close PASSED [ 92%] 1857s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_in_range PASSED [ 92%] 1857s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_has_break PASSED [ 92%] 1857s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_window PASSED [ 93%] 1857s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_distance PASSED [ 93%] 1857s tests/test_xtai_calendar.py::TestXTAICalendar::test_trading_index PASSED [ 93%] 1857s tests/test_xtai_calendar.py::TestXTAICalendar::test_deprecated PASSED [ 93%] 1857s tests/test_xtks_calendar.py::TestXTKSCalendar::test_testbase_integrity PASSED [ 93%] 1857s tests/test_xtks_calendar.py::TestXTKSCalendar::test_base_integrity PASSED [ 93%] 1859s tests/test_xtks_calendar.py::TestXTKSCalendar::test_calculated_against_csv PASSED [ 93%] 1859s tests/test_xtks_calendar.py::TestXTKSCalendar::test_start_end PASSED [ 93%] 1859s tests/test_xtks_calendar.py::TestXTKSCalendar::test_invalid_input PASSED [ 93%] 1859s tests/test_xtks_calendar.py::TestXTKSCalendar::test_bound_min PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_bound_max PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sanity_check_session_lengths PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_adhoc_holidays_specification PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_daylight_savings PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_opens_closes_break_starts_ends PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_properties[both] PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes[both] PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_calendar_bounds_properties[both] PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minute_methods[both] PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minutes[both] PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_trading_minute[both] PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_break_minute[both] PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_on_minute[both] PASSED [ 93%] 1860s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_at_time[both] PASSED [ 93%] 1861s tests/test_xtks_calendar.py::TestXTKSCalendar::test_prev_next_minute[both] PASSED [ 93%] 1861s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[both-next] PASSED [ 93%] 1861s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[both-next] PASSED [ 93%] 1861s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[left-next] PASSED [ 93%] 1861s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[left-next] PASSED [ 93%] 1861s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_properties[left] PASSED [ 93%] 1861s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes[left] PASSED [ 93%] 1861s tests/test_xtks_calendar.py::TestXTKSCalendar::test_calendar_bounds_properties[left] PASSED [ 93%] 1861s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minute_methods[left] PASSED [ 93%] 1862s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minutes[left] PASSED [ 93%] 1862s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_trading_minute[left] PASSED [ 93%] 1862s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_break_minute[left] PASSED [ 93%] 1862s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_on_minute[left] PASSED [ 93%] 1862s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_at_time[left] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_prev_next_minute[left] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[left-previous] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[both-previous] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[right-previous] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[right-next] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[right-next] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_properties[right] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes[right] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_calendar_bounds_properties[right] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minute_methods[right] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minutes[right] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_trading_minute[right] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_break_minute[right] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_on_minute[right] PASSED [ 93%] 1863s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_at_time[right] PASSED [ 93%] 1864s tests/test_xtks_calendar.py::TestXTKSCalendar::test_prev_next_minute[right] PASSED [ 93%] 1864s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[right-none] PASSED [ 93%] 1864s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[right-none] PASSED [ 93%] 1864s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[left-none] PASSED [ 93%] 1864s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[left-none] PASSED [ 93%] 1864s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[both-none] PASSED [ 93%] 1864s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[both-none] PASSED [ 93%] 1864s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[neither-none] PASSED [ 93%] 1864s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 93%] 1864s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[neither-previous] PASSED [ 93%] 1864s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 93%] 1864s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[neither-next] PASSED [ 93%] 1864s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 93%] 1864s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_properties[neither] PASSED [ 93%] 1865s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes[neither] PASSED [ 93%] 1865s tests/test_xtks_calendar.py::TestXTKSCalendar::test_calendar_bounds_properties[neither] PASSED [ 93%] 1865s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minute_methods[neither] PASSED [ 93%] 1865s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minutes[neither] PASSED [ 93%] 1865s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_trading_minute[neither] PASSED [ 93%] 1865s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_break_minute[neither] PASSED [ 93%] 1865s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_on_minute[neither] PASSED [ 93%] 1865s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_at_time[neither] PASSED [ 93%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_prev_next_minute[neither] PASSED [ 93%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_past_session[neither] PASSED [ 93%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_future_session[neither] PASSED [ 93%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset[neither] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset_by_sessions[neither] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_in_range[neither] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_window[neither] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_distance[neither] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_to_sessions[neither] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes[neither] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes_count[neither] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_past_session[right] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_future_session[right] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset[right] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset_by_sessions[right] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_in_range[right] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_window[right] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_distance[right] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_to_sessions[right] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes[right] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes_count[right] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_past_session[left] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_future_session[left] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset[left] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset_by_sessions[left] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_in_range[left] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_window[left] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_distance[left] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_to_sessions[left] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes[left] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes_count[left] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_past_session[both] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_future_session[both] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset[both] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset_by_sessions[both] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_in_range[both] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_window[both] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_distance[both] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_to_sessions[both] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes[both] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes_count[both] PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_has_break PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_regular_holidays_sample PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_adhoc_holidays_sample PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_non_holidays_sample PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_late_opens_sample PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_early_closes_sample PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_early_closes_sample_time PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_early_closes_weekdays PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_early_closes_weekdays_time PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_non_early_closes_sample PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_non_early_closes_sample_time PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_late_opens PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_early_closes PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_open_close_break_start_end PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_has_break PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_next_prev_session PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_offset PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_session PASSED [ 94%] 1866s tests/test_xtks_calendar.py::TestXTKSCalendar::test_date_to_session PASSED [ 94%] 1869s tests/test_xtks_calendar.py::TestXTKSCalendar::test_prev_next_open_close PASSED [ 94%] 1869s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_in_range PASSED [ 94%] 1869s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_has_break PASSED [ 94%] 1869s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_window PASSED [ 94%] 1869s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_distance PASSED [ 94%] 1869s tests/test_xtks_calendar.py::TestXTKSCalendar::test_trading_index PASSED [ 94%] 1869s tests/test_xtks_calendar.py::TestXTKSCalendar::test_deprecated PASSED [ 94%] 1869s tests/test_xtks_calendar.py::TestXTKSCalendar::test_golden_week_holidays PASSED [ 94%] 1869s tests/test_xtks_calendar.py::TestXTKSCalendar::test_emperors_birthday PASSED [ 94%] 1869s tests/test_xtse_calendar.py::TestXTSECalendar::test_testbase_integrity PASSED [ 94%] 1869s tests/test_xtse_calendar.py::TestXTSECalendar::test_base_integrity PASSED [ 94%] 1869s tests/test_xtse_calendar.py::TestXTSECalendar::test_calculated_against_csv PASSED [ 94%] 1869s tests/test_xtse_calendar.py::TestXTSECalendar::test_start_end PASSED [ 94%] 1869s tests/test_xtse_calendar.py::TestXTSECalendar::test_invalid_input PASSED [ 94%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_bound_min PASSED [ 94%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_bound_max PASSED [ 94%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_sanity_check_session_lengths PASSED [ 94%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_adhoc_holidays_specification PASSED [ 94%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_daylight_savings PASSED [ 94%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions PASSED [ 94%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_opens_closes_break_starts_ends PASSED [ 94%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_properties[both] PASSED [ 94%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes[both] PASSED [ 94%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_calendar_bounds_properties[both] PASSED [ 94%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minute_methods[both] PASSED [ 94%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minutes[both] PASSED [ 95%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_trading_minute[both] PASSED [ 95%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_break_minute[both] PASSED [ 95%] 1870s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_on_minute[both] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_at_time[both] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_prev_next_minute[both] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[both-next] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[both-next] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[left-next] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[left-next] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_properties[left] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes[left] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_calendar_bounds_properties[left] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minute_methods[left] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minutes[left] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_trading_minute[left] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_break_minute[left] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_on_minute[left] PASSED [ 95%] 1871s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_at_time[left] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_prev_next_minute[left] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[left-previous] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[both-previous] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[right-previous] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[right-next] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[right-next] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_properties[right] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes[right] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_calendar_bounds_properties[right] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minute_methods[right] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minutes[right] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_trading_minute[right] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_break_minute[right] PASSED [ 95%] 1872s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_on_minute[right] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_at_time[right] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_prev_next_minute[right] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[right-none] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[right-none] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[left-none] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[left-none] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[both-none] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[both-none] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[neither-none] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[neither-previous] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[neither-next] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_properties[neither] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes[neither] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_calendar_bounds_properties[neither] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minute_methods[neither] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minutes[neither] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_trading_minute[neither] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_break_minute[neither] PASSED [ 95%] 1873s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_on_minute[neither] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_at_time[neither] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_prev_next_minute[neither] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_past_session[neither] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_future_session[neither] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset[neither] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset_by_sessions[neither] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_in_range[neither] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_window[neither] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_distance[neither] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_to_sessions[neither] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes[neither] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes_count[neither] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_past_session[right] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_future_session[right] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset[right] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset_by_sessions[right] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_in_range[right] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_window[right] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_distance[right] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_to_sessions[right] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes[right] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes_count[right] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_past_session[left] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_future_session[left] PASSED [ 95%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset[left] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset_by_sessions[left] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_in_range[left] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_window[left] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_distance[left] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_to_sessions[left] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes[left] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes_count[left] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_past_session[both] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_future_session[both] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset[both] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset_by_sessions[both] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_in_range[both] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_window[both] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_distance[both] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_to_sessions[both] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes[both] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes_count[both] PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_has_break PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_regular_holidays_sample PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_adhoc_holidays_sample PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_non_holidays_sample PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_late_opens_sample PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_early_closes_sample PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_early_closes_sample_time PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_early_closes_weekdays PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_early_closes_weekdays_time PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_non_early_closes_sample PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_non_early_closes_sample_time PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_late_opens PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_early_closes PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_open_close_break_start_end PASSED [ 96%] 1874s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_has_break PASSED [ 96%] 1875s tests/test_xtse_calendar.py::TestXTSECalendar::test_next_prev_session PASSED [ 96%] 1875s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_offset PASSED [ 96%] 1875s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_session PASSED [ 96%] 1875s tests/test_xtse_calendar.py::TestXTSECalendar::test_date_to_session PASSED [ 96%] 1876s tests/test_xtse_calendar.py::TestXTSECalendar::test_prev_next_open_close PASSED [ 96%] 1876s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_in_range PASSED [ 96%] 1876s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_has_break PASSED [ 96%] 1876s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_window PASSED [ 96%] 1876s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_distance PASSED [ 96%] 1876s tests/test_xtse_calendar.py::TestXTSECalendar::test_trading_index PASSED [ 96%] 1876s tests/test_xtse_calendar.py::TestXTSECalendar::test_deprecated PASSED [ 96%] 1876s tests/test_xwar_calendar.py::TestXWARCalendar::test_testbase_integrity PASSED [ 96%] 1876s tests/test_xwar_calendar.py::TestXWARCalendar::test_base_integrity PASSED [ 96%] 1877s tests/test_xwar_calendar.py::TestXWARCalendar::test_calculated_against_csv PASSED [ 96%] 1877s tests/test_xwar_calendar.py::TestXWARCalendar::test_start_end PASSED [ 96%] 1878s tests/test_xwar_calendar.py::TestXWARCalendar::test_invalid_input PASSED [ 96%] 1878s tests/test_xwar_calendar.py::TestXWARCalendar::test_bound_min PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_bound_max PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_sanity_check_session_lengths PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_adhoc_holidays_specification PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_daylight_savings PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_opens_closes_break_starts_ends PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_properties[both] PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes[both] PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_calendar_bounds_properties[both] PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minute_methods[both] PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minutes[both] PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_trading_minute[both] PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_break_minute[both] PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_on_minute[both] PASSED [ 96%] 1879s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_at_time[both] PASSED [ 96%] 1880s tests/test_xwar_calendar.py::TestXWARCalendar::test_prev_next_minute[both] PASSED [ 96%] 1880s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[both-next] PASSED [ 96%] 1880s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[both-next] PASSED [ 96%] 1880s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[left-next] PASSED [ 96%] 1880s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[left-next] PASSED [ 96%] 1880s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_properties[left] PASSED [ 96%] 1880s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes[left] PASSED [ 96%] 1880s tests/test_xwar_calendar.py::TestXWARCalendar::test_calendar_bounds_properties[left] PASSED [ 96%] 1880s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minute_methods[left] PASSED [ 96%] 1880s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minutes[left] PASSED [ 96%] 1880s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_trading_minute[left] PASSED [ 96%] 1880s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_break_minute[left] PASSED [ 96%] 1880s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_on_minute[left] PASSED [ 96%] 1880s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_at_time[left] PASSED [ 96%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_prev_next_minute[left] PASSED [ 96%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[left-previous] PASSED [ 96%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 96%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[both-previous] PASSED [ 97%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 97%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[right-previous] PASSED [ 97%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 97%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[right-next] PASSED [ 97%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[right-next] PASSED [ 97%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_properties[right] PASSED [ 97%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes[right] PASSED [ 97%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_calendar_bounds_properties[right] PASSED [ 97%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minute_methods[right] PASSED [ 97%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minutes[right] PASSED [ 97%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_trading_minute[right] PASSED [ 97%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_break_minute[right] PASSED [ 97%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_on_minute[right] PASSED [ 97%] 1881s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_at_time[right] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_prev_next_minute[right] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[right-none] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[right-none] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[left-none] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[left-none] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[both-none] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[both-none] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[neither-none] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[neither-previous] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[neither-next] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_properties[neither] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes[neither] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_calendar_bounds_properties[neither] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minute_methods[neither] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minutes[neither] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_trading_minute[neither] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_break_minute[neither] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_on_minute[neither] PASSED [ 97%] 1882s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_at_time[neither] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_prev_next_minute[neither] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_past_session[neither] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_future_session[neither] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset[neither] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset_by_sessions[neither] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_in_range[neither] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_window[neither] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_distance[neither] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_to_sessions[neither] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes[neither] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes_count[neither] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_past_session[right] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_future_session[right] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset[right] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset_by_sessions[right] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_in_range[right] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_window[right] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_distance[right] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_to_sessions[right] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes[right] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes_count[right] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_past_session[left] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_future_session[left] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset[left] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset_by_sessions[left] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_in_range[left] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_window[left] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_distance[left] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_to_sessions[left] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes[left] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes_count[left] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_past_session[both] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_future_session[both] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset[both] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset_by_sessions[both] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_in_range[both] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_window[both] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_distance[both] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_to_sessions[both] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes[both] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes_count[both] PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_has_break PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_regular_holidays_sample PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_adhoc_holidays_sample PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_non_holidays_sample PASSED [ 97%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_late_opens_sample PASSED [ 98%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_early_closes_sample PASSED [ 98%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_early_closes_sample_time PASSED [ 98%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_early_closes_weekdays PASSED [ 98%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_early_closes_weekdays_time PASSED [ 98%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_non_early_closes_sample PASSED [ 98%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_non_early_closes_sample_time PASSED [ 98%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_late_opens PASSED [ 98%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_early_closes PASSED [ 98%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_open_close_break_start_end PASSED [ 98%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_has_break PASSED [ 98%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_next_prev_session PASSED [ 98%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_offset PASSED [ 98%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_session PASSED [ 98%] 1883s tests/test_xwar_calendar.py::TestXWARCalendar::test_date_to_session PASSED [ 98%] 1884s tests/test_xwar_calendar.py::TestXWARCalendar::test_prev_next_open_close PASSED [ 98%] 1884s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_in_range PASSED [ 98%] 1884s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_has_break PASSED [ 98%] 1884s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_window PASSED [ 98%] 1884s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_distance PASSED [ 98%] 1885s tests/test_xwar_calendar.py::TestXWARCalendar::test_trading_index PASSED [ 98%] 1885s tests/test_xwar_calendar.py::TestXWARCalendar::test_deprecated PASSED [ 98%] 1885s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_testbase_integrity PASSED [ 98%] 1885s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_base_integrity PASSED [ 98%] 1886s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_calculated_against_csv PASSED [ 98%] 1886s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_start_end PASSED [ 98%] 1886s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_invalid_input PASSED [ 98%] 1887s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_bound_min PASSED [ 98%] 1887s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_bound_max PASSED [ 98%] 1887s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sanity_check_session_lengths PASSED [ 98%] 1887s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_adhoc_holidays_specification PASSED [ 98%] 1887s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_daylight_savings PASSED [ 98%] 1887s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions PASSED [ 98%] 1887s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_opens_closes_break_starts_ends PASSED [ 98%] 1887s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_properties[both] PASSED [ 98%] 1888s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes[both] PASSED [ 98%] 1888s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_calendar_bounds_properties[both] PASSED [ 98%] 1888s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minute_methods[both] PASSED [ 98%] 1888s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minutes[both] PASSED [ 98%] 1888s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_trading_minute[both] PASSED [ 98%] 1888s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_break_minute[both] PASSED [ 98%] 1888s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_on_minute[both] PASSED [ 98%] 1888s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_at_time[both] PASSED [ 98%] 1889s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_prev_next_minute[both] PASSED [ 98%] 1889s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[both-next] PASSED [ 98%] 1889s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[both-next] PASSED [ 98%] 1889s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[left-next] PASSED [ 98%] 1889s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[left-next] PASSED [ 98%] 1889s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_properties[left] PASSED [ 98%] 1889s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes[left] PASSED [ 98%] 1889s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_calendar_bounds_properties[left] PASSED [ 98%] 1889s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minute_methods[left] PASSED [ 98%] 1889s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minutes[left] PASSED [ 98%] 1889s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_trading_minute[left] PASSED [ 98%] 1889s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_break_minute[left] PASSED [ 98%] 1889s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_on_minute[left] PASSED [ 98%] 1889s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_at_time[left] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_prev_next_minute[left] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[left-previous] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[both-previous] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[right-previous] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[right-next] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[right-next] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_properties[right] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes[right] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_calendar_bounds_properties[right] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minute_methods[right] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minutes[right] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_trading_minute[right] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_break_minute[right] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_on_minute[right] PASSED [ 98%] 1890s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_at_time[right] PASSED [ 98%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_prev_next_minute[right] PASSED [ 98%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[right-none] PASSED [ 98%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[right-none] PASSED [ 98%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[left-none] PASSED [ 98%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[left-none] PASSED [ 98%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[both-none] PASSED [ 98%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[both-none] PASSED [ 98%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[neither-none] PASSED [ 99%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 99%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[neither-previous] PASSED [ 99%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 99%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[neither-next] PASSED [ 99%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 99%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_properties[neither] PASSED [ 99%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes[neither] PASSED [ 99%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_calendar_bounds_properties[neither] PASSED [ 99%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minute_methods[neither] PASSED [ 99%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minutes[neither] PASSED [ 99%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_trading_minute[neither] PASSED [ 99%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_break_minute[neither] PASSED [ 99%] 1891s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_on_minute[neither] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_at_time[neither] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_prev_next_minute[neither] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_past_session[neither] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_future_session[neither] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset[neither] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset_by_sessions[neither] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_in_range[neither] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_window[neither] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_distance[neither] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_to_sessions[neither] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes[neither] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes_count[neither] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_past_session[right] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_future_session[right] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset[right] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset_by_sessions[right] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_in_range[right] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_window[right] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_distance[right] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_to_sessions[right] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes[right] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes_count[right] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_past_session[left] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_future_session[left] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset[left] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset_by_sessions[left] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_in_range[left] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_window[left] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_distance[left] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_to_sessions[left] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes[left] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes_count[left] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_past_session[both] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_future_session[both] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset[both] PASSED [ 99%] 1892s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset_by_sessions[both] PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_in_range[both] PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_window[both] PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_distance[both] PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_to_sessions[both] PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes[both] PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes_count[both] PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_has_break PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_regular_holidays_sample PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_adhoc_holidays_sample PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_non_holidays_sample PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_late_opens_sample PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_early_closes_sample PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_early_closes_sample_time PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_early_closes_weekdays PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_early_closes_weekdays_time PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_non_early_closes_sample PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_non_early_closes_sample_time PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_late_opens PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_early_closes PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_open_close_break_start_end PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_has_break PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_next_prev_session PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_offset PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_session PASSED [ 99%] 1893s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_date_to_session PASSED [ 99%] 1894s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_prev_next_open_close PASSED [ 99%] 1894s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_in_range PASSED [ 99%] 1894s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_has_break PASSED [ 99%] 1894s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_window PASSED [ 99%] 1894s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_distance PASSED [ 99%] 1894s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_trading_index PASSED [ 99%] 1894s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_deprecated PASSED [100%] 1894s 1894s =============================== warnings summary =============================== 1894s tests/test_calendar_helpers.py:456 1894s /tmp/autopkgtest.wMlJoC/autopkgtest_tmp/tests/test_calendar_helpers.py:456: HypothesisWarning: Return-type annotation is `st.SearchStrategy[tuple[pandas._libs.tslibs.timestamps.Timestamp, pandas._libs.tslibs.timestamps.Timestamp]]`, but the decorated function should return a value (not a strategy) 1894s @st.composite 1894s 1894s tests/test_calendar_helpers.py:466 1894s /tmp/autopkgtest.wMlJoC/autopkgtest_tmp/tests/test_calendar_helpers.py:466: HypothesisWarning: Return-type annotation is `st.SearchStrategy[tuple[pandas._libs.tslibs.timestamps.Timestamp, pandas._libs.tslibs.timestamps.Timestamp]]`, but the decorated function should return a value (not a strategy) 1894s @st.composite 1894s 1894s tests/test_calendar_helpers.py:500 1894s /tmp/autopkgtest.wMlJoC/autopkgtest_tmp/tests/test_calendar_helpers.py:500: HypothesisWarning: Return-type annotation is `st.SearchStrategy[pandas._libs.tslibs.timedeltas.Timedelta]`, but the decorated function should return a value (not a strategy) 1894s @st.composite 1894s 1894s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1894s =========== 8188 passed, 1 xfailed, 3 warnings in 607.86s (0:10:07) ============ 1895s ============================= test session starts ============================== 1895s platform linux -- Python 3.12.7, pytest-8.3.3, pluggy-1.5.0 -- /usr/bin/python3.12 1895s cachedir: .pytest_cache 1895s hypothesis profile 'default' -> database=DirectoryBasedExampleDatabase(PosixPath('/tmp/autopkgtest.wMlJoC/autopkgtest_tmp/.hypothesis/examples')) 1895s rootdir: /tmp/autopkgtest.wMlJoC/autopkgtest_tmp 1895s plugins: typeguard-4.4.1, hypothesis-6.119.3 1897s collecting ... collected 8189 items 1897s 1897s tests/test_aixk_calendar.py::TestAIXKCalendar::test_testbase_integrity PASSED [ 0%] 1897s tests/test_aixk_calendar.py::TestAIXKCalendar::test_base_integrity PASSED [ 0%] 1897s tests/test_aixk_calendar.py::TestAIXKCalendar::test_calculated_against_csv PASSED [ 0%] 1897s tests/test_aixk_calendar.py::TestAIXKCalendar::test_start_end PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_invalid_input PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_bound_min PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_bound_max PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sanity_check_session_lengths PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_adhoc_holidays_specification PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_daylight_savings PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_opens_closes_break_starts_ends PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_properties[both] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes[both] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_calendar_bounds_properties[both] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minute_methods[both] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minutes[both] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_trading_minute[both] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_break_minute[both] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_on_minute[both] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_at_time[both] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_prev_next_minute[both] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[both-next] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[both-next] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[left-next] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[left-next] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_properties[left] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes[left] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_calendar_bounds_properties[left] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minute_methods[left] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minutes[left] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_trading_minute[left] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_break_minute[left] PASSED [ 0%] 1898s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_on_minute[left] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_at_time[left] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_prev_next_minute[left] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[left-previous] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[both-previous] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[right-previous] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[right-next] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[right-next] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_properties[right] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes[right] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_calendar_bounds_properties[right] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minute_methods[right] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minutes[right] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_trading_minute[right] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_break_minute[right] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_on_minute[right] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_at_time[right] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_prev_next_minute[right] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[right-none] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[right-none] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[left-none] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[left-none] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[both-none] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[both-none] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[neither-none] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[neither-previous] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_session[neither-next] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_properties[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_calendar_bounds_properties[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minute_methods[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_minutes[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_trading_minute[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_break_minute[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_on_minute[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_open_at_time[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_prev_next_minute[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_past_session[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_future_session[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset_by_sessions[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_in_range[neither] PASSED [ 0%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_window[neither] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_distance[neither] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_to_sessions[neither] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes[neither] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes_count[neither] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_past_session[right] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_future_session[right] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset[right] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset_by_sessions[right] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_in_range[right] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_window[right] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_distance[right] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_to_sessions[right] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes[right] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes_count[right] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_past_session[left] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_future_session[left] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset[left] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset_by_sessions[left] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_in_range[left] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_window[left] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_distance[left] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_to_sessions[left] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes[left] PASSED [ 1%] 1899s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes_count[left] PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_past_session[both] PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_to_future_session[both] PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset[both] PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minute_offset_by_sessions[both] PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_in_range[both] PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_window[both] PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_distance[both] PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_minutes_to_sessions[both] PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes[both] PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_minutes_count[both] PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_has_break PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_regular_holidays_sample PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_adhoc_holidays_sample PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_non_holidays_sample PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_late_opens_sample PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_early_closes_sample PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_early_closes_sample_time PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_early_closes_weekdays PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_early_closes_weekdays_time PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_non_early_closes_sample PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_non_early_closes_sample_time PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_late_opens PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_early_closes PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_open_close_break_start_end PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_has_break PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_next_prev_session PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_session_offset PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_is_session PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_date_to_session PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_prev_next_open_close PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_in_range PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_has_break PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_window PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_sessions_distance PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_trading_index PASSED [ 1%] 1900s tests/test_aixk_calendar.py::TestAIXKCalendar::test_deprecated PASSED [ 1%] 1900s tests/test_always_open.py::TestAlwaysOpenCalendar::test_testbase_integrity PASSED [ 1%] 1900s tests/test_always_open.py::TestAlwaysOpenCalendar::test_base_integrity PASSED [ 1%] 1900s tests/test_always_open.py::TestAlwaysOpenCalendar::test_calculated_against_csv PASSED [ 1%] 1900s tests/test_always_open.py::TestAlwaysOpenCalendar::test_start_end PASSED [ 1%] 1900s tests/test_always_open.py::TestAlwaysOpenCalendar::test_invalid_input PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_bound_min PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_bound_max PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sanity_check_session_lengths PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_adhoc_holidays_specification PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_daylight_savings PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_opens_closes_break_starts_ends PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_properties[left] PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes[left] PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_calendar_bounds_properties[left] PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_session_minute_methods[left] PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_session_minutes[left] PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_trading_minute[left] PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_break_minute[left] PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_open_on_minute[left] PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_open_at_time[left] PASSED [ 1%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_prev_next_minute[left] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_session[left-next] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_trading_minute[left-next] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_session[right-next] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_trading_minute[right-next] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_properties[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_calendar_bounds_properties[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_session_minute_methods[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_session_minutes[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_trading_minute[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_break_minute[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_open_on_minute[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_open_at_time[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_prev_next_minute[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_session[right-previous] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_session[left-previous] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_session[right-none] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_trading_minute[right-none] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_session[left-none] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_trading_minute[left-none] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_past_session[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_future_session[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_offset[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_offset_by_sessions[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_in_range[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_window[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_distance[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_to_sessions[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_minutes[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_minutes_count[right] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_past_session[left] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_to_future_session[left] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_offset[left] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minute_offset_by_sessions[left] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_in_range[left] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_window[left] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_distance[left] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_minutes_to_sessions[left] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_minutes[left] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_minutes_count[left] PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_has_break PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_regular_holidays_sample PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_adhoc_holidays_sample PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_non_holidays_sample PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_late_opens_sample PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_early_closes_sample PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_early_closes_sample_time PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_early_closes_weekdays PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_early_closes_weekdays_time PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_non_early_closes_sample PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_non_early_closes_sample_time PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_late_opens PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_early_closes PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_session_open_close_break_start_end PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_session_has_break PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_next_prev_session PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_session_offset PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_is_session PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_date_to_session PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_prev_next_open_close PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_in_range PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_has_break PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_window PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_sessions_distance PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_trading_index PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_deprecated PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_open_every_day PASSED [ 2%] 1901s tests/test_always_open.py::TestAlwaysOpenCalendar::test_open_every_minute PASSED [ 2%] 1901s tests/test_asex_calendar.py::TestASEXCalendar::test_testbase_integrity PASSED [ 2%] 1901s tests/test_asex_calendar.py::TestASEXCalendar::test_base_integrity PASSED [ 2%] 1903s tests/test_asex_calendar.py::TestASEXCalendar::test_calculated_against_csv PASSED [ 2%] 1903s tests/test_asex_calendar.py::TestASEXCalendar::test_start_end PASSED [ 2%] 1903s tests/test_asex_calendar.py::TestASEXCalendar::test_invalid_input PASSED [ 2%] 1904s tests/test_asex_calendar.py::TestASEXCalendar::test_bound_min PASSED [ 2%] 1904s tests/test_asex_calendar.py::TestASEXCalendar::test_bound_max PASSED [ 2%] 1904s tests/test_asex_calendar.py::TestASEXCalendar::test_sanity_check_session_lengths PASSED [ 2%] 1904s tests/test_asex_calendar.py::TestASEXCalendar::test_adhoc_holidays_specification PASSED [ 2%] 1904s tests/test_asex_calendar.py::TestASEXCalendar::test_daylight_savings PASSED [ 2%] 1904s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions PASSED [ 2%] 1904s tests/test_asex_calendar.py::TestASEXCalendar::test_opens_closes_break_starts_ends PASSED [ 3%] 1904s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_properties[both] PASSED [ 3%] 1905s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes[both] PASSED [ 3%] 1905s tests/test_asex_calendar.py::TestASEXCalendar::test_calendar_bounds_properties[both] PASSED [ 3%] 1905s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minute_methods[both] PASSED [ 3%] 1905s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minutes[both] PASSED [ 3%] 1905s tests/test_asex_calendar.py::TestASEXCalendar::test_is_trading_minute[both] PASSED [ 3%] 1905s tests/test_asex_calendar.py::TestASEXCalendar::test_is_break_minute[both] PASSED [ 3%] 1905s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_on_minute[both] PASSED [ 3%] 1905s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_at_time[both] PASSED [ 3%] 1905s tests/test_asex_calendar.py::TestASEXCalendar::test_prev_next_minute[both] PASSED [ 3%] 1905s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[both-next] PASSED [ 3%] 1905s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[both-next] PASSED [ 3%] 1905s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[left-next] PASSED [ 3%] 1905s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[left-next] PASSED [ 3%] 1905s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_properties[left] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes[left] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_calendar_bounds_properties[left] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minute_methods[left] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minutes[left] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_is_trading_minute[left] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_is_break_minute[left] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_on_minute[left] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_at_time[left] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_prev_next_minute[left] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[left-previous] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[both-previous] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[right-previous] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[right-next] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[right-next] PASSED [ 3%] 1906s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_properties[right] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes[right] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_calendar_bounds_properties[right] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minute_methods[right] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minutes[right] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_is_trading_minute[right] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_is_break_minute[right] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_on_minute[right] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_at_time[right] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_prev_next_minute[right] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[right-none] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[right-none] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[left-none] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[left-none] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[both-none] PASSED [ 3%] 1907s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[both-none] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[neither-none] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[neither-previous] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_session[neither-next] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_properties[neither] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes[neither] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_calendar_bounds_properties[neither] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minute_methods[neither] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_session_minutes[neither] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_is_trading_minute[neither] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_is_break_minute[neither] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_on_minute[neither] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_is_open_at_time[neither] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_prev_next_minute[neither] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_past_session[neither] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_future_session[neither] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset[neither] PASSED [ 3%] 1908s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset_by_sessions[neither] PASSED [ 3%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_in_range[neither] PASSED [ 3%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_window[neither] PASSED [ 3%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_distance[neither] PASSED [ 3%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_to_sessions[neither] PASSED [ 3%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes[neither] PASSED [ 3%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes_count[neither] PASSED [ 3%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_past_session[right] PASSED [ 3%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_future_session[right] PASSED [ 3%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset[right] PASSED [ 3%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset_by_sessions[right] PASSED [ 3%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_in_range[right] PASSED [ 3%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_window[right] PASSED [ 3%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_distance[right] PASSED [ 3%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_to_sessions[right] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes[right] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes_count[right] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_past_session[left] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_future_session[left] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset[left] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset_by_sessions[left] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_in_range[left] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_window[left] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_distance[left] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_to_sessions[left] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes[left] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes_count[left] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_past_session[both] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_to_future_session[both] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset[both] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minute_offset_by_sessions[both] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_in_range[both] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_window[both] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_distance[both] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_minutes_to_sessions[both] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes[both] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_minutes_count[both] PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_has_break PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_regular_holidays_sample PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_adhoc_holidays_sample PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_non_holidays_sample PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_late_opens_sample PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_early_closes_sample PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_early_closes_sample_time PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_early_closes_weekdays PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_early_closes_weekdays_time PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_non_early_closes_sample PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_non_early_closes_sample_time PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_late_opens PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_early_closes PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_session_open_close_break_start_end PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_session_has_break PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_next_prev_session PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_session_offset PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_is_session PASSED [ 4%] 1909s tests/test_asex_calendar.py::TestASEXCalendar::test_date_to_session PASSED [ 4%] 1910s tests/test_asex_calendar.py::TestASEXCalendar::test_prev_next_open_close PASSED [ 4%] 1910s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_in_range PASSED [ 4%] 1910s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_has_break PASSED [ 4%] 1910s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_window PASSED [ 4%] 1910s tests/test_asex_calendar.py::TestASEXCalendar::test_sessions_distance PASSED [ 4%] 1910s tests/test_asex_calendar.py::TestASEXCalendar::test_trading_index PASSED [ 4%] 1910s tests/test_asex_calendar.py::TestASEXCalendar::test_deprecated PASSED [ 4%] 1910s tests/test_asex_calendar.py::TestASEXCalendar::test_close_time_change PASSED [ 4%] 1910s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_testbase_integrity PASSED [ 4%] 1910s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_base_integrity PASSED [ 4%] 1912s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_calculated_against_csv PASSED [ 4%] 1912s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_start_end PASSED [ 4%] 1912s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_invalid_input PASSED [ 4%] 1913s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_bound_min PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_bound_max PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sanity_check_session_lengths PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_adhoc_holidays_specification PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_daylight_savings PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_opens_closes_break_starts_ends PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_properties[both] PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes[both] PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_calendar_bounds_properties[both] PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minute_methods[both] PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minutes[both] PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_trading_minute[both] PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_break_minute[both] PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_on_minute[both] PASSED [ 4%] 1914s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_at_time[both] PASSED [ 4%] 1915s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_prev_next_minute[both] PASSED [ 4%] 1915s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[both-next] PASSED [ 4%] 1915s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[both-next] PASSED [ 4%] 1915s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[left-next] PASSED [ 4%] 1915s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[left-next] PASSED [ 4%] 1915s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_properties[left] PASSED [ 4%] 1915s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes[left] PASSED [ 4%] 1915s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_calendar_bounds_properties[left] PASSED [ 4%] 1915s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minute_methods[left] PASSED [ 4%] 1915s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minutes[left] PASSED [ 4%] 1915s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_trading_minute[left] PASSED [ 4%] 1915s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_break_minute[left] PASSED [ 5%] 1915s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_on_minute[left] PASSED [ 5%] 1915s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_at_time[left] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_prev_next_minute[left] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[left-previous] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[both-previous] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[right-previous] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[right-next] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[right-next] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_properties[right] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes[right] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_calendar_bounds_properties[right] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minute_methods[right] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minutes[right] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_trading_minute[right] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_break_minute[right] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_on_minute[right] PASSED [ 5%] 1916s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_at_time[right] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_prev_next_minute[right] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[right-none] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[right-none] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[left-none] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[left-none] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[both-none] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[both-none] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[neither-none] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[neither-previous] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_session[neither-next] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_properties[neither] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes[neither] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_calendar_bounds_properties[neither] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minute_methods[neither] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_minutes[neither] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_trading_minute[neither] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_break_minute[neither] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_on_minute[neither] PASSED [ 5%] 1917s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_open_at_time[neither] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_prev_next_minute[neither] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_past_session[neither] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_future_session[neither] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset[neither] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset_by_sessions[neither] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_in_range[neither] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_window[neither] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_distance[neither] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_to_sessions[neither] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes[neither] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes_count[neither] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_past_session[right] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_future_session[right] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset[right] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset_by_sessions[right] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_in_range[right] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_window[right] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_distance[right] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_to_sessions[right] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes[right] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes_count[right] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_past_session[left] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_future_session[left] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset[left] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset_by_sessions[left] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_in_range[left] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_window[left] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_distance[left] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_to_sessions[left] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes[left] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes_count[left] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_past_session[both] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_to_future_session[both] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset[both] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minute_offset_by_sessions[both] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_in_range[both] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_window[both] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_distance[both] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_minutes_to_sessions[both] PASSED [ 5%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes[both] PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_minutes_count[both] PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_has_break PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_regular_holidays_sample PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_adhoc_holidays_sample PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_non_holidays_sample PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_late_opens_sample PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_early_closes_sample PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_early_closes_sample_time PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_early_closes_weekdays PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_early_closes_weekdays_time PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_non_early_closes_sample PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_non_early_closes_sample_time PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_late_opens PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_early_closes PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_open_close_break_start_end PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_has_break PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_next_prev_session PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_session_offset PASSED [ 6%] 1918s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_is_session PASSED [ 6%] 1919s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_date_to_session PASSED [ 6%] 1920s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_prev_next_open_close PASSED [ 6%] 1920s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_in_range PASSED [ 6%] 1920s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_has_break PASSED [ 6%] 1920s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_window PASSED [ 6%] 1920s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_sessions_distance PASSED [ 6%] 1920s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_trading_index PASSED [ 6%] 1920s tests/test_bvmf_calendar.py::TestBVMFCalendar::test_deprecated PASSED [ 6%] 1920s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_add_new_aliases PASSED [ 6%] 1920s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_aliases_to_names PASSED [ 6%] 1920s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_allow_alias_override_with_force PASSED [ 6%] 1920s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_follow_alias_chain PASSED [ 6%] 1920s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_get_calendar PASSED [ 6%] 1920s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_get_calendar_cache PASSED [ 6%] 1920s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_get_calendar_kwargs PASSED [ 6%] 1920s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_get_calendar_names PASSED [ 6%] 1920s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_names_to_aliases PASSED [ 6%] 1920s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_reject_alias_that_already_exists PASSED [ 6%] 1920s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_reject_cyclic_aliases PASSED [ 6%] 1920s tests/test_calendar_dispatcher.py::CalendarDispatcherTestCase::test_remove_aliases PASSED [ 6%] 1920s tests/test_calendar_helpers.py::test_constants PASSED [ 6%] 1920s tests/test_calendar_helpers.py::test_is_date PASSED [ 6%] 1920s tests/test_calendar_helpers.py::test_is_utc PASSED [ 6%] 1921s tests/test_calendar_helpers.py::test_parse_timestamp_with_date[2021-06-05-True] PASSED [ 6%] 1921s tests/test_calendar_helpers.py::test_parse_timestamp_with_date[2021-06-05-False] PASSED [ 6%] 1921s tests/test_calendar_helpers.py::test_parse_timestamp_with_date[date_mult1-True] PASSED [ 6%] 1922s tests/test_calendar_helpers.py::test_parse_timestamp_with_date[date_mult1-False] PASSED [ 6%] 1922s tests/test_calendar_helpers.py::test_parse_timestamp_with_minute[2021-06-02 23:00-True] PASSED [ 6%] 1922s tests/test_calendar_helpers.py::test_parse_timestamp_with_minute[2021-06-02 23:00-False] PASSED [ 6%] 1923s tests/test_calendar_helpers.py::test_parse_timestamp_with_minute[minute_mult1-True] PASSED [ 6%] 1923s tests/test_calendar_helpers.py::test_parse_timestamp_with_minute[minute_mult1-False] PASSED [ 6%] 1923s tests/test_calendar_helpers.py::test_parse_timestamp_with_minute[minute_mult2-True] PASSED [ 6%] 1924s tests/test_calendar_helpers.py::test_parse_timestamp_with_minute[minute_mult2-False] PASSED [ 6%] 1924s tests/test_calendar_helpers.py::test_parse_timestamp_with_second[left] PASSED [ 6%] 1924s tests/test_calendar_helpers.py::test_parse_timestamp_with_second[right] PASSED [ 6%] 1924s tests/test_calendar_helpers.py::test_parse_timestamp_with_second[both] PASSED [ 6%] 1924s tests/test_calendar_helpers.py::test_parse_timestamp_with_second[neither] PASSED [ 6%] 1924s tests/test_calendar_helpers.py::test_parse_timestamp_error_malformed[2021-13-13] PASSED [ 6%] 1924s tests/test_calendar_helpers.py::test_parse_timestamp_error_malformed[malformed1] PASSED [ 6%] 1925s tests/test_calendar_helpers.py::test_parse_timestamp_error_malformed[not a timestamp] PASSED [ 6%] 1925s tests/test_calendar_helpers.py::test_parse_timestamp_error_oob PASSED [ 6%] 1925s tests/test_calendar_helpers.py::test_parse_date_or_minute_for_minute[2021-06-02 23:00] PASSED [ 6%] 1926s tests/test_calendar_helpers.py::test_parse_date_or_minute_for_minute[minute_mult1] PASSED [ 6%] 1926s tests/test_calendar_helpers.py::test_parse_date_or_minute_for_minute[minute_mult2] PASSED [ 6%] 1926s tests/test_calendar_helpers.py::test_parse_date_or_minute_for_date[2021-06-05] PASSED [ 6%] 1927s tests/test_calendar_helpers.py::test_parse_date_or_minute_for_date[date_mult1] PASSED [ 6%] 1927s tests/test_calendar_helpers.py::test_parse_date_or_minute_oob PASSED [ 6%] 1927s tests/test_calendar_helpers.py::test_parse_date[2021-06-05] PASSED [ 6%] 1928s tests/test_calendar_helpers.py::test_parse_date[date_mult1] PASSED [ 6%] 1928s tests/test_calendar_helpers.py::test_parse_date_errors PASSED [ 6%] 1928s tests/test_calendar_helpers.py::test_parse_session PASSED [ 6%] 1928s tests/test_calendar_helpers.py::test_parse_trading_minute PASSED [ 6%] 1932s tests/test_calendar_helpers.py::TestTradingIndex::test_indices_fuzz[XLON] PASSED [ 6%] 1933s tests/test_calendar_helpers.py::TestTradingIndex::test_intervals_fuzz[XLON] PASSED [ 6%] 1934s tests/test_calendar_helpers.py::TestTradingIndex::test_daily_fuzz[XLON] PASSED [ 6%] 1936s tests/test_calendar_helpers.py::TestTradingIndex::test_indices_fuzz[XHKG] PASSED [ 6%] 1939s tests/test_calendar_helpers.py::TestTradingIndex::test_intervals_fuzz[XHKG] PASSED [ 6%] 1939s tests/test_calendar_helpers.py::TestTradingIndex::test_daily_fuzz[XHKG] PASSED [ 6%] 1941s tests/test_calendar_helpers.py::TestTradingIndex::test_indices_fuzz[XTAE] PASSED [ 6%] 1942s tests/test_calendar_helpers.py::TestTradingIndex::test_intervals_fuzz[XTAE] PASSED [ 6%] 1942s tests/test_calendar_helpers.py::TestTradingIndex::test_daily_fuzz[XTAE] PASSED [ 6%] 1946s tests/test_calendar_helpers.py::TestTradingIndex::test_indices_fuzz[CMES] PASSED [ 6%] 1949s tests/test_calendar_helpers.py::TestTradingIndex::test_intervals_fuzz[CMES] PASSED [ 7%] 1949s tests/test_calendar_helpers.py::TestTradingIndex::test_daily_fuzz[CMES] PASSED [ 7%] 1950s tests/test_calendar_helpers.py::TestTradingIndex::test_indices_fuzz[24/7] PASSED [ 7%] 1951s tests/test_calendar_helpers.py::TestTradingIndex::test_intervals_fuzz[24/7] PASSED [ 7%] 1951s tests/test_calendar_helpers.py::TestTradingIndex::test_daily_fuzz[24/7] PASSED [ 7%] 1952s tests/test_calendar_helpers.py::TestTradingIndex::test_for_empty_with_neither_fuzz PASSED [ 7%] 1952s tests/test_calendar_helpers.py::TestTradingIndex::test_overlap_error_fuzz[XHKG] PASSED [ 7%] 1953s tests/test_calendar_helpers.py::TestTradingIndex::test_overlap_error_fuzz[24/7] PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_overlap_error_fuzz[CMES] PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap0-True] PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap0-False] PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap1-True] PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap1-False] PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap2-True] PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap2-False] PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap3-True] PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps[ti_for_overlap3-False] PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps_2[right-True] PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps_2[right-False] PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps_2[both-True] PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_overlaps_2[both-False] PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_force PASSED [ 7%] 1954s tests/test_calendar_helpers.py::TestTradingIndex::test_ignore_breaks PASSED [ 7%] 1955s tests/test_calendar_helpers.py::TestTradingIndex::test_align PASSED [ 7%] 1955s tests/test_calendar_helpers.py::TestTradingIndex::test_align_overlap PASSED [ 7%] 1956s tests/test_calendar_helpers.py::TestTradingIndex::test_start_end_times PASSED [ 7%] 1956s tests/test_calendar_helpers.py::TestTradingIndex::test_parsing_errors PASSED [ 7%] 1956s tests/test_cmes_calendar.py::TestCMESCalendar::test_testbase_integrity PASSED [ 7%] 1956s tests/test_cmes_calendar.py::TestCMESCalendar::test_base_integrity PASSED [ 7%] 1957s tests/test_cmes_calendar.py::TestCMESCalendar::test_calculated_against_csv PASSED [ 7%] 1957s tests/test_cmes_calendar.py::TestCMESCalendar::test_start_end PASSED [ 7%] 1957s tests/test_cmes_calendar.py::TestCMESCalendar::test_invalid_input PASSED [ 7%] 1958s tests/test_cmes_calendar.py::TestCMESCalendar::test_bound_min PASSED [ 7%] 1958s tests/test_cmes_calendar.py::TestCMESCalendar::test_bound_max PASSED [ 7%] 1958s tests/test_cmes_calendar.py::TestCMESCalendar::test_sanity_check_session_lengths PASSED [ 7%] 1958s tests/test_cmes_calendar.py::TestCMESCalendar::test_adhoc_holidays_specification PASSED [ 7%] 1958s tests/test_cmes_calendar.py::TestCMESCalendar::test_daylight_savings PASSED [ 7%] 1958s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions PASSED [ 7%] 1958s tests/test_cmes_calendar.py::TestCMESCalendar::test_opens_closes_break_starts_ends PASSED [ 7%] 1958s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_properties[left] PASSED [ 7%] 1959s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes[left] PASSED [ 7%] 1959s tests/test_cmes_calendar.py::TestCMESCalendar::test_calendar_bounds_properties[left] PASSED [ 7%] 1959s tests/test_cmes_calendar.py::TestCMESCalendar::test_session_minute_methods[left] PASSED [ 7%] 1959s tests/test_cmes_calendar.py::TestCMESCalendar::test_session_minutes[left] PASSED [ 7%] 1959s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_trading_minute[left] PASSED [ 7%] 1959s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_break_minute[left] PASSED [ 7%] 1959s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_open_on_minute[left] PASSED [ 7%] 1959s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_open_at_time[left] PASSED [ 7%] 1960s tests/test_cmes_calendar.py::TestCMESCalendar::test_prev_next_minute[left] PASSED [ 7%] 1960s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_session[left-next] PASSED [ 7%] 1960s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_trading_minute[left-next] PASSED [ 7%] 1960s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_session[right-next] PASSED [ 7%] 1960s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_trading_minute[right-next] PASSED [ 7%] 1960s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_properties[right] PASSED [ 7%] 1961s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes[right] PASSED [ 7%] 1961s tests/test_cmes_calendar.py::TestCMESCalendar::test_calendar_bounds_properties[right] PASSED [ 7%] 1961s tests/test_cmes_calendar.py::TestCMESCalendar::test_session_minute_methods[right] PASSED [ 7%] 1961s tests/test_cmes_calendar.py::TestCMESCalendar::test_session_minutes[right] PASSED [ 7%] 1961s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_trading_minute[right] PASSED [ 7%] 1961s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_break_minute[right] PASSED [ 7%] 1961s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_open_on_minute[right] PASSED [ 7%] 1961s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_open_at_time[right] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_prev_next_minute[right] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_session[right-previous] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_session[left-previous] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_session[right-none] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_trading_minute[right-none] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_session[left-none] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_trading_minute[left-none] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_past_session[right] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_future_session[right] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_offset[right] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_offset_by_sessions[right] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_in_range[right] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_window[right] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_distance[right] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_to_sessions[right] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_minutes[right] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_minutes_count[right] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_past_session[left] PASSED [ 7%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_to_future_session[left] PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_offset[left] PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minute_offset_by_sessions[left] PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_in_range[left] PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_window[left] PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_distance[left] PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_minutes_to_sessions[left] PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_minutes[left] PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_minutes_count[left] PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_has_break PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_regular_holidays_sample PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_adhoc_holidays_sample PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_non_holidays_sample PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_late_opens_sample PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_early_closes_sample PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_early_closes_sample_time PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_early_closes_weekdays PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_early_closes_weekdays_time PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_non_early_closes_sample PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_non_early_closes_sample_time PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_late_opens PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_early_closes PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_session_open_close_break_start_end PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_session_has_break PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_next_prev_session PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_session_offset PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_is_session PASSED [ 8%] 1962s tests/test_cmes_calendar.py::TestCMESCalendar::test_date_to_session PASSED [ 8%] 1963s tests/test_cmes_calendar.py::TestCMESCalendar::test_prev_next_open_close PASSED [ 8%] 1963s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_in_range PASSED [ 8%] 1963s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_has_break PASSED [ 8%] 1963s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_window PASSED [ 8%] 1963s tests/test_cmes_calendar.py::TestCMESCalendar::test_sessions_distance PASSED [ 8%] 1963s tests/test_cmes_calendar.py::TestCMESCalendar::test_trading_index PASSED [ 8%] 1963s tests/test_cmes_calendar.py::TestCMESCalendar::test_deprecated PASSED [ 8%] 1963s tests/test_exchange_calendar.py::TestCalendarRegistration::test_register_calendar PASSED [ 8%] 1963s tests/test_exchange_calendar.py::TestCalendarRegistration::test_register_calendar_type PASSED [ 8%] 1963s tests/test_exchange_calendar.py::TestCalendarRegistration::test_both_places_are_checked PASSED [ 8%] 1963s tests/test_exchange_calendar.py::TestCalendarRegistration::test_force_registration PASSED [ 8%] 1982s tests/test_exchange_calendar.py::test_default_calendars PASSED [ 8%] 1982s tests/test_exchange_calendar.py::test_days_at_time[2016-07-19-0-time_offset0-tz0-2016-07-19 9:31] PASSED [ 8%] 1982s tests/test_exchange_calendar.py::test_days_at_time[2016-07-19--1-time_offset1-tz1-2016-07-18 17:01] PASSED [ 8%] 1982s tests/test_exchange_calendar.py::test_days_at_time[2004-04-05--1-time_offset2-tz2-2004-04-04 17:01] PASSED [ 8%] 1982s tests/test_exchange_calendar.py::test_days_at_time[1990-04-02--1-time_offset3-tz3-1990-04-01 19:01] PASSED [ 8%] 1982s tests/test_iepa_calendar.py::TestIEPACalendar::test_testbase_integrity PASSED [ 8%] 1982s tests/test_iepa_calendar.py::TestIEPACalendar::test_base_integrity PASSED [ 8%] 1983s tests/test_iepa_calendar.py::TestIEPACalendar::test_calculated_against_csv PASSED [ 8%] 1983s tests/test_iepa_calendar.py::TestIEPACalendar::test_start_end PASSED [ 8%] 1983s tests/test_iepa_calendar.py::TestIEPACalendar::test_invalid_input PASSED [ 8%] 1984s tests/test_iepa_calendar.py::TestIEPACalendar::test_bound_min PASSED [ 8%] 1984s tests/test_iepa_calendar.py::TestIEPACalendar::test_bound_max PASSED [ 8%] 1984s tests/test_iepa_calendar.py::TestIEPACalendar::test_sanity_check_session_lengths PASSED [ 8%] 1984s tests/test_iepa_calendar.py::TestIEPACalendar::test_adhoc_holidays_specification PASSED [ 8%] 1984s tests/test_iepa_calendar.py::TestIEPACalendar::test_daylight_savings PASSED [ 8%] 1984s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions PASSED [ 8%] 1984s tests/test_iepa_calendar.py::TestIEPACalendar::test_opens_closes_break_starts_ends PASSED [ 8%] 1984s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_properties[both] PASSED [ 8%] 1985s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes[both] PASSED [ 8%] 1985s tests/test_iepa_calendar.py::TestIEPACalendar::test_calendar_bounds_properties[both] PASSED [ 8%] 1985s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minute_methods[both] PASSED [ 8%] 1985s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minutes[both] PASSED [ 8%] 1985s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_trading_minute[both] PASSED [ 8%] 1985s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_break_minute[both] PASSED [ 8%] 1985s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_on_minute[both] PASSED [ 8%] 1985s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_at_time[both] PASSED [ 8%] 1985s tests/test_iepa_calendar.py::TestIEPACalendar::test_prev_next_minute[both] PASSED [ 8%] 1985s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[both-next] PASSED [ 8%] 1985s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[both-next] PASSED [ 8%] 1985s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[left-next] PASSED [ 8%] 1985s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[left-next] PASSED [ 8%] 1985s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_properties[left] PASSED [ 8%] 1986s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes[left] PASSED [ 8%] 1986s tests/test_iepa_calendar.py::TestIEPACalendar::test_calendar_bounds_properties[left] PASSED [ 8%] 1986s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minute_methods[left] PASSED [ 8%] 1986s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minutes[left] PASSED [ 8%] 1986s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_trading_minute[left] PASSED [ 8%] 1986s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_break_minute[left] PASSED [ 8%] 1986s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_on_minute[left] PASSED [ 8%] 1986s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_at_time[left] PASSED [ 8%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_prev_next_minute[left] PASSED [ 8%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[left-previous] PASSED [ 8%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[left-previous] PASSED [ 8%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[both-previous] PASSED [ 9%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[both-previous] PASSED [ 9%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[right-previous] PASSED [ 9%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[right-previous] PASSED [ 9%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[right-next] PASSED [ 9%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[right-next] PASSED [ 9%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_properties[right] PASSED [ 9%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes[right] PASSED [ 9%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_calendar_bounds_properties[right] PASSED [ 9%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minute_methods[right] PASSED [ 9%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minutes[right] PASSED [ 9%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_trading_minute[right] PASSED [ 9%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_break_minute[right] PASSED [ 9%] 1987s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_on_minute[right] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_at_time[right] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_prev_next_minute[right] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[right-none] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[right-none] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[left-none] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[left-none] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[both-none] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[both-none] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[neither-none] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[neither-none] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[neither-previous] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_session[neither-next] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_trading_minute[neither-next] PASSED [ 9%] 1988s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_properties[neither] PASSED [ 9%] 1989s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes[neither] PASSED [ 9%] 1989s tests/test_iepa_calendar.py::TestIEPACalendar::test_calendar_bounds_properties[neither] PASSED [ 9%] 1989s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minute_methods[neither] PASSED [ 9%] 1989s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_minutes[neither] PASSED [ 9%] 1989s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_trading_minute[neither] PASSED [ 9%] 1989s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_break_minute[neither] PASSED [ 9%] 1989s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_on_minute[neither] PASSED [ 9%] 1989s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_open_at_time[neither] PASSED [ 9%] 1989s tests/test_iepa_calendar.py::TestIEPACalendar::test_prev_next_minute[neither] PASSED [ 9%] 1989s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_past_session[neither] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_future_session[neither] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset[neither] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset_by_sessions[neither] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_in_range[neither] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_window[neither] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_distance[neither] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_to_sessions[neither] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes[neither] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes_count[neither] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_past_session[right] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_future_session[right] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset[right] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset_by_sessions[right] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_in_range[right] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_window[right] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_distance[right] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_to_sessions[right] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes[right] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes_count[right] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_past_session[left] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_future_session[left] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset[left] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset_by_sessions[left] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_in_range[left] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_window[left] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_distance[left] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_to_sessions[left] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes[left] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes_count[left] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_past_session[both] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_to_future_session[both] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset[both] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minute_offset_by_sessions[both] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_in_range[both] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_window[both] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_distance[both] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_minutes_to_sessions[both] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes[both] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_minutes_count[both] PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_has_break PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_regular_holidays_sample PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_adhoc_holidays_sample PASSED [ 9%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_non_holidays_sample PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_late_opens_sample PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_early_closes_sample PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_early_closes_sample_time PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_early_closes_weekdays PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_early_closes_weekdays_time PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_non_early_closes_sample PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_non_early_closes_sample_time PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_late_opens PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_early_closes PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_open_close_break_start_end PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_has_break PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_next_prev_session PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_session_offset PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_is_session PASSED [ 10%] 1990s tests/test_iepa_calendar.py::TestIEPACalendar::test_date_to_session PASSED [ 10%] 1991s tests/test_iepa_calendar.py::TestIEPACalendar::test_prev_next_open_close PASSED [ 10%] 1991s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_in_range PASSED [ 10%] 1991s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_has_break PASSED [ 10%] 1991s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_window PASSED [ 10%] 1991s tests/test_iepa_calendar.py::TestIEPACalendar::test_sessions_distance PASSED [ 10%] 1991s tests/test_iepa_calendar.py::TestIEPACalendar::test_trading_index PASSED [ 10%] 1991s tests/test_iepa_calendar.py::TestIEPACalendar::test_deprecated PASSED [ 10%] 1991s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_testbase_integrity PASSED [ 10%] 1991s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_base_integrity PASSED [ 10%] 1991s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_calculated_against_csv PASSED [ 10%] 1991s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_start_end PASSED [ 10%] 1991s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_invalid_input PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_bound_min PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_bound_max PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sanity_check_session_lengths PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_adhoc_holidays_specification PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_daylight_savings PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_opens_closes_break_starts_ends PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_properties[left] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes[left] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_calendar_bounds_properties[left] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_session_minute_methods[left] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_session_minutes[left] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_trading_minute[left] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_break_minute[left] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_open_on_minute[left] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_open_at_time[left] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_prev_next_minute[left] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_session[left-next] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_trading_minute[left-next] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_session[right-next] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_trading_minute[right-next] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_properties[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_calendar_bounds_properties[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_session_minute_methods[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_session_minutes[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_trading_minute[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_break_minute[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_open_on_minute[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_open_at_time[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_prev_next_minute[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_session[right-previous] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_session[left-previous] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_session[right-none] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_trading_minute[right-none] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_session[left-none] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_trading_minute[left-none] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_past_session[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_future_session[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_offset[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_offset_by_sessions[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_in_range[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_window[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_distance[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_to_sessions[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_minutes[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_minutes_count[right] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_past_session[left] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_to_future_session[left] PASSED [ 10%] 1992s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_offset[left] PASSED [ 10%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minute_offset_by_sessions[left] PASSED [ 10%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_in_range[left] PASSED [ 10%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_window[left] PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_distance[left] PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_minutes_to_sessions[left] PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_minutes[left] PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_minutes_count[left] PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_has_break PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_regular_holidays_sample PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_adhoc_holidays_sample PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_non_holidays_sample PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_late_opens_sample PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_early_closes_sample PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_early_closes_sample_time PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_early_closes_weekdays PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_early_closes_weekdays_time PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_non_early_closes_sample PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_non_early_closes_sample_time PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_late_opens PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_early_closes PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_session_open_close_break_start_end PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_session_has_break PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_next_prev_session PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_session_offset PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_is_session PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_date_to_session PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_prev_next_open_close PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_in_range PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_has_break PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_window PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_sessions_distance PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_trading_index PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_deprecated PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_open_every_weekday PASSED [ 11%] 1993s tests/test_weekday_calendar.py::TestWeekdayCalendar::test_open_every_weekday_minute PASSED [ 11%] 1993s tests/test_xams_calendar.py::TestXAMSCalendar::test_testbase_integrity PASSED [ 11%] 1993s tests/test_xams_calendar.py::TestXAMSCalendar::test_base_integrity PASSED [ 11%] 1994s tests/test_xams_calendar.py::TestXAMSCalendar::test_calculated_against_csv PASSED [ 11%] 1994s tests/test_xams_calendar.py::TestXAMSCalendar::test_start_end PASSED [ 11%] 1994s tests/test_xams_calendar.py::TestXAMSCalendar::test_invalid_input PASSED [ 11%] 1995s tests/test_xams_calendar.py::TestXAMSCalendar::test_bound_min PASSED [ 11%] 1995s tests/test_xams_calendar.py::TestXAMSCalendar::test_bound_max PASSED [ 11%] 1995s tests/test_xams_calendar.py::TestXAMSCalendar::test_sanity_check_session_lengths PASSED [ 11%] 1995s tests/test_xams_calendar.py::TestXAMSCalendar::test_adhoc_holidays_specification PASSED [ 11%] 1995s tests/test_xams_calendar.py::TestXAMSCalendar::test_daylight_savings PASSED [ 11%] 1995s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions PASSED [ 11%] 1995s tests/test_xams_calendar.py::TestXAMSCalendar::test_opens_closes_break_starts_ends PASSED [ 11%] 1995s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_properties[both] PASSED [ 11%] 1996s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes[both] PASSED [ 11%] 1996s tests/test_xams_calendar.py::TestXAMSCalendar::test_calendar_bounds_properties[both] PASSED [ 11%] 1996s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minute_methods[both] PASSED [ 11%] 1996s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minutes[both] PASSED [ 11%] 1996s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_trading_minute[both] PASSED [ 11%] 1996s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_break_minute[both] PASSED [ 11%] 1996s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_on_minute[both] PASSED [ 11%] 1996s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_at_time[both] PASSED [ 11%] 1996s tests/test_xams_calendar.py::TestXAMSCalendar::test_prev_next_minute[both] PASSED [ 11%] 1996s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[both-next] PASSED [ 11%] 1996s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[both-next] PASSED [ 11%] 1996s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[left-next] PASSED [ 11%] 1996s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[left-next] PASSED [ 11%] 1996s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_properties[left] PASSED [ 11%] 1997s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes[left] PASSED [ 11%] 1997s tests/test_xams_calendar.py::TestXAMSCalendar::test_calendar_bounds_properties[left] PASSED [ 11%] 1997s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minute_methods[left] PASSED [ 11%] 1997s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minutes[left] PASSED [ 11%] 1997s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_trading_minute[left] PASSED [ 11%] 1997s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_break_minute[left] PASSED [ 11%] 1997s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_on_minute[left] PASSED [ 11%] 1997s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_at_time[left] PASSED [ 11%] 1997s tests/test_xams_calendar.py::TestXAMSCalendar::test_prev_next_minute[left] PASSED [ 11%] 1997s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[left-previous] PASSED [ 11%] 1997s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 11%] 1997s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[both-previous] PASSED [ 11%] 1997s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 11%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[right-previous] PASSED [ 11%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 11%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[right-next] PASSED [ 11%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[right-next] PASSED [ 11%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_properties[right] PASSED [ 11%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes[right] PASSED [ 11%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_calendar_bounds_properties[right] PASSED [ 11%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minute_methods[right] PASSED [ 11%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minutes[right] PASSED [ 11%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_trading_minute[right] PASSED [ 12%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_break_minute[right] PASSED [ 12%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_on_minute[right] PASSED [ 12%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_at_time[right] PASSED [ 12%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_prev_next_minute[right] PASSED [ 12%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[right-none] PASSED [ 12%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[right-none] PASSED [ 12%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[left-none] PASSED [ 12%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[left-none] PASSED [ 12%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[both-none] PASSED [ 12%] 1998s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[both-none] PASSED [ 12%] 1999s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[neither-none] PASSED [ 12%] 1999s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 12%] 1999s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[neither-previous] PASSED [ 12%] 1999s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 12%] 1999s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_session[neither-next] PASSED [ 12%] 1999s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 12%] 1999s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_properties[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_calendar_bounds_properties[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minute_methods[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_minutes[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_trading_minute[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_break_minute[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_on_minute[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_open_at_time[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_prev_next_minute[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_past_session[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_future_session[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset_by_sessions[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_in_range[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_window[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_distance[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_to_sessions[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes_count[neither] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_past_session[right] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_future_session[right] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset[right] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset_by_sessions[right] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_in_range[right] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_window[right] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_distance[right] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_to_sessions[right] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes[right] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes_count[right] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_past_session[left] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_future_session[left] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset[left] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset_by_sessions[left] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_in_range[left] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_window[left] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_distance[left] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_to_sessions[left] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes[left] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes_count[left] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_past_session[both] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_to_future_session[both] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset[both] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minute_offset_by_sessions[both] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_in_range[both] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_window[both] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_distance[both] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_minutes_to_sessions[both] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes[both] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_minutes_count[both] PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_has_break PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_regular_holidays_sample PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_adhoc_holidays_sample PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_non_holidays_sample PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_late_opens_sample PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_early_closes_sample PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_early_closes_sample_time PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_early_closes_weekdays PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_early_closes_weekdays_time PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_non_early_closes_sample PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_non_early_closes_sample_time PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_late_opens PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_early_closes PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_open_close_break_start_end PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_has_break PASSED [ 12%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_next_prev_session PASSED [ 13%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_session_offset PASSED [ 13%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_is_session PASSED [ 13%] 2000s tests/test_xams_calendar.py::TestXAMSCalendar::test_date_to_session PASSED [ 13%] 2001s tests/test_xams_calendar.py::TestXAMSCalendar::test_prev_next_open_close PASSED [ 13%] 2001s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_in_range PASSED [ 13%] 2001s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_has_break PASSED [ 13%] 2001s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_window PASSED [ 13%] 2001s tests/test_xams_calendar.py::TestXAMSCalendar::test_sessions_distance PASSED [ 13%] 2001s tests/test_xams_calendar.py::TestXAMSCalendar::test_trading_index PASSED [ 13%] 2001s tests/test_xams_calendar.py::TestXAMSCalendar::test_deprecated PASSED [ 13%] 2001s tests/test_xasx_calendar.py::TestXASXCalendar::test_testbase_integrity PASSED [ 13%] 2001s tests/test_xasx_calendar.py::TestXASXCalendar::test_base_integrity PASSED [ 13%] 2003s tests/test_xasx_calendar.py::TestXASXCalendar::test_calculated_against_csv PASSED [ 13%] 2003s tests/test_xasx_calendar.py::TestXASXCalendar::test_start_end PASSED [ 13%] 2003s tests/test_xasx_calendar.py::TestXASXCalendar::test_invalid_input PASSED [ 13%] 2004s tests/test_xasx_calendar.py::TestXASXCalendar::test_bound_min PASSED [ 13%] 2004s tests/test_xasx_calendar.py::TestXASXCalendar::test_bound_max PASSED [ 13%] 2004s tests/test_xasx_calendar.py::TestXASXCalendar::test_sanity_check_session_lengths PASSED [ 13%] 2004s tests/test_xasx_calendar.py::TestXASXCalendar::test_adhoc_holidays_specification PASSED [ 13%] 2004s tests/test_xasx_calendar.py::TestXASXCalendar::test_daylight_savings PASSED [ 13%] 2004s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions PASSED [ 13%] 2004s tests/test_xasx_calendar.py::TestXASXCalendar::test_opens_closes_break_starts_ends PASSED [ 13%] 2004s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_properties[both] PASSED [ 13%] 2005s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes[both] PASSED [ 13%] 2005s tests/test_xasx_calendar.py::TestXASXCalendar::test_calendar_bounds_properties[both] PASSED [ 13%] 2005s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minute_methods[both] PASSED [ 13%] 2005s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minutes[both] PASSED [ 13%] 2005s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_trading_minute[both] PASSED [ 13%] 2005s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_break_minute[both] PASSED [ 13%] 2005s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_on_minute[both] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_at_time[both] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_prev_next_minute[both] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[both-next] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[both-next] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[left-next] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[left-next] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_properties[left] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes[left] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_calendar_bounds_properties[left] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minute_methods[left] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minutes[left] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_trading_minute[left] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_break_minute[left] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_on_minute[left] PASSED [ 13%] 2006s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_at_time[left] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_prev_next_minute[left] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[left-previous] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[both-previous] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[right-previous] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[right-next] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[right-next] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_properties[right] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes[right] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_calendar_bounds_properties[right] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minute_methods[right] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minutes[right] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_trading_minute[right] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_break_minute[right] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_on_minute[right] PASSED [ 13%] 2007s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_at_time[right] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_prev_next_minute[right] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[right-none] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[right-none] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[left-none] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[left-none] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[both-none] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[both-none] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[neither-none] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[neither-previous] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_session[neither-next] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_properties[neither] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes[neither] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_calendar_bounds_properties[neither] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minute_methods[neither] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_minutes[neither] PASSED [ 13%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_trading_minute[neither] PASSED [ 14%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_break_minute[neither] PASSED [ 14%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_on_minute[neither] PASSED [ 14%] 2008s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_open_at_time[neither] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_prev_next_minute[neither] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_past_session[neither] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_future_session[neither] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset[neither] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset_by_sessions[neither] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_in_range[neither] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_window[neither] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_distance[neither] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_to_sessions[neither] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes[neither] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes_count[neither] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_past_session[right] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_future_session[right] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset[right] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset_by_sessions[right] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_in_range[right] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_window[right] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_distance[right] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_to_sessions[right] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes[right] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes_count[right] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_past_session[left] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_future_session[left] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset[left] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset_by_sessions[left] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_in_range[left] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_window[left] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_distance[left] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_to_sessions[left] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes[left] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes_count[left] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_past_session[both] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_to_future_session[both] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset[both] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minute_offset_by_sessions[both] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_in_range[both] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_window[both] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_distance[both] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_minutes_to_sessions[both] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes[both] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_minutes_count[both] PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_has_break PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_regular_holidays_sample PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_adhoc_holidays_sample PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_non_holidays_sample PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_late_opens_sample PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_early_closes_sample PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_early_closes_sample_time PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_early_closes_weekdays PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_early_closes_weekdays_time PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_non_early_closes_sample PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_non_early_closes_sample_time PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_late_opens PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_early_closes PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_open_close_break_start_end PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_has_break PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_next_prev_session PASSED [ 14%] 2009s tests/test_xasx_calendar.py::TestXASXCalendar::test_session_offset PASSED [ 14%] 2010s tests/test_xasx_calendar.py::TestXASXCalendar::test_is_session PASSED [ 14%] 2010s tests/test_xasx_calendar.py::TestXASXCalendar::test_date_to_session PASSED [ 14%] 2011s tests/test_xasx_calendar.py::TestXASXCalendar::test_prev_next_open_close PASSED [ 14%] 2011s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_in_range PASSED [ 14%] 2011s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_has_break PASSED [ 14%] 2011s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_window PASSED [ 14%] 2011s tests/test_xasx_calendar.py::TestXASXCalendar::test_sessions_distance PASSED [ 14%] 2011s tests/test_xasx_calendar.py::TestXASXCalendar::test_trading_index PASSED [ 14%] 2011s tests/test_xasx_calendar.py::TestXASXCalendar::test_deprecated PASSED [ 14%] 2011s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_testbase_integrity PASSED [ 14%] 2011s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_base_integrity PASSED [ 14%] 2012s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_calculated_against_csv PASSED [ 14%] 2013s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_start_end PASSED [ 14%] 2013s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_invalid_input PASSED [ 14%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_bound_min PASSED [ 14%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_bound_max PASSED [ 14%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sanity_check_session_lengths PASSED [ 14%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_adhoc_holidays_specification PASSED [ 14%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_daylight_savings PASSED [ 14%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions PASSED [ 14%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_opens_closes_break_starts_ends PASSED [ 15%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_properties[both] PASSED [ 15%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes[both] PASSED [ 15%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_calendar_bounds_properties[both] PASSED [ 15%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minute_methods[both] PASSED [ 15%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minutes[both] PASSED [ 15%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_trading_minute[both] PASSED [ 15%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_break_minute[both] PASSED [ 15%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_on_minute[both] PASSED [ 15%] 2014s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_at_time[both] PASSED [ 15%] 2015s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_prev_next_minute[both] PASSED [ 15%] 2015s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[both-next] PASSED [ 15%] 2015s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[both-next] PASSED [ 15%] 2015s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[left-next] PASSED [ 15%] 2015s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[left-next] PASSED [ 15%] 2015s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_properties[left] PASSED [ 15%] 2015s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes[left] PASSED [ 15%] 2015s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_calendar_bounds_properties[left] PASSED [ 15%] 2015s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minute_methods[left] PASSED [ 15%] 2015s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minutes[left] PASSED [ 15%] 2015s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_trading_minute[left] PASSED [ 15%] 2015s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_break_minute[left] PASSED [ 15%] 2015s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_on_minute[left] PASSED [ 15%] 2015s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_at_time[left] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_prev_next_minute[left] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[left-previous] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[both-previous] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[right-previous] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[right-next] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[right-next] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_properties[right] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes[right] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_calendar_bounds_properties[right] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minute_methods[right] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minutes[right] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_trading_minute[right] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_break_minute[right] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_on_minute[right] PASSED [ 15%] 2016s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_at_time[right] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_prev_next_minute[right] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[right-none] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[right-none] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[left-none] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[left-none] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[both-none] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[both-none] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[neither-none] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[neither-previous] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_session[neither-next] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_properties[neither] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes[neither] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_calendar_bounds_properties[neither] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minute_methods[neither] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_minutes[neither] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_trading_minute[neither] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_break_minute[neither] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_on_minute[neither] PASSED [ 15%] 2017s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_open_at_time[neither] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_prev_next_minute[neither] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_past_session[neither] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_future_session[neither] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset[neither] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset_by_sessions[neither] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_in_range[neither] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_window[neither] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_distance[neither] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_to_sessions[neither] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes[neither] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes_count[neither] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_past_session[right] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_future_session[right] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset[right] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset_by_sessions[right] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_in_range[right] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_window[right] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_distance[right] PASSED [ 15%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_to_sessions[right] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes[right] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes_count[right] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_past_session[left] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_future_session[left] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset[left] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset_by_sessions[left] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_in_range[left] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_window[left] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_distance[left] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_to_sessions[left] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes[left] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes_count[left] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_past_session[both] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_to_future_session[both] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset[both] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minute_offset_by_sessions[both] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_in_range[both] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_window[both] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_distance[both] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_minutes_to_sessions[both] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes[both] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_minutes_count[both] PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_has_break PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_regular_holidays_sample PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_adhoc_holidays_sample PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_non_holidays_sample PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_late_opens_sample PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_early_closes_sample PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_early_closes_sample_time PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_early_closes_weekdays PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_early_closes_weekdays_time PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_non_early_closes_sample PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_non_early_closes_sample_time PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_late_opens PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_early_closes PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_open_close_break_start_end PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_has_break PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_next_prev_session PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_session_offset PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_is_session PASSED [ 16%] 2018s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_date_to_session PASSED [ 16%] 2019s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_prev_next_open_close PASSED [ 16%] 2019s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_in_range PASSED [ 16%] 2019s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_has_break PASSED [ 16%] 2019s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_window PASSED [ 16%] 2019s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_sessions_distance PASSED [ 16%] 2019s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_trading_index PASSED [ 16%] 2019s tests/test_xbkk_calendar.py::TestXBKKCalendar::test_deprecated PASSED [ 16%] 2019s tests/test_xbog_calendar.py::TestXBOGCalendar::test_testbase_integrity PASSED [ 16%] 2019s tests/test_xbog_calendar.py::TestXBOGCalendar::test_base_integrity PASSED [ 16%] 2021s tests/test_xbog_calendar.py::TestXBOGCalendar::test_calculated_against_csv PASSED [ 16%] 2021s tests/test_xbog_calendar.py::TestXBOGCalendar::test_start_end PASSED [ 16%] 2021s tests/test_xbog_calendar.py::TestXBOGCalendar::test_invalid_input PASSED [ 16%] 2022s tests/test_xbog_calendar.py::TestXBOGCalendar::test_bound_min PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_bound_max PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sanity_check_session_lengths PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_adhoc_holidays_specification PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_daylight_savings PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_opens_closes_break_starts_ends PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_properties[both] PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes[both] PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_calendar_bounds_properties[both] PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minute_methods[both] PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minutes[both] PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_trading_minute[both] PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_break_minute[both] PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_on_minute[both] PASSED [ 16%] 2023s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_at_time[both] PASSED [ 16%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_prev_next_minute[both] PASSED [ 16%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[both-next] PASSED [ 16%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[both-next] PASSED [ 16%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[left-next] PASSED [ 16%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[left-next] PASSED [ 16%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_properties[left] PASSED [ 16%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes[left] PASSED [ 16%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_calendar_bounds_properties[left] PASSED [ 16%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minute_methods[left] PASSED [ 16%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minutes[left] PASSED [ 16%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_trading_minute[left] PASSED [ 16%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_break_minute[left] PASSED [ 16%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_on_minute[left] PASSED [ 17%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_at_time[left] PASSED [ 17%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_prev_next_minute[left] PASSED [ 17%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[left-previous] PASSED [ 17%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 17%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[both-previous] PASSED [ 17%] 2024s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[right-previous] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[right-next] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[right-next] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_properties[right] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes[right] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_calendar_bounds_properties[right] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minute_methods[right] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minutes[right] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_trading_minute[right] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_break_minute[right] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_on_minute[right] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_at_time[right] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_prev_next_minute[right] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[right-none] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[right-none] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[left-none] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[left-none] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[both-none] PASSED [ 17%] 2025s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[both-none] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[neither-none] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[neither-previous] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_session[neither-next] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_properties[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_calendar_bounds_properties[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minute_methods[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_minutes[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_trading_minute[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_break_minute[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_on_minute[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_open_at_time[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_prev_next_minute[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_past_session[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_future_session[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset_by_sessions[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_in_range[neither] PASSED [ 17%] 2026s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_window[neither] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_distance[neither] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_to_sessions[neither] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes[neither] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes_count[neither] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_past_session[right] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_future_session[right] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset[right] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset_by_sessions[right] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_in_range[right] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_window[right] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_distance[right] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_to_sessions[right] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes[right] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes_count[right] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_past_session[left] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_future_session[left] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset[left] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset_by_sessions[left] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_in_range[left] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_window[left] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_distance[left] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_to_sessions[left] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes[left] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes_count[left] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_past_session[both] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_to_future_session[both] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset[both] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minute_offset_by_sessions[both] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_in_range[both] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_window[both] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_distance[both] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_minutes_to_sessions[both] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes[both] PASSED [ 17%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_minutes_count[both] PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_has_break PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_regular_holidays_sample PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_adhoc_holidays_sample PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_non_holidays_sample PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_late_opens_sample PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_early_closes_sample PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_early_closes_sample_time PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_early_closes_weekdays PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_early_closes_weekdays_time PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_non_early_closes_sample PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_non_early_closes_sample_time PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_late_opens PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_early_closes PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_open_close_break_start_end PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_has_break PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_next_prev_session PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_session_offset PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_is_session PASSED [ 18%] 2027s tests/test_xbog_calendar.py::TestXBOGCalendar::test_date_to_session PASSED [ 18%] 2028s tests/test_xbog_calendar.py::TestXBOGCalendar::test_prev_next_open_close PASSED [ 18%] 2028s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_in_range PASSED [ 18%] 2028s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_has_break PASSED [ 18%] 2028s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_window PASSED [ 18%] 2028s tests/test_xbog_calendar.py::TestXBOGCalendar::test_sessions_distance PASSED [ 18%] 2028s tests/test_xbog_calendar.py::TestXBOGCalendar::test_trading_index PASSED [ 18%] 2028s tests/test_xbog_calendar.py::TestXBOGCalendar::test_deprecated PASSED [ 18%] 2028s tests/test_xbom_calendar.py::TestXBOMCalendar::test_testbase_integrity PASSED [ 18%] 2028s tests/test_xbom_calendar.py::TestXBOMCalendar::test_base_integrity PASSED [ 18%] 2029s tests/test_xbom_calendar.py::TestXBOMCalendar::test_calculated_against_csv PASSED [ 18%] 2029s tests/test_xbom_calendar.py::TestXBOMCalendar::test_start_end PASSED [ 18%] 2029s tests/test_xbom_calendar.py::TestXBOMCalendar::test_invalid_input PASSED [ 18%] 2029s tests/test_xbom_calendar.py::TestXBOMCalendar::test_bound_min PASSED [ 18%] 2029s tests/test_xbom_calendar.py::TestXBOMCalendar::test_bound_max PASSED [ 18%] 2029s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sanity_check_session_lengths PASSED [ 18%] 2029s tests/test_xbom_calendar.py::TestXBOMCalendar::test_adhoc_holidays_specification PASSED [ 18%] 2029s tests/test_xbom_calendar.py::TestXBOMCalendar::test_daylight_savings PASSED [ 18%] 2029s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions PASSED [ 18%] 2029s tests/test_xbom_calendar.py::TestXBOMCalendar::test_opens_closes_break_starts_ends PASSED [ 18%] 2029s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_properties[both] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes[both] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_calendar_bounds_properties[both] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minute_methods[both] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minutes[both] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_trading_minute[both] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_break_minute[both] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_on_minute[both] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_at_time[both] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_prev_next_minute[both] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[both-next] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[both-next] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[left-next] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[left-next] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_properties[left] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes[left] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_calendar_bounds_properties[left] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minute_methods[left] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minutes[left] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_trading_minute[left] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_break_minute[left] PASSED [ 18%] 2030s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_on_minute[left] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_at_time[left] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_prev_next_minute[left] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[left-previous] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[both-previous] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[right-previous] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[right-next] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[right-next] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_properties[right] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes[right] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_calendar_bounds_properties[right] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minute_methods[right] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minutes[right] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_trading_minute[right] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_break_minute[right] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_on_minute[right] PASSED [ 18%] 2031s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_at_time[right] PASSED [ 18%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_prev_next_minute[right] PASSED [ 18%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[right-none] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[right-none] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[left-none] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[left-none] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[both-none] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[both-none] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[neither-none] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[neither-previous] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_session[neither-next] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_properties[neither] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes[neither] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_calendar_bounds_properties[neither] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minute_methods[neither] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_minutes[neither] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_trading_minute[neither] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_break_minute[neither] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_on_minute[neither] PASSED [ 19%] 2032s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_open_at_time[neither] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_prev_next_minute[neither] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_past_session[neither] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_future_session[neither] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset[neither] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset_by_sessions[neither] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_in_range[neither] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_window[neither] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_distance[neither] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_to_sessions[neither] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes[neither] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes_count[neither] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_past_session[right] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_future_session[right] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset[right] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset_by_sessions[right] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_in_range[right] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_window[right] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_distance[right] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_to_sessions[right] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes[right] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes_count[right] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_past_session[left] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_future_session[left] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset[left] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset_by_sessions[left] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_in_range[left] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_window[left] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_distance[left] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_to_sessions[left] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes[left] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes_count[left] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_past_session[both] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_to_future_session[both] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset[both] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minute_offset_by_sessions[both] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_in_range[both] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_window[both] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_distance[both] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_minutes_to_sessions[both] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes[both] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_minutes_count[both] PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_has_break PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_regular_holidays_sample PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_adhoc_holidays_sample PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_non_holidays_sample PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_late_opens_sample PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_early_closes_sample PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_early_closes_sample_time PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_early_closes_weekdays PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_early_closes_weekdays_time PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_non_early_closes_sample PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_non_early_closes_sample_time PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_late_opens PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_early_closes PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_open_close_break_start_end PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_has_break PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_next_prev_session PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_session_offset PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_is_session PASSED [ 19%] 2033s tests/test_xbom_calendar.py::TestXBOMCalendar::test_date_to_session PASSED [ 19%] 2034s tests/test_xbom_calendar.py::TestXBOMCalendar::test_prev_next_open_close PASSED [ 19%] 2034s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_in_range PASSED [ 20%] 2034s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_has_break PASSED [ 20%] 2034s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_window PASSED [ 20%] 2034s tests/test_xbom_calendar.py::TestXBOMCalendar::test_sessions_distance PASSED [ 20%] 2034s tests/test_xbom_calendar.py::TestXBOMCalendar::test_trading_index PASSED [ 20%] 2034s tests/test_xbom_calendar.py::TestXBOMCalendar::test_deprecated PASSED [ 20%] 2034s tests/test_xbru_calendar.py::TestXBRUCalendar::test_testbase_integrity PASSED [ 20%] 2034s tests/test_xbru_calendar.py::TestXBRUCalendar::test_base_integrity PASSED [ 20%] 2035s tests/test_xbru_calendar.py::TestXBRUCalendar::test_calculated_against_csv PASSED [ 20%] 2036s tests/test_xbru_calendar.py::TestXBRUCalendar::test_start_end PASSED [ 20%] 2036s tests/test_xbru_calendar.py::TestXBRUCalendar::test_invalid_input PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_bound_min PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_bound_max PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sanity_check_session_lengths PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_adhoc_holidays_specification PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_daylight_savings PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_opens_closes_break_starts_ends PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_properties[both] PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes[both] PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_calendar_bounds_properties[both] PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minute_methods[both] PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minutes[both] PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_trading_minute[both] PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_break_minute[both] PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_on_minute[both] PASSED [ 20%] 2037s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_at_time[both] PASSED [ 20%] 2038s tests/test_xbru_calendar.py::TestXBRUCalendar::test_prev_next_minute[both] PASSED [ 20%] 2038s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[both-next] PASSED [ 20%] 2038s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[both-next] PASSED [ 20%] 2038s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[left-next] PASSED [ 20%] 2038s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[left-next] PASSED [ 20%] 2038s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_properties[left] PASSED [ 20%] 2038s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes[left] PASSED [ 20%] 2038s tests/test_xbru_calendar.py::TestXBRUCalendar::test_calendar_bounds_properties[left] PASSED [ 20%] 2038s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minute_methods[left] PASSED [ 20%] 2038s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minutes[left] PASSED [ 20%] 2038s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_trading_minute[left] PASSED [ 20%] 2038s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_break_minute[left] PASSED [ 20%] 2038s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_on_minute[left] PASSED [ 20%] 2038s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_at_time[left] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_prev_next_minute[left] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[left-previous] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[both-previous] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[right-previous] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[right-next] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[right-next] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_properties[right] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes[right] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_calendar_bounds_properties[right] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minute_methods[right] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minutes[right] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_trading_minute[right] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_break_minute[right] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_on_minute[right] PASSED [ 20%] 2039s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_at_time[right] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_prev_next_minute[right] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[right-none] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[right-none] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[left-none] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[left-none] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[both-none] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[both-none] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[neither-none] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[neither-previous] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_session[neither-next] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_properties[neither] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes[neither] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_calendar_bounds_properties[neither] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minute_methods[neither] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_minutes[neither] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_trading_minute[neither] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_break_minute[neither] PASSED [ 20%] 2040s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_on_minute[neither] PASSED [ 20%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_open_at_time[neither] PASSED [ 20%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_prev_next_minute[neither] PASSED [ 20%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_past_session[neither] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_future_session[neither] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset[neither] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset_by_sessions[neither] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_in_range[neither] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_window[neither] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_distance[neither] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_to_sessions[neither] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes[neither] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes_count[neither] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_past_session[right] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_future_session[right] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset[right] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset_by_sessions[right] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_in_range[right] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_window[right] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_distance[right] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_to_sessions[right] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes[right] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes_count[right] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_past_session[left] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_future_session[left] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset[left] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset_by_sessions[left] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_in_range[left] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_window[left] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_distance[left] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_to_sessions[left] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes[left] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes_count[left] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_past_session[both] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_to_future_session[both] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset[both] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minute_offset_by_sessions[both] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_in_range[both] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_window[both] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_distance[both] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_minutes_to_sessions[both] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes[both] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_minutes_count[both] PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_has_break PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_regular_holidays_sample PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_adhoc_holidays_sample PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_non_holidays_sample PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_late_opens_sample PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_early_closes_sample PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_early_closes_sample_time PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_early_closes_weekdays PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_early_closes_weekdays_time PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_non_early_closes_sample PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_non_early_closes_sample_time PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_late_opens PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_early_closes PASSED [ 21%] 2041s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_open_close_break_start_end PASSED [ 21%] 2042s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_has_break PASSED [ 21%] 2042s tests/test_xbru_calendar.py::TestXBRUCalendar::test_next_prev_session PASSED [ 21%] 2042s tests/test_xbru_calendar.py::TestXBRUCalendar::test_session_offset PASSED [ 21%] 2042s tests/test_xbru_calendar.py::TestXBRUCalendar::test_is_session PASSED [ 21%] 2042s tests/test_xbru_calendar.py::TestXBRUCalendar::test_date_to_session PASSED [ 21%] 2043s tests/test_xbru_calendar.py::TestXBRUCalendar::test_prev_next_open_close PASSED [ 21%] 2043s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_in_range PASSED [ 21%] 2043s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_has_break PASSED [ 21%] 2043s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_window PASSED [ 21%] 2043s tests/test_xbru_calendar.py::TestXBRUCalendar::test_sessions_distance PASSED [ 21%] 2043s tests/test_xbru_calendar.py::TestXBRUCalendar::test_trading_index PASSED [ 21%] 2043s tests/test_xbru_calendar.py::TestXBRUCalendar::test_deprecated PASSED [ 21%] 2043s tests/test_xbse_calendar.py::TestXBSECalendar::test_testbase_integrity PASSED [ 21%] 2043s tests/test_xbse_calendar.py::TestXBSECalendar::test_base_integrity PASSED [ 21%] 2044s tests/test_xbse_calendar.py::TestXBSECalendar::test_calculated_against_csv PASSED [ 21%] 2044s tests/test_xbse_calendar.py::TestXBSECalendar::test_start_end PASSED [ 21%] 2044s tests/test_xbse_calendar.py::TestXBSECalendar::test_invalid_input PASSED [ 21%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_bound_min PASSED [ 21%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_bound_max PASSED [ 21%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_sanity_check_session_lengths PASSED [ 21%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_adhoc_holidays_specification PASSED [ 21%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_daylight_savings PASSED [ 21%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions PASSED [ 21%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_opens_closes_break_starts_ends PASSED [ 21%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_properties[both] PASSED [ 21%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes[both] PASSED [ 21%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_calendar_bounds_properties[both] PASSED [ 21%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minute_methods[both] PASSED [ 21%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minutes[both] PASSED [ 22%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_trading_minute[both] PASSED [ 22%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_break_minute[both] PASSED [ 22%] 2046s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_on_minute[both] PASSED [ 22%] 2047s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_at_time[both] PASSED [ 22%] 2047s tests/test_xbse_calendar.py::TestXBSECalendar::test_prev_next_minute[both] PASSED [ 22%] 2047s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[both-next] PASSED [ 22%] 2047s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[both-next] PASSED [ 22%] 2047s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[left-next] PASSED [ 22%] 2047s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[left-next] PASSED [ 22%] 2047s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_properties[left] PASSED [ 22%] 2047s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes[left] PASSED [ 22%] 2047s tests/test_xbse_calendar.py::TestXBSECalendar::test_calendar_bounds_properties[left] PASSED [ 22%] 2047s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minute_methods[left] PASSED [ 22%] 2047s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minutes[left] PASSED [ 22%] 2047s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_trading_minute[left] PASSED [ 22%] 2047s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_break_minute[left] PASSED [ 22%] 2047s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_on_minute[left] PASSED [ 22%] 2048s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_at_time[left] PASSED [ 22%] 2048s tests/test_xbse_calendar.py::TestXBSECalendar::test_prev_next_minute[left] PASSED [ 22%] 2048s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[left-previous] PASSED [ 22%] 2048s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 22%] 2048s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[both-previous] PASSED [ 22%] 2048s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 22%] 2048s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[right-previous] PASSED [ 22%] 2048s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 22%] 2048s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[right-next] PASSED [ 22%] 2048s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[right-next] PASSED [ 22%] 2048s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_properties[right] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes[right] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_calendar_bounds_properties[right] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minute_methods[right] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minutes[right] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_trading_minute[right] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_break_minute[right] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_on_minute[right] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_at_time[right] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_prev_next_minute[right] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[right-none] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[right-none] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[left-none] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[left-none] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[both-none] PASSED [ 22%] 2049s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[both-none] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[neither-none] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[neither-previous] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_session[neither-next] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_properties[neither] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes[neither] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_calendar_bounds_properties[neither] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minute_methods[neither] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_minutes[neither] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_trading_minute[neither] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_break_minute[neither] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_on_minute[neither] PASSED [ 22%] 2050s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_open_at_time[neither] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_prev_next_minute[neither] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_past_session[neither] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_future_session[neither] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset[neither] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset_by_sessions[neither] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_in_range[neither] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_window[neither] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_distance[neither] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_to_sessions[neither] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes[neither] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes_count[neither] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_past_session[right] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_future_session[right] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset[right] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset_by_sessions[right] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_in_range[right] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_window[right] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_distance[right] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_to_sessions[right] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes[right] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes_count[right] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_past_session[left] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_future_session[left] PASSED [ 22%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset[left] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset_by_sessions[left] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_in_range[left] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_window[left] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_distance[left] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_to_sessions[left] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes[left] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes_count[left] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_past_session[both] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_to_future_session[both] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset[both] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minute_offset_by_sessions[both] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_in_range[both] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_window[both] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_distance[both] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_minutes_to_sessions[both] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes[both] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_minutes_count[both] PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_has_break PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_regular_holidays_sample PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_adhoc_holidays_sample PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_non_holidays_sample PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_late_opens_sample PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_early_closes_sample PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_early_closes_sample_time PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_early_closes_weekdays PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_early_closes_weekdays_time PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_non_early_closes_sample PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_non_early_closes_sample_time PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_late_opens PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_early_closes PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_open_close_break_start_end PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_has_break PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_next_prev_session PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_session_offset PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_is_session PASSED [ 23%] 2051s tests/test_xbse_calendar.py::TestXBSECalendar::test_date_to_session PASSED [ 23%] 2052s tests/test_xbse_calendar.py::TestXBSECalendar::test_prev_next_open_close PASSED [ 23%] 2052s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_in_range PASSED [ 23%] 2052s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_has_break PASSED [ 23%] 2052s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_window PASSED [ 23%] 2052s tests/test_xbse_calendar.py::TestXBSECalendar::test_sessions_distance PASSED [ 23%] 2052s tests/test_xbse_calendar.py::TestXBSECalendar::test_trading_index PASSED [ 23%] 2053s tests/test_xbse_calendar.py::TestXBSECalendar::test_deprecated PASSED [ 23%] 2053s tests/test_xbud_calendar.py::TestXBUDCalendar::test_testbase_integrity PASSED [ 23%] 2053s tests/test_xbud_calendar.py::TestXBUDCalendar::test_base_integrity PASSED [ 23%] 2054s tests/test_xbud_calendar.py::TestXBUDCalendar::test_calculated_against_csv PASSED [ 23%] 2054s tests/test_xbud_calendar.py::TestXBUDCalendar::test_start_end PASSED [ 23%] 2055s tests/test_xbud_calendar.py::TestXBUDCalendar::test_invalid_input PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_bound_min PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_bound_max PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sanity_check_session_lengths PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_adhoc_holidays_specification PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_daylight_savings PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_opens_closes_break_starts_ends PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_properties[both] PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes[both] PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_calendar_bounds_properties[both] PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minute_methods[both] PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minutes[both] PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_trading_minute[both] PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_break_minute[both] PASSED [ 23%] 2056s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_on_minute[both] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_at_time[both] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_prev_next_minute[both] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[both-next] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[both-next] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[left-next] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[left-next] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_properties[left] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes[left] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_calendar_bounds_properties[left] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minute_methods[left] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minutes[left] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_trading_minute[left] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_break_minute[left] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_on_minute[left] PASSED [ 23%] 2057s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_at_time[left] PASSED [ 23%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_prev_next_minute[left] PASSED [ 23%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[left-previous] PASSED [ 23%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 23%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[both-previous] PASSED [ 24%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 24%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[right-previous] PASSED [ 24%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 24%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[right-next] PASSED [ 24%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[right-next] PASSED [ 24%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_properties[right] PASSED [ 24%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes[right] PASSED [ 24%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_calendar_bounds_properties[right] PASSED [ 24%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minute_methods[right] PASSED [ 24%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minutes[right] PASSED [ 24%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_trading_minute[right] PASSED [ 24%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_break_minute[right] PASSED [ 24%] 2058s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_on_minute[right] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_at_time[right] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_prev_next_minute[right] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[right-none] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[right-none] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[left-none] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[left-none] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[both-none] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[both-none] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[neither-none] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[neither-previous] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_session[neither-next] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_properties[neither] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes[neither] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_calendar_bounds_properties[neither] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minute_methods[neither] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_minutes[neither] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_trading_minute[neither] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_break_minute[neither] PASSED [ 24%] 2059s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_on_minute[neither] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_open_at_time[neither] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_prev_next_minute[neither] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_past_session[neither] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_future_session[neither] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset[neither] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset_by_sessions[neither] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_in_range[neither] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_window[neither] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_distance[neither] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_to_sessions[neither] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes[neither] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes_count[neither] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_past_session[right] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_future_session[right] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset[right] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset_by_sessions[right] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_in_range[right] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_window[right] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_distance[right] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_to_sessions[right] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes[right] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes_count[right] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_past_session[left] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_future_session[left] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset[left] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset_by_sessions[left] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_in_range[left] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_window[left] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_distance[left] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_to_sessions[left] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes[left] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes_count[left] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_past_session[both] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_to_future_session[both] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset[both] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minute_offset_by_sessions[both] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_in_range[both] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_window[both] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_distance[both] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_minutes_to_sessions[both] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes[both] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_minutes_count[both] PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_has_break PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_regular_holidays_sample PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_adhoc_holidays_sample PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_non_holidays_sample PASSED [ 24%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_late_opens_sample PASSED [ 25%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_early_closes_sample PASSED [ 25%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_early_closes_sample_time PASSED [ 25%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_early_closes_weekdays PASSED [ 25%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_early_closes_weekdays_time PASSED [ 25%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_non_early_closes_sample PASSED [ 25%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_non_early_closes_sample_time PASSED [ 25%] 2060s tests/test_xbud_calendar.py::TestXBUDCalendar::test_late_opens PASSED [ 25%] 2061s tests/test_xbud_calendar.py::TestXBUDCalendar::test_early_closes PASSED [ 25%] 2061s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_open_close_break_start_end PASSED [ 25%] 2061s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_has_break PASSED [ 25%] 2061s tests/test_xbud_calendar.py::TestXBUDCalendar::test_next_prev_session PASSED [ 25%] 2061s tests/test_xbud_calendar.py::TestXBUDCalendar::test_session_offset PASSED [ 25%] 2061s tests/test_xbud_calendar.py::TestXBUDCalendar::test_is_session PASSED [ 25%] 2061s tests/test_xbud_calendar.py::TestXBUDCalendar::test_date_to_session PASSED [ 25%] 2062s tests/test_xbud_calendar.py::TestXBUDCalendar::test_prev_next_open_close PASSED [ 25%] 2062s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_in_range PASSED [ 25%] 2062s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_has_break PASSED [ 25%] 2062s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_window PASSED [ 25%] 2062s tests/test_xbud_calendar.py::TestXBUDCalendar::test_sessions_distance PASSED [ 25%] 2062s tests/test_xbud_calendar.py::TestXBUDCalendar::test_trading_index PASSED [ 25%] 2062s tests/test_xbud_calendar.py::TestXBUDCalendar::test_deprecated PASSED [ 25%] 2062s tests/test_xbue_calendar.py::TestXBUECalendar::test_testbase_integrity PASSED [ 25%] 2062s tests/test_xbue_calendar.py::TestXBUECalendar::test_base_integrity PASSED [ 25%] 2064s tests/test_xbue_calendar.py::TestXBUECalendar::test_calculated_against_csv PASSED [ 25%] 2064s tests/test_xbue_calendar.py::TestXBUECalendar::test_start_end PASSED [ 25%] 2064s tests/test_xbue_calendar.py::TestXBUECalendar::test_invalid_input PASSED [ 25%] 2065s tests/test_xbue_calendar.py::TestXBUECalendar::test_bound_min PASSED [ 25%] 2065s tests/test_xbue_calendar.py::TestXBUECalendar::test_bound_max PASSED [ 25%] 2065s tests/test_xbue_calendar.py::TestXBUECalendar::test_sanity_check_session_lengths PASSED [ 25%] 2065s tests/test_xbue_calendar.py::TestXBUECalendar::test_adhoc_holidays_specification PASSED [ 25%] 2065s tests/test_xbue_calendar.py::TestXBUECalendar::test_daylight_savings PASSED [ 25%] 2065s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions PASSED [ 25%] 2065s tests/test_xbue_calendar.py::TestXBUECalendar::test_opens_closes_break_starts_ends PASSED [ 25%] 2065s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_properties[both] PASSED [ 25%] 2066s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes[both] PASSED [ 25%] 2066s tests/test_xbue_calendar.py::TestXBUECalendar::test_calendar_bounds_properties[both] PASSED [ 25%] 2066s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minute_methods[both] PASSED [ 25%] 2066s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minutes[both] PASSED [ 25%] 2066s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_trading_minute[both] PASSED [ 25%] 2066s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_break_minute[both] PASSED [ 25%] 2066s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_on_minute[both] PASSED [ 25%] 2066s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_at_time[both] PASSED [ 25%] 2066s tests/test_xbue_calendar.py::TestXBUECalendar::test_prev_next_minute[both] PASSED [ 25%] 2066s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[both-next] PASSED [ 25%] 2066s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[both-next] PASSED [ 25%] 2066s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[left-next] PASSED [ 25%] 2066s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[left-next] PASSED [ 25%] 2066s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_properties[left] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes[left] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_calendar_bounds_properties[left] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minute_methods[left] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minutes[left] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_trading_minute[left] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_break_minute[left] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_on_minute[left] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_at_time[left] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_prev_next_minute[left] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[left-previous] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[both-previous] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[right-previous] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[right-next] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[right-next] PASSED [ 25%] 2067s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_properties[right] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes[right] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_calendar_bounds_properties[right] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minute_methods[right] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minutes[right] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_trading_minute[right] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_break_minute[right] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_on_minute[right] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_at_time[right] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_prev_next_minute[right] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[right-none] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[right-none] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[left-none] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[left-none] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[both-none] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[both-none] PASSED [ 25%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[neither-none] PASSED [ 26%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 26%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[neither-previous] PASSED [ 26%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 26%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_session[neither-next] PASSED [ 26%] 2068s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_properties[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_calendar_bounds_properties[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minute_methods[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_minutes[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_trading_minute[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_break_minute[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_on_minute[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_open_at_time[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_prev_next_minute[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_past_session[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_future_session[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset_by_sessions[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_in_range[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_window[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_distance[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_to_sessions[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes_count[neither] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_past_session[right] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_future_session[right] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset[right] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset_by_sessions[right] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_in_range[right] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_window[right] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_distance[right] PASSED [ 26%] 2069s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_to_sessions[right] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes[right] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes_count[right] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_past_session[left] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_future_session[left] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset[left] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset_by_sessions[left] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_in_range[left] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_window[left] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_distance[left] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_to_sessions[left] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes[left] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes_count[left] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_past_session[both] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_to_future_session[both] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset[both] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minute_offset_by_sessions[both] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_in_range[both] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_window[both] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_distance[both] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_minutes_to_sessions[both] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes[both] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_minutes_count[both] PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_has_break PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_regular_holidays_sample PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_adhoc_holidays_sample PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_non_holidays_sample PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_late_opens_sample PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_early_closes_sample PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_early_closes_sample_time PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_early_closes_weekdays PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_early_closes_weekdays_time PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_non_early_closes_sample PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_non_early_closes_sample_time PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_late_opens PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_early_closes PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_open_close_break_start_end PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_has_break PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_next_prev_session PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_session_offset PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_is_session PASSED [ 26%] 2070s tests/test_xbue_calendar.py::TestXBUECalendar::test_date_to_session PASSED [ 26%] 2071s tests/test_xbue_calendar.py::TestXBUECalendar::test_prev_next_open_close PASSED [ 26%] 2071s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_in_range PASSED [ 26%] 2071s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_has_break PASSED [ 26%] 2071s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_window PASSED [ 26%] 2071s tests/test_xbue_calendar.py::TestXBUECalendar::test_sessions_distance PASSED [ 26%] 2071s tests/test_xbue_calendar.py::TestXBUECalendar::test_trading_index PASSED [ 26%] 2071s tests/test_xbue_calendar.py::TestXBUECalendar::test_deprecated PASSED [ 26%] 2071s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_testbase_integrity PASSED [ 27%] 2071s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_base_integrity PASSED [ 27%] 2073s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_calculated_against_csv PASSED [ 27%] 2073s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_start_end PASSED [ 27%] 2073s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_invalid_input PASSED [ 27%] 2074s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_bound_min PASSED [ 27%] 2074s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_bound_max PASSED [ 27%] 2074s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sanity_check_session_lengths PASSED [ 27%] 2074s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_adhoc_holidays_specification PASSED [ 27%] 2074s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_daylight_savings PASSED [ 27%] 2074s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions PASSED [ 27%] 2074s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_opens_closes_break_starts_ends PASSED [ 27%] 2074s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_properties[both] PASSED [ 27%] 2075s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes[both] PASSED [ 27%] 2075s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_calendar_bounds_properties[both] PASSED [ 27%] 2075s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minute_methods[both] PASSED [ 27%] 2075s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minutes[both] PASSED [ 27%] 2075s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_trading_minute[both] PASSED [ 27%] 2075s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_break_minute[both] PASSED [ 27%] 2075s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_on_minute[both] PASSED [ 27%] 2075s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_at_time[both] PASSED [ 27%] 2075s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_prev_next_minute[both] PASSED [ 27%] 2075s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[both-next] PASSED [ 27%] 2075s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[both-next] PASSED [ 27%] 2075s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[left-next] PASSED [ 27%] 2075s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[left-next] PASSED [ 27%] 2075s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_properties[left] PASSED [ 27%] 2076s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes[left] PASSED [ 27%] 2076s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_calendar_bounds_properties[left] PASSED [ 27%] 2076s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minute_methods[left] PASSED [ 27%] 2076s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minutes[left] PASSED [ 27%] 2076s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_trading_minute[left] PASSED [ 27%] 2076s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_break_minute[left] PASSED [ 27%] 2076s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_on_minute[left] PASSED [ 27%] 2076s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_at_time[left] PASSED [ 27%] 2076s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_prev_next_minute[left] PASSED [ 27%] 2076s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[left-previous] PASSED [ 27%] 2076s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 27%] 2076s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[both-previous] PASSED [ 27%] 2076s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 27%] 2077s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[right-previous] PASSED [ 27%] 2077s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 27%] 2077s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[right-next] PASSED [ 27%] 2077s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[right-next] PASSED [ 27%] 2077s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_properties[right] PASSED [ 27%] 2077s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes[right] PASSED [ 27%] 2077s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_calendar_bounds_properties[right] PASSED [ 27%] 2077s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minute_methods[right] PASSED [ 27%] 2077s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minutes[right] PASSED [ 27%] 2077s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_trading_minute[right] PASSED [ 27%] 2077s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_break_minute[right] PASSED [ 27%] 2077s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_on_minute[right] PASSED [ 27%] 2077s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_at_time[right] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_prev_next_minute[right] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[right-none] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[right-none] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[left-none] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[left-none] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[both-none] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[both-none] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[neither-none] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[neither-previous] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_session[neither-next] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_properties[neither] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes[neither] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_calendar_bounds_properties[neither] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minute_methods[neither] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_minutes[neither] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_trading_minute[neither] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_break_minute[neither] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_on_minute[neither] PASSED [ 27%] 2078s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_open_at_time[neither] PASSED [ 27%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_prev_next_minute[neither] PASSED [ 27%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_past_session[neither] PASSED [ 27%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_future_session[neither] PASSED [ 27%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset[neither] PASSED [ 27%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset_by_sessions[neither] PASSED [ 27%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_in_range[neither] PASSED [ 27%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_window[neither] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_distance[neither] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_to_sessions[neither] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes[neither] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes_count[neither] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_past_session[right] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_future_session[right] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset[right] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset_by_sessions[right] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_in_range[right] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_window[right] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_distance[right] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_to_sessions[right] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes[right] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes_count[right] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_past_session[left] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_future_session[left] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset[left] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset_by_sessions[left] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_in_range[left] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_window[left] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_distance[left] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_to_sessions[left] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes[left] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes_count[left] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_past_session[both] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_to_future_session[both] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset[both] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minute_offset_by_sessions[both] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_in_range[both] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_window[both] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_distance[both] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_minutes_to_sessions[both] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes[both] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_minutes_count[both] PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_has_break PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_regular_holidays_sample PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_adhoc_holidays_sample PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_non_holidays_sample PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_late_opens_sample PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_early_closes_sample PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_early_closes_sample_time PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_early_closes_weekdays PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_early_closes_weekdays_time PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_non_early_closes_sample PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_non_early_closes_sample_time PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_late_opens PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_early_closes PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_open_close_break_start_end PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_has_break PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_next_prev_session PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_session_offset PASSED [ 28%] 2079s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_is_session PASSED [ 28%] 2080s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_date_to_session PASSED [ 28%] 2080s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_prev_next_open_close PASSED [ 28%] 2080s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_in_range PASSED [ 28%] 2080s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_has_break PASSED [ 28%] 2080s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_window PASSED [ 28%] 2081s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_sessions_distance PASSED [ 28%] 2081s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_trading_index PASSED [ 28%] 2081s tests/test_xcbf_calendar.py::TestXCBFCalendar::test_deprecated PASSED [ 28%] 2081s tests/test_xcse_calendar.py::TestXCSECalendar::test_testbase_integrity PASSED [ 28%] 2081s tests/test_xcse_calendar.py::TestXCSECalendar::test_base_integrity PASSED [ 28%] 2082s tests/test_xcse_calendar.py::TestXCSECalendar::test_calculated_against_csv PASSED [ 28%] 2082s tests/test_xcse_calendar.py::TestXCSECalendar::test_start_end PASSED [ 28%] 2083s tests/test_xcse_calendar.py::TestXCSECalendar::test_invalid_input PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_bound_min PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_bound_max PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_sanity_check_session_lengths PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_adhoc_holidays_specification PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_daylight_savings PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_opens_closes_break_starts_ends PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_properties[both] PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes[both] PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_calendar_bounds_properties[both] PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minute_methods[both] PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minutes[both] PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_trading_minute[both] PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_break_minute[both] PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_on_minute[both] PASSED [ 28%] 2084s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_at_time[both] PASSED [ 28%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_prev_next_minute[both] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[both-next] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[both-next] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[left-next] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[left-next] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_properties[left] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes[left] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_calendar_bounds_properties[left] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minute_methods[left] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minutes[left] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_trading_minute[left] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_break_minute[left] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_on_minute[left] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_at_time[left] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_prev_next_minute[left] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[left-previous] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[both-previous] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[right-previous] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[right-next] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[right-next] PASSED [ 29%] 2086s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_properties[right] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes[right] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_calendar_bounds_properties[right] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minute_methods[right] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minutes[right] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_trading_minute[right] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_break_minute[right] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_on_minute[right] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_at_time[right] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_prev_next_minute[right] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[right-none] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[right-none] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[left-none] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[left-none] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[both-none] PASSED [ 29%] 2087s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[both-none] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[neither-none] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[neither-previous] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_session[neither-next] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_properties[neither] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes[neither] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_calendar_bounds_properties[neither] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minute_methods[neither] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_minutes[neither] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_trading_minute[neither] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_break_minute[neither] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_on_minute[neither] PASSED [ 29%] 2088s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_open_at_time[neither] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_prev_next_minute[neither] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_past_session[neither] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_future_session[neither] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset[neither] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset_by_sessions[neither] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_in_range[neither] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_window[neither] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_distance[neither] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_to_sessions[neither] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes[neither] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes_count[neither] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_past_session[right] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_future_session[right] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset[right] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset_by_sessions[right] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_in_range[right] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_window[right] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_distance[right] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_to_sessions[right] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes[right] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes_count[right] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_past_session[left] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_future_session[left] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset[left] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset_by_sessions[left] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_in_range[left] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_window[left] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_distance[left] PASSED [ 29%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_to_sessions[left] PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes[left] PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes_count[left] PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_past_session[both] PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_to_future_session[both] PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset[both] PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minute_offset_by_sessions[both] PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_in_range[both] PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_window[both] PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_distance[both] PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_minutes_to_sessions[both] PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes[both] PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_minutes_count[both] PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_has_break PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_regular_holidays_sample PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_adhoc_holidays_sample PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_non_holidays_sample PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_late_opens_sample PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_early_closes_sample PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_early_closes_sample_time PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_early_closes_weekdays PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_early_closes_weekdays_time PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_non_early_closes_sample PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_non_early_closes_sample_time PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_late_opens PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_early_closes PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_open_close_break_start_end PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_has_break PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_next_prev_session PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_session_offset PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_is_session PASSED [ 30%] 2089s tests/test_xcse_calendar.py::TestXCSECalendar::test_date_to_session PASSED [ 30%] 2090s tests/test_xcse_calendar.py::TestXCSECalendar::test_prev_next_open_close PASSED [ 30%] 2090s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_in_range PASSED [ 30%] 2090s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_has_break PASSED [ 30%] 2090s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_window PASSED [ 30%] 2090s tests/test_xcse_calendar.py::TestXCSECalendar::test_sessions_distance PASSED [ 30%] 2091s tests/test_xcse_calendar.py::TestXCSECalendar::test_trading_index PASSED [ 30%] 2091s tests/test_xcse_calendar.py::TestXCSECalendar::test_deprecated PASSED [ 30%] 2091s tests/test_xdub_calendar.py::TestXDUBCalendar::test_testbase_integrity PASSED [ 30%] 2091s tests/test_xdub_calendar.py::TestXDUBCalendar::test_base_integrity PASSED [ 30%] 2092s tests/test_xdub_calendar.py::TestXDUBCalendar::test_calculated_against_csv PASSED [ 30%] 2092s tests/test_xdub_calendar.py::TestXDUBCalendar::test_start_end PASSED [ 30%] 2092s tests/test_xdub_calendar.py::TestXDUBCalendar::test_invalid_input PASSED [ 30%] 2093s tests/test_xdub_calendar.py::TestXDUBCalendar::test_bound_min PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_bound_max PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sanity_check_session_lengths PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_adhoc_holidays_specification PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_daylight_savings PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_opens_closes_break_starts_ends PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_properties[both] PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes[both] PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_calendar_bounds_properties[both] PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minute_methods[both] PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minutes[both] PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_trading_minute[both] PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_break_minute[both] PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_on_minute[both] PASSED [ 30%] 2094s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_at_time[both] PASSED [ 30%] 2095s tests/test_xdub_calendar.py::TestXDUBCalendar::test_prev_next_minute[both] PASSED [ 30%] 2095s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[both-next] PASSED [ 30%] 2095s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[both-next] PASSED [ 30%] 2095s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[left-next] PASSED [ 30%] 2095s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[left-next] PASSED [ 30%] 2095s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_properties[left] PASSED [ 30%] 2095s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes[left] PASSED [ 30%] 2095s tests/test_xdub_calendar.py::TestXDUBCalendar::test_calendar_bounds_properties[left] PASSED [ 30%] 2095s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minute_methods[left] PASSED [ 30%] 2095s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minutes[left] PASSED [ 30%] 2095s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_trading_minute[left] PASSED [ 30%] 2095s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_break_minute[left] PASSED [ 30%] 2095s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_on_minute[left] PASSED [ 30%] 2095s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_at_time[left] PASSED [ 30%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_prev_next_minute[left] PASSED [ 30%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[left-previous] PASSED [ 30%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 30%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[both-previous] PASSED [ 30%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 30%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[right-previous] PASSED [ 30%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 30%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[right-next] PASSED [ 30%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[right-next] PASSED [ 31%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_properties[right] PASSED [ 31%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes[right] PASSED [ 31%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_calendar_bounds_properties[right] PASSED [ 31%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minute_methods[right] PASSED [ 31%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minutes[right] PASSED [ 31%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_trading_minute[right] PASSED [ 31%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_break_minute[right] PASSED [ 31%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_on_minute[right] PASSED [ 31%] 2096s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_at_time[right] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_prev_next_minute[right] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[right-none] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[right-none] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[left-none] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[left-none] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[both-none] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[both-none] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[neither-none] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[neither-previous] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_session[neither-next] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_properties[neither] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes[neither] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_calendar_bounds_properties[neither] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minute_methods[neither] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_minutes[neither] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_trading_minute[neither] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_break_minute[neither] PASSED [ 31%] 2097s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_on_minute[neither] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_open_at_time[neither] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_prev_next_minute[neither] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_past_session[neither] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_future_session[neither] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset[neither] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset_by_sessions[neither] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_in_range[neither] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_window[neither] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_distance[neither] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_to_sessions[neither] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes[neither] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes_count[neither] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_past_session[right] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_future_session[right] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset[right] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset_by_sessions[right] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_in_range[right] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_window[right] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_distance[right] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_to_sessions[right] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes[right] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes_count[right] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_past_session[left] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_future_session[left] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset[left] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset_by_sessions[left] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_in_range[left] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_window[left] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_distance[left] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_to_sessions[left] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes[left] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes_count[left] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_past_session[both] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_to_future_session[both] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset[both] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minute_offset_by_sessions[both] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_in_range[both] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_window[both] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_distance[both] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_minutes_to_sessions[both] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes[both] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_minutes_count[both] PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_has_break PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_regular_holidays_sample PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_adhoc_holidays_sample PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_non_holidays_sample PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_late_opens_sample PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_early_closes_sample PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_early_closes_sample_time PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_early_closes_weekdays PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_early_closes_weekdays_time PASSED [ 31%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_non_early_closes_sample PASSED [ 32%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_non_early_closes_sample_time PASSED [ 32%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_late_opens PASSED [ 32%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_early_closes PASSED [ 32%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_open_close_break_start_end PASSED [ 32%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_has_break PASSED [ 32%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_next_prev_session PASSED [ 32%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_session_offset PASSED [ 32%] 2098s tests/test_xdub_calendar.py::TestXDUBCalendar::test_is_session PASSED [ 32%] 2099s tests/test_xdub_calendar.py::TestXDUBCalendar::test_date_to_session PASSED [ 32%] 2100s tests/test_xdub_calendar.py::TestXDUBCalendar::test_prev_next_open_close PASSED [ 32%] 2100s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_in_range PASSED [ 32%] 2100s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_has_break PASSED [ 32%] 2100s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_window PASSED [ 32%] 2100s tests/test_xdub_calendar.py::TestXDUBCalendar::test_sessions_distance PASSED [ 32%] 2100s tests/test_xdub_calendar.py::TestXDUBCalendar::test_trading_index PASSED [ 32%] 2100s tests/test_xdub_calendar.py::TestXDUBCalendar::test_deprecated PASSED [ 32%] 2100s tests/test_xdus_calendar.py::TestXDUSCalendar::test_testbase_integrity PASSED [ 32%] 2100s tests/test_xdus_calendar.py::TestXDUSCalendar::test_base_integrity PASSED [ 32%] 2101s tests/test_xdus_calendar.py::TestXDUSCalendar::test_calculated_against_csv PASSED [ 32%] 2101s tests/test_xdus_calendar.py::TestXDUSCalendar::test_start_end PASSED [ 32%] 2101s tests/test_xdus_calendar.py::TestXDUSCalendar::test_invalid_input PASSED [ 32%] 2102s tests/test_xdus_calendar.py::TestXDUSCalendar::test_bound_min PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_bound_max PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sanity_check_session_lengths PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_adhoc_holidays_specification PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_daylight_savings PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_opens_closes_break_starts_ends PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_properties[both] PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes[both] PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_calendar_bounds_properties[both] PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minute_methods[both] PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minutes[both] PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_trading_minute[both] PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_break_minute[both] PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_on_minute[both] PASSED [ 32%] 2103s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_at_time[both] PASSED [ 32%] 2104s tests/test_xdus_calendar.py::TestXDUSCalendar::test_prev_next_minute[both] PASSED [ 32%] 2104s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[both-next] PASSED [ 32%] 2104s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[both-next] PASSED [ 32%] 2104s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[left-next] PASSED [ 32%] 2104s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[left-next] PASSED [ 32%] 2104s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_properties[left] PASSED [ 32%] 2104s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes[left] PASSED [ 32%] 2104s tests/test_xdus_calendar.py::TestXDUSCalendar::test_calendar_bounds_properties[left] PASSED [ 32%] 2104s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minute_methods[left] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minutes[left] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_trading_minute[left] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_break_minute[left] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_on_minute[left] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_at_time[left] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_prev_next_minute[left] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[left-previous] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[both-previous] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[right-previous] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[right-next] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[right-next] PASSED [ 32%] 2105s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_properties[right] PASSED [ 32%] 2106s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes[right] PASSED [ 32%] 2106s tests/test_xdus_calendar.py::TestXDUSCalendar::test_calendar_bounds_properties[right] PASSED [ 32%] 2106s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minute_methods[right] PASSED [ 32%] 2106s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minutes[right] PASSED [ 32%] 2106s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_trading_minute[right] PASSED [ 32%] 2106s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_break_minute[right] PASSED [ 32%] 2106s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_on_minute[right] PASSED [ 32%] 2106s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_at_time[right] PASSED [ 32%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_prev_next_minute[right] PASSED [ 32%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[right-none] PASSED [ 32%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[right-none] PASSED [ 32%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[left-none] PASSED [ 32%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[left-none] PASSED [ 32%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[both-none] PASSED [ 32%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[both-none] PASSED [ 32%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[neither-none] PASSED [ 32%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 32%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[neither-previous] PASSED [ 32%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 32%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_session[neither-next] PASSED [ 32%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 33%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_properties[neither] PASSED [ 33%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes[neither] PASSED [ 33%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_calendar_bounds_properties[neither] PASSED [ 33%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minute_methods[neither] PASSED [ 33%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_minutes[neither] PASSED [ 33%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_trading_minute[neither] PASSED [ 33%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_break_minute[neither] PASSED [ 33%] 2107s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_on_minute[neither] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_open_at_time[neither] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_prev_next_minute[neither] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_past_session[neither] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_future_session[neither] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset[neither] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset_by_sessions[neither] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_in_range[neither] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_window[neither] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_distance[neither] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_to_sessions[neither] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes[neither] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes_count[neither] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_past_session[right] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_future_session[right] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset[right] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset_by_sessions[right] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_in_range[right] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_window[right] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_distance[right] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_to_sessions[right] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes[right] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes_count[right] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_past_session[left] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_future_session[left] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset[left] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset_by_sessions[left] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_in_range[left] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_window[left] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_distance[left] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_to_sessions[left] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes[left] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes_count[left] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_past_session[both] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_to_future_session[both] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset[both] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minute_offset_by_sessions[both] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_in_range[both] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_window[both] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_distance[both] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_minutes_to_sessions[both] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes[both] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_minutes_count[both] PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_has_break PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_regular_holidays_sample PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_adhoc_holidays_sample PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_non_holidays_sample PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_late_opens_sample PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_early_closes_sample PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_early_closes_sample_time PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_early_closes_weekdays PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_early_closes_weekdays_time PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_non_early_closes_sample PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_non_early_closes_sample_time PASSED [ 33%] 2108s tests/test_xdus_calendar.py::TestXDUSCalendar::test_late_opens PASSED [ 33%] 2109s tests/test_xdus_calendar.py::TestXDUSCalendar::test_early_closes PASSED [ 33%] 2109s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_open_close_break_start_end PASSED [ 33%] 2109s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_has_break PASSED [ 33%] 2109s tests/test_xdus_calendar.py::TestXDUSCalendar::test_next_prev_session PASSED [ 33%] 2109s tests/test_xdus_calendar.py::TestXDUSCalendar::test_session_offset PASSED [ 33%] 2109s tests/test_xdus_calendar.py::TestXDUSCalendar::test_is_session PASSED [ 33%] 2109s tests/test_xdus_calendar.py::TestXDUSCalendar::test_date_to_session PASSED [ 33%] 2110s tests/test_xdus_calendar.py::TestXDUSCalendar::test_prev_next_open_close PASSED [ 33%] 2110s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_in_range PASSED [ 33%] 2110s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_has_break PASSED [ 33%] 2110s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_window PASSED [ 33%] 2110s tests/test_xdus_calendar.py::TestXDUSCalendar::test_sessions_distance PASSED [ 33%] 2110s tests/test_xdus_calendar.py::TestXDUSCalendar::test_trading_index PASSED [ 33%] 2110s tests/test_xdus_calendar.py::TestXDUSCalendar::test_deprecated PASSED [ 33%] 2110s tests/test_xeee_calendar.py::TestXEEECalendar::test_testbase_integrity PASSED [ 33%] 2110s tests/test_xeee_calendar.py::TestXEEECalendar::test_base_integrity PASSED [ 33%] 2112s tests/test_xeee_calendar.py::TestXEEECalendar::test_calculated_against_csv PASSED [ 33%] 2112s tests/test_xeee_calendar.py::TestXEEECalendar::test_start_end PASSED [ 33%] 2112s tests/test_xeee_calendar.py::TestXEEECalendar::test_invalid_input PASSED [ 33%] 2113s tests/test_xeee_calendar.py::TestXEEECalendar::test_bound_min PASSED [ 34%] 2113s tests/test_xeee_calendar.py::TestXEEECalendar::test_bound_max PASSED [ 34%] 2113s tests/test_xeee_calendar.py::TestXEEECalendar::test_sanity_check_session_lengths PASSED [ 34%] 2113s tests/test_xeee_calendar.py::TestXEEECalendar::test_adhoc_holidays_specification PASSED [ 34%] 2113s tests/test_xeee_calendar.py::TestXEEECalendar::test_daylight_savings PASSED [ 34%] 2113s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions PASSED [ 34%] 2113s tests/test_xeee_calendar.py::TestXEEECalendar::test_opens_closes_break_starts_ends PASSED [ 34%] 2113s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_properties[both] PASSED [ 34%] 2114s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes[both] PASSED [ 34%] 2114s tests/test_xeee_calendar.py::TestXEEECalendar::test_calendar_bounds_properties[both] PASSED [ 34%] 2114s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minute_methods[both] PASSED [ 34%] 2114s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minutes[both] PASSED [ 34%] 2114s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_trading_minute[both] PASSED [ 34%] 2114s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_break_minute[both] PASSED [ 34%] 2114s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_on_minute[both] PASSED [ 34%] 2114s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_at_time[both] PASSED [ 34%] 2114s tests/test_xeee_calendar.py::TestXEEECalendar::test_prev_next_minute[both] PASSED [ 34%] 2114s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[both-next] PASSED [ 34%] 2114s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[both-next] PASSED [ 34%] 2114s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[left-next] PASSED [ 34%] 2114s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[left-next] PASSED [ 34%] 2114s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_properties[left] PASSED [ 34%] 2115s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes[left] PASSED [ 34%] 2115s tests/test_xeee_calendar.py::TestXEEECalendar::test_calendar_bounds_properties[left] PASSED [ 34%] 2115s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minute_methods[left] PASSED [ 34%] 2115s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minutes[left] PASSED [ 34%] 2115s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_trading_minute[left] PASSED [ 34%] 2115s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_break_minute[left] PASSED [ 34%] 2115s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_on_minute[left] PASSED [ 34%] 2115s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_at_time[left] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_prev_next_minute[left] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[left-previous] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[both-previous] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[right-previous] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[right-next] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[right-next] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_properties[right] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes[right] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_calendar_bounds_properties[right] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minute_methods[right] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minutes[right] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_trading_minute[right] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_break_minute[right] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_on_minute[right] PASSED [ 34%] 2116s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_at_time[right] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_prev_next_minute[right] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[right-none] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[right-none] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[left-none] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[left-none] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[both-none] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[both-none] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[neither-none] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[neither-previous] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_session[neither-next] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_properties[neither] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes[neither] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_calendar_bounds_properties[neither] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minute_methods[neither] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_minutes[neither] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_trading_minute[neither] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_break_minute[neither] PASSED [ 34%] 2117s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_on_minute[neither] PASSED [ 34%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_open_at_time[neither] PASSED [ 34%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_prev_next_minute[neither] PASSED [ 34%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_past_session[neither] PASSED [ 34%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_future_session[neither] PASSED [ 34%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset[neither] PASSED [ 34%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset_by_sessions[neither] PASSED [ 34%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_in_range[neither] PASSED [ 34%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_window[neither] PASSED [ 34%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_distance[neither] PASSED [ 34%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_to_sessions[neither] PASSED [ 34%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes[neither] PASSED [ 34%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes_count[neither] PASSED [ 34%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_past_session[right] PASSED [ 34%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_future_session[right] PASSED [ 35%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset[right] PASSED [ 35%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset_by_sessions[right] PASSED [ 35%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_in_range[right] PASSED [ 35%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_window[right] PASSED [ 35%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_distance[right] PASSED [ 35%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_to_sessions[right] PASSED [ 35%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes[right] PASSED [ 35%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes_count[right] PASSED [ 35%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_past_session[left] PASSED [ 35%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_future_session[left] PASSED [ 35%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset[left] PASSED [ 35%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset_by_sessions[left] PASSED [ 35%] 2118s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_in_range[left] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_window[left] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_distance[left] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_to_sessions[left] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes[left] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes_count[left] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_past_session[both] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_to_future_session[both] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset[both] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_minute_offset_by_sessions[both] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_in_range[both] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_window[both] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_distance[both] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_minutes_to_sessions[both] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes[both] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_minutes_count[both] PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_has_break PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_regular_holidays_sample PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_adhoc_holidays_sample PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_non_holidays_sample PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_late_opens_sample PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_early_closes_sample PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_early_closes_sample_time PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_early_closes_weekdays PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_early_closes_weekdays_time PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_non_early_closes_sample PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_non_early_closes_sample_time PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_late_opens PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_early_closes PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_open_close_break_start_end PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_has_break PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_next_prev_session PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_session_offset PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_is_session PASSED [ 35%] 2119s tests/test_xeee_calendar.py::TestXEEECalendar::test_date_to_session PASSED [ 35%] 2120s tests/test_xeee_calendar.py::TestXEEECalendar::test_prev_next_open_close PASSED [ 35%] 2120s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_in_range PASSED [ 35%] 2120s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_has_break PASSED [ 35%] 2120s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_window PASSED [ 35%] 2120s tests/test_xeee_calendar.py::TestXEEECalendar::test_sessions_distance PASSED [ 35%] 2120s tests/test_xeee_calendar.py::TestXEEECalendar::test_trading_index PASSED [ 35%] 2120s tests/test_xeee_calendar.py::TestXEEECalendar::test_deprecated PASSED [ 35%] 2120s tests/test_xetr_calendar.py::TestXETRCalendar::test_testbase_integrity PASSED [ 35%] 2120s tests/test_xetr_calendar.py::TestXETRCalendar::test_base_integrity PASSED [ 35%] 2122s tests/test_xetr_calendar.py::TestXETRCalendar::test_calculated_against_csv PASSED [ 35%] 2122s tests/test_xetr_calendar.py::TestXETRCalendar::test_start_end PASSED [ 35%] 2122s tests/test_xetr_calendar.py::TestXETRCalendar::test_invalid_input PASSED [ 35%] 2123s tests/test_xetr_calendar.py::TestXETRCalendar::test_bound_min PASSED [ 35%] 2123s tests/test_xetr_calendar.py::TestXETRCalendar::test_bound_max PASSED [ 35%] 2123s tests/test_xetr_calendar.py::TestXETRCalendar::test_sanity_check_session_lengths PASSED [ 35%] 2123s tests/test_xetr_calendar.py::TestXETRCalendar::test_adhoc_holidays_specification PASSED [ 35%] 2123s tests/test_xetr_calendar.py::TestXETRCalendar::test_daylight_savings PASSED [ 35%] 2123s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions PASSED [ 35%] 2123s tests/test_xetr_calendar.py::TestXETRCalendar::test_opens_closes_break_starts_ends PASSED [ 35%] 2123s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_properties[both] PASSED [ 35%] 2124s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes[both] PASSED [ 35%] 2124s tests/test_xetr_calendar.py::TestXETRCalendar::test_calendar_bounds_properties[both] PASSED [ 35%] 2124s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minute_methods[both] PASSED [ 35%] 2124s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minutes[both] PASSED [ 35%] 2124s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_trading_minute[both] PASSED [ 35%] 2124s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_break_minute[both] PASSED [ 35%] 2124s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_on_minute[both] PASSED [ 35%] 2124s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_at_time[both] PASSED [ 35%] 2125s tests/test_xetr_calendar.py::TestXETRCalendar::test_prev_next_minute[both] PASSED [ 35%] 2125s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[both-next] PASSED [ 35%] 2125s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[both-next] PASSED [ 35%] 2125s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[left-next] PASSED [ 35%] 2125s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[left-next] PASSED [ 35%] 2125s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_properties[left] PASSED [ 35%] 2125s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes[left] PASSED [ 36%] 2125s tests/test_xetr_calendar.py::TestXETRCalendar::test_calendar_bounds_properties[left] PASSED [ 36%] 2125s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minute_methods[left] PASSED [ 36%] 2125s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minutes[left] PASSED [ 36%] 2125s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_trading_minute[left] PASSED [ 36%] 2125s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_break_minute[left] PASSED [ 36%] 2125s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_on_minute[left] PASSED [ 36%] 2125s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_at_time[left] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_prev_next_minute[left] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[left-previous] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[both-previous] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[right-previous] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[right-next] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[right-next] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_properties[right] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes[right] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_calendar_bounds_properties[right] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minute_methods[right] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minutes[right] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_trading_minute[right] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_break_minute[right] PASSED [ 36%] 2126s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_on_minute[right] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_at_time[right] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_prev_next_minute[right] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[right-none] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[right-none] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[left-none] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[left-none] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[both-none] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[both-none] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[neither-none] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[neither-previous] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_session[neither-next] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_properties[neither] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes[neither] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_calendar_bounds_properties[neither] PASSED [ 36%] 2127s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minute_methods[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_minutes[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_trading_minute[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_break_minute[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_on_minute[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_open_at_time[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_prev_next_minute[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_past_session[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_future_session[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset_by_sessions[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_in_range[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_window[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_distance[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_to_sessions[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes_count[neither] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_past_session[right] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_future_session[right] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset[right] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset_by_sessions[right] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_in_range[right] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_window[right] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_distance[right] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_to_sessions[right] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes[right] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes_count[right] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_past_session[left] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_future_session[left] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset[left] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset_by_sessions[left] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_in_range[left] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_window[left] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_distance[left] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_to_sessions[left] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes[left] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes_count[left] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_past_session[both] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_to_future_session[both] PASSED [ 36%] 2128s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset[both] PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_minute_offset_by_sessions[both] PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_in_range[both] PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_window[both] PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_distance[both] PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_minutes_to_sessions[both] PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes[both] PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_minutes_count[both] PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_has_break PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_regular_holidays_sample PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_adhoc_holidays_sample PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_non_holidays_sample PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_late_opens_sample PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_early_closes_sample PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_early_closes_sample_time PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_early_closes_weekdays PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_early_closes_weekdays_time PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_non_early_closes_sample PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_non_early_closes_sample_time PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_late_opens PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_early_closes PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_open_close_break_start_end PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_has_break PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_next_prev_session PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_session_offset PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_is_session PASSED [ 37%] 2129s tests/test_xetr_calendar.py::TestXETRCalendar::test_date_to_session PASSED [ 37%] 2130s tests/test_xetr_calendar.py::TestXETRCalendar::test_prev_next_open_close PASSED [ 37%] 2130s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_in_range PASSED [ 37%] 2130s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_has_break PASSED [ 37%] 2130s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_window PASSED [ 37%] 2130s tests/test_xetr_calendar.py::TestXETRCalendar::test_sessions_distance PASSED [ 37%] 2130s tests/test_xetr_calendar.py::TestXETRCalendar::test_trading_index PASSED [ 37%] 2130s tests/test_xetr_calendar.py::TestXETRCalendar::test_deprecated PASSED [ 37%] 2130s tests/test_xfra_calendar.py::TestXFRACalendar::test_testbase_integrity PASSED [ 37%] 2130s tests/test_xfra_calendar.py::TestXFRACalendar::test_base_integrity PASSED [ 37%] 2132s tests/test_xfra_calendar.py::TestXFRACalendar::test_calculated_against_csv PASSED [ 37%] 2132s tests/test_xfra_calendar.py::TestXFRACalendar::test_start_end PASSED [ 37%] 2132s tests/test_xfra_calendar.py::TestXFRACalendar::test_invalid_input PASSED [ 37%] 2133s tests/test_xfra_calendar.py::TestXFRACalendar::test_bound_min PASSED [ 37%] 2133s tests/test_xfra_calendar.py::TestXFRACalendar::test_bound_max PASSED [ 37%] 2133s tests/test_xfra_calendar.py::TestXFRACalendar::test_sanity_check_session_lengths PASSED [ 37%] 2133s tests/test_xfra_calendar.py::TestXFRACalendar::test_adhoc_holidays_specification PASSED [ 37%] 2133s tests/test_xfra_calendar.py::TestXFRACalendar::test_daylight_savings PASSED [ 37%] 2133s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions PASSED [ 37%] 2133s tests/test_xfra_calendar.py::TestXFRACalendar::test_opens_closes_break_starts_ends PASSED [ 37%] 2133s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_properties[both] PASSED [ 37%] 2134s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes[both] PASSED [ 37%] 2134s tests/test_xfra_calendar.py::TestXFRACalendar::test_calendar_bounds_properties[both] PASSED [ 37%] 2134s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minute_methods[both] PASSED [ 37%] 2134s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minutes[both] PASSED [ 37%] 2134s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_trading_minute[both] PASSED [ 37%] 2134s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_break_minute[both] PASSED [ 37%] 2134s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_on_minute[both] PASSED [ 37%] 2134s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_at_time[both] PASSED [ 37%] 2134s tests/test_xfra_calendar.py::TestXFRACalendar::test_prev_next_minute[both] PASSED [ 37%] 2134s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[both-next] PASSED [ 37%] 2134s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[both-next] PASSED [ 37%] 2134s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[left-next] PASSED [ 37%] 2134s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[left-next] PASSED [ 37%] 2134s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_properties[left] PASSED [ 37%] 2135s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes[left] PASSED [ 37%] 2135s tests/test_xfra_calendar.py::TestXFRACalendar::test_calendar_bounds_properties[left] PASSED [ 37%] 2135s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minute_methods[left] PASSED [ 37%] 2135s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minutes[left] PASSED [ 37%] 2135s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_trading_minute[left] PASSED [ 37%] 2135s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_break_minute[left] PASSED [ 37%] 2135s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_on_minute[left] PASSED [ 37%] 2135s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_at_time[left] PASSED [ 37%] 2135s tests/test_xfra_calendar.py::TestXFRACalendar::test_prev_next_minute[left] PASSED [ 37%] 2135s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[left-previous] PASSED [ 37%] 2135s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[left-previous] PASSED [ 37%] 2135s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[both-previous] PASSED [ 37%] 2135s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[both-previous] PASSED [ 37%] 2136s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[right-previous] PASSED [ 37%] 2136s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[right-previous] PASSED [ 37%] 2136s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[right-next] PASSED [ 37%] 2136s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[right-next] PASSED [ 37%] 2136s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_properties[right] PASSED [ 37%] 2136s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes[right] PASSED [ 37%] 2136s tests/test_xfra_calendar.py::TestXFRACalendar::test_calendar_bounds_properties[right] PASSED [ 37%] 2136s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minute_methods[right] PASSED [ 37%] 2136s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minutes[right] PASSED [ 38%] 2136s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_trading_minute[right] PASSED [ 38%] 2136s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_break_minute[right] PASSED [ 38%] 2136s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_on_minute[right] PASSED [ 38%] 2136s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_at_time[right] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_prev_next_minute[right] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[right-none] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[right-none] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[left-none] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[left-none] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[both-none] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[both-none] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[neither-none] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[neither-none] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[neither-previous] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_session[neither-next] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_trading_minute[neither-next] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_properties[neither] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes[neither] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_calendar_bounds_properties[neither] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minute_methods[neither] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_minutes[neither] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_trading_minute[neither] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_break_minute[neither] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_on_minute[neither] PASSED [ 38%] 2137s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_open_at_time[neither] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_prev_next_minute[neither] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_past_session[neither] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_future_session[neither] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset[neither] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset_by_sessions[neither] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_in_range[neither] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_window[neither] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_distance[neither] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_to_sessions[neither] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes[neither] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes_count[neither] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_past_session[right] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_future_session[right] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset[right] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset_by_sessions[right] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_in_range[right] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_window[right] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_distance[right] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_to_sessions[right] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes[right] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes_count[right] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_past_session[left] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_future_session[left] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset[left] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset_by_sessions[left] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_in_range[left] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_window[left] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_distance[left] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_to_sessions[left] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes[left] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes_count[left] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_past_session[both] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_to_future_session[both] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset[both] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minute_offset_by_sessions[both] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_in_range[both] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_window[both] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_distance[both] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_minutes_to_sessions[both] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes[both] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_minutes_count[both] PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_has_break PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_regular_holidays_sample PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_adhoc_holidays_sample PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_non_holidays_sample PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_late_opens_sample PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_early_closes_sample PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_early_closes_sample_time PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_early_closes_weekdays PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_early_closes_weekdays_time PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_non_early_closes_sample PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_non_early_closes_sample_time PASSED [ 38%] 2138s tests/test_xfra_calendar.py::TestXFRACalendar::test_late_opens PASSED [ 38%] 2139s tests/test_xfra_calendar.py::TestXFRACalendar::test_early_closes PASSED [ 38%] 2139s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_open_close_break_start_end PASSED [ 38%] 2139s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_has_break PASSED [ 39%] 2139s tests/test_xfra_calendar.py::TestXFRACalendar::test_next_prev_session PASSED [ 39%] 2139s tests/test_xfra_calendar.py::TestXFRACalendar::test_session_offset PASSED [ 39%] 2139s tests/test_xfra_calendar.py::TestXFRACalendar::test_is_session PASSED [ 39%] 2139s tests/test_xfra_calendar.py::TestXFRACalendar::test_date_to_session PASSED [ 39%] 2140s tests/test_xfra_calendar.py::TestXFRACalendar::test_prev_next_open_close PASSED [ 39%] 2140s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_in_range PASSED [ 39%] 2140s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_has_break PASSED [ 39%] 2140s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_window PASSED [ 39%] 2140s tests/test_xfra_calendar.py::TestXFRACalendar::test_sessions_distance PASSED [ 39%] 2140s tests/test_xfra_calendar.py::TestXFRACalendar::test_trading_index PASSED [ 39%] 2140s tests/test_xfra_calendar.py::TestXFRACalendar::test_deprecated PASSED [ 39%] 2140s tests/test_xham_calendar.py::TestXHAMCalendar::test_testbase_integrity PASSED [ 39%] 2140s tests/test_xham_calendar.py::TestXHAMCalendar::test_base_integrity PASSED [ 39%] 2142s tests/test_xham_calendar.py::TestXHAMCalendar::test_calculated_against_csv PASSED [ 39%] 2142s tests/test_xham_calendar.py::TestXHAMCalendar::test_start_end PASSED [ 39%] 2142s tests/test_xham_calendar.py::TestXHAMCalendar::test_invalid_input PASSED [ 39%] 2143s tests/test_xham_calendar.py::TestXHAMCalendar::test_bound_min PASSED [ 39%] 2143s tests/test_xham_calendar.py::TestXHAMCalendar::test_bound_max PASSED [ 39%] 2143s tests/test_xham_calendar.py::TestXHAMCalendar::test_sanity_check_session_lengths PASSED [ 39%] 2143s tests/test_xham_calendar.py::TestXHAMCalendar::test_adhoc_holidays_specification PASSED [ 39%] 2143s tests/test_xham_calendar.py::TestXHAMCalendar::test_daylight_savings PASSED [ 39%] 2143s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions PASSED [ 39%] 2143s tests/test_xham_calendar.py::TestXHAMCalendar::test_opens_closes_break_starts_ends PASSED [ 39%] 2143s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_properties[both] PASSED [ 39%] 2144s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes[both] PASSED [ 39%] 2144s tests/test_xham_calendar.py::TestXHAMCalendar::test_calendar_bounds_properties[both] PASSED [ 39%] 2144s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minute_methods[both] PASSED [ 39%] 2144s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minutes[both] PASSED [ 39%] 2144s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_trading_minute[both] PASSED [ 39%] 2144s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_break_minute[both] PASSED [ 39%] 2144s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_on_minute[both] PASSED [ 39%] 2144s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_at_time[both] PASSED [ 39%] 2145s tests/test_xham_calendar.py::TestXHAMCalendar::test_prev_next_minute[both] PASSED [ 39%] 2145s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[both-next] PASSED [ 39%] 2145s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[both-next] PASSED [ 39%] 2145s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[left-next] PASSED [ 39%] 2145s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[left-next] PASSED [ 39%] 2145s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_properties[left] PASSED [ 39%] 2145s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes[left] PASSED [ 39%] 2145s tests/test_xham_calendar.py::TestXHAMCalendar::test_calendar_bounds_properties[left] PASSED [ 39%] 2145s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minute_methods[left] PASSED [ 39%] 2145s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minutes[left] PASSED [ 39%] 2145s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_trading_minute[left] PASSED [ 39%] 2145s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_break_minute[left] PASSED [ 39%] 2145s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_on_minute[left] PASSED [ 39%] 2146s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_at_time[left] PASSED [ 39%] 2146s tests/test_xham_calendar.py::TestXHAMCalendar::test_prev_next_minute[left] PASSED [ 39%] 2146s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[left-previous] PASSED [ 39%] 2146s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 39%] 2146s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[both-previous] PASSED [ 39%] 2146s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 39%] 2146s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[right-previous] PASSED [ 39%] 2146s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 39%] 2146s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[right-next] PASSED [ 39%] 2146s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[right-next] PASSED [ 39%] 2146s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_properties[right] PASSED [ 39%] 2147s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes[right] PASSED [ 39%] 2147s tests/test_xham_calendar.py::TestXHAMCalendar::test_calendar_bounds_properties[right] PASSED [ 39%] 2147s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minute_methods[right] PASSED [ 39%] 2147s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minutes[right] PASSED [ 39%] 2147s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_trading_minute[right] PASSED [ 39%] 2147s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_break_minute[right] PASSED [ 39%] 2147s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_on_minute[right] PASSED [ 39%] 2147s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_at_time[right] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_prev_next_minute[right] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[right-none] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[right-none] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[left-none] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[left-none] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[both-none] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[both-none] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[neither-none] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[neither-previous] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_session[neither-next] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_properties[neither] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes[neither] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_calendar_bounds_properties[neither] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minute_methods[neither] PASSED [ 39%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_minutes[neither] PASSED [ 40%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_trading_minute[neither] PASSED [ 40%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_break_minute[neither] PASSED [ 40%] 2148s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_on_minute[neither] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_open_at_time[neither] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_prev_next_minute[neither] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_past_session[neither] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_future_session[neither] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset[neither] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset_by_sessions[neither] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_in_range[neither] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_window[neither] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_distance[neither] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_to_sessions[neither] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes[neither] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes_count[neither] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_past_session[right] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_future_session[right] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset[right] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset_by_sessions[right] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_in_range[right] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_window[right] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_distance[right] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_to_sessions[right] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes[right] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes_count[right] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_past_session[left] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_future_session[left] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset[left] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset_by_sessions[left] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_in_range[left] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_window[left] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_distance[left] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_to_sessions[left] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes[left] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes_count[left] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_past_session[both] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_to_future_session[both] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset[both] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minute_offset_by_sessions[both] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_in_range[both] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_window[both] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_distance[both] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_minutes_to_sessions[both] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes[both] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_minutes_count[both] PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_has_break PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_regular_holidays_sample PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_adhoc_holidays_sample PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_non_holidays_sample PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_late_opens_sample PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_early_closes_sample PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_early_closes_sample_time PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_early_closes_weekdays PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_early_closes_weekdays_time PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_non_early_closes_sample PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_non_early_closes_sample_time PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_late_opens PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_early_closes PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_open_close_break_start_end PASSED [ 40%] 2149s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_has_break PASSED [ 40%] 2150s tests/test_xham_calendar.py::TestXHAMCalendar::test_next_prev_session PASSED [ 40%] 2150s tests/test_xham_calendar.py::TestXHAMCalendar::test_session_offset PASSED [ 40%] 2150s tests/test_xham_calendar.py::TestXHAMCalendar::test_is_session PASSED [ 40%] 2150s tests/test_xham_calendar.py::TestXHAMCalendar::test_date_to_session PASSED [ 40%] 2151s tests/test_xham_calendar.py::TestXHAMCalendar::test_prev_next_open_close PASSED [ 40%] 2151s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_in_range PASSED [ 40%] 2151s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_has_break PASSED [ 40%] 2151s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_window PASSED [ 40%] 2151s tests/test_xham_calendar.py::TestXHAMCalendar::test_sessions_distance PASSED [ 40%] 2151s tests/test_xham_calendar.py::TestXHAMCalendar::test_trading_index PASSED [ 40%] 2151s tests/test_xham_calendar.py::TestXHAMCalendar::test_deprecated PASSED [ 40%] 2151s tests/test_xhel_calendar.py::TestXHELCalendar::test_testbase_integrity PASSED [ 40%] 2151s tests/test_xhel_calendar.py::TestXHELCalendar::test_base_integrity PASSED [ 40%] 2152s tests/test_xhel_calendar.py::TestXHELCalendar::test_calculated_against_csv PASSED [ 40%] 2153s tests/test_xhel_calendar.py::TestXHELCalendar::test_start_end PASSED [ 40%] 2153s tests/test_xhel_calendar.py::TestXHELCalendar::test_invalid_input PASSED [ 40%] 2154s tests/test_xhel_calendar.py::TestXHELCalendar::test_bound_min PASSED [ 40%] 2154s tests/test_xhel_calendar.py::TestXHELCalendar::test_bound_max PASSED [ 40%] 2154s tests/test_xhel_calendar.py::TestXHELCalendar::test_sanity_check_session_lengths PASSED [ 40%] 2154s tests/test_xhel_calendar.py::TestXHELCalendar::test_adhoc_holidays_specification PASSED [ 40%] 2154s tests/test_xhel_calendar.py::TestXHELCalendar::test_daylight_savings PASSED [ 40%] 2154s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions PASSED [ 41%] 2154s tests/test_xhel_calendar.py::TestXHELCalendar::test_opens_closes_break_starts_ends PASSED [ 41%] 2154s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_properties[both] PASSED [ 41%] 2155s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes[both] PASSED [ 41%] 2155s tests/test_xhel_calendar.py::TestXHELCalendar::test_calendar_bounds_properties[both] PASSED [ 41%] 2155s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minute_methods[both] PASSED [ 41%] 2155s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minutes[both] PASSED [ 41%] 2155s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_trading_minute[both] PASSED [ 41%] 2155s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_break_minute[both] PASSED [ 41%] 2155s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_on_minute[both] PASSED [ 41%] 2155s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_at_time[both] PASSED [ 41%] 2155s tests/test_xhel_calendar.py::TestXHELCalendar::test_prev_next_minute[both] PASSED [ 41%] 2155s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[both-next] PASSED [ 41%] 2155s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[both-next] PASSED [ 41%] 2155s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[left-next] PASSED [ 41%] 2155s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[left-next] PASSED [ 41%] 2155s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_properties[left] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes[left] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_calendar_bounds_properties[left] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minute_methods[left] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minutes[left] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_trading_minute[left] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_break_minute[left] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_on_minute[left] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_at_time[left] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_prev_next_minute[left] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[left-previous] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[both-previous] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[right-previous] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[right-next] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[right-next] PASSED [ 41%] 2156s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_properties[right] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes[right] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_calendar_bounds_properties[right] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minute_methods[right] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minutes[right] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_trading_minute[right] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_break_minute[right] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_on_minute[right] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_at_time[right] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_prev_next_minute[right] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[right-none] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[right-none] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[left-none] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[left-none] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[both-none] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[both-none] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[neither-none] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[neither-previous] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_session[neither-next] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 41%] 2157s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_properties[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_calendar_bounds_properties[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minute_methods[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_minutes[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_trading_minute[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_break_minute[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_on_minute[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_open_at_time[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_prev_next_minute[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_past_session[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_future_session[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset_by_sessions[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_in_range[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_window[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_distance[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_to_sessions[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes_count[neither] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_past_session[right] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_future_session[right] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset[right] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset_by_sessions[right] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_in_range[right] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_window[right] PASSED [ 41%] 2158s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_distance[right] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_to_sessions[right] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes[right] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes_count[right] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_past_session[left] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_future_session[left] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset[left] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset_by_sessions[left] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_in_range[left] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_window[left] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_distance[left] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_to_sessions[left] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes[left] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes_count[left] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_past_session[both] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_to_future_session[both] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset[both] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minute_offset_by_sessions[both] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_in_range[both] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_window[both] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_distance[both] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_minutes_to_sessions[both] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes[both] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_minutes_count[both] PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_has_break PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_regular_holidays_sample PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_adhoc_holidays_sample PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_non_holidays_sample PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_late_opens_sample PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_early_closes_sample PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_early_closes_sample_time PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_early_closes_weekdays PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_early_closes_weekdays_time PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_non_early_closes_sample PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_non_early_closes_sample_time PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_late_opens PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_early_closes PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_open_close_break_start_end PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_has_break PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_next_prev_session PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_session_offset PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_is_session PASSED [ 42%] 2159s tests/test_xhel_calendar.py::TestXHELCalendar::test_date_to_session PASSED [ 42%] 2160s tests/test_xhel_calendar.py::TestXHELCalendar::test_prev_next_open_close PASSED [ 42%] 2160s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_in_range PASSED [ 42%] 2160s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_has_break PASSED [ 42%] 2160s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_window PASSED [ 42%] 2160s tests/test_xhel_calendar.py::TestXHELCalendar::test_sessions_distance PASSED [ 42%] 2160s tests/test_xhel_calendar.py::TestXHELCalendar::test_trading_index PASSED [ 42%] 2160s tests/test_xhel_calendar.py::TestXHELCalendar::test_deprecated PASSED [ 42%] 2160s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_testbase_integrity PASSED [ 42%] 2160s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_base_integrity PASSED [ 42%] 2162s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_calculated_against_csv PASSED [ 42%] 2162s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_start_end PASSED [ 42%] 2163s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_invalid_input PASSED [ 42%] 2163s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_bound_min PASSED [ 42%] 2164s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_bound_max PASSED [ 42%] 2164s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sanity_check_session_lengths PASSED [ 42%] 2164s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_adhoc_holidays_specification PASSED [ 42%] 2164s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_daylight_savings PASSED [ 42%] 2164s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions PASSED [ 42%] 2164s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_opens_closes_break_starts_ends PASSED [ 42%] 2164s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_properties[both] PASSED [ 42%] 2164s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes[both] PASSED [ 42%] 2164s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_calendar_bounds_properties[both] PASSED [ 42%] 2164s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minute_methods[both] PASSED [ 42%] 2164s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minutes[both] PASSED [ 42%] 2164s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_trading_minute[both] PASSED [ 42%] 2164s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_break_minute[both] PASSED [ 42%] 2164s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_on_minute[both] PASSED [ 42%] 2165s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_at_time[both] PASSED [ 42%] 2166s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_prev_next_minute[both] PASSED [ 42%] 2166s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[both-next] PASSED [ 42%] 2166s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[both-next] PASSED [ 42%] 2166s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[left-next] PASSED [ 42%] 2166s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[left-next] PASSED [ 42%] 2166s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_properties[left] PASSED [ 42%] 2167s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes[left] PASSED [ 42%] 2167s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_calendar_bounds_properties[left] PASSED [ 42%] 2167s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minute_methods[left] PASSED [ 42%] 2167s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minutes[left] PASSED [ 42%] 2167s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_trading_minute[left] PASSED [ 42%] 2167s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_break_minute[left] PASSED [ 43%] 2167s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_on_minute[left] PASSED [ 43%] 2167s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_at_time[left] PASSED [ 43%] 2168s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_prev_next_minute[left] PASSED [ 43%] 2168s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[left-previous] PASSED [ 43%] 2168s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 43%] 2168s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[both-previous] PASSED [ 43%] 2168s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 43%] 2169s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[right-previous] PASSED [ 43%] 2169s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 43%] 2169s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[right-next] PASSED [ 43%] 2169s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[right-next] PASSED [ 43%] 2169s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_properties[right] PASSED [ 43%] 2169s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes[right] PASSED [ 43%] 2169s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_calendar_bounds_properties[right] PASSED [ 43%] 2169s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minute_methods[right] PASSED [ 43%] 2169s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minutes[right] PASSED [ 43%] 2169s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_trading_minute[right] PASSED [ 43%] 2169s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_break_minute[right] PASSED [ 43%] 2169s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_on_minute[right] PASSED [ 43%] 2170s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_at_time[right] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_prev_next_minute[right] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[right-none] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[right-none] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[left-none] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[left-none] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[both-none] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[both-none] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[neither-none] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[neither-previous] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_session[neither-next] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_properties[neither] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes[neither] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_calendar_bounds_properties[neither] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minute_methods[neither] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_minutes[neither] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_trading_minute[neither] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_break_minute[neither] PASSED [ 43%] 2171s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_on_minute[neither] PASSED [ 43%] 2172s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_open_at_time[neither] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_prev_next_minute[neither] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_past_session[neither] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_future_session[neither] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset[neither] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset_by_sessions[neither] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_in_range[neither] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_window[neither] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_distance[neither] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_to_sessions[neither] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes[neither] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes_count[neither] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_past_session[right] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_future_session[right] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset[right] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset_by_sessions[right] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_in_range[right] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_window[right] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_distance[right] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_to_sessions[right] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes[right] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes_count[right] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_past_session[left] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_future_session[left] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset[left] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset_by_sessions[left] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_in_range[left] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_window[left] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_distance[left] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_to_sessions[left] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes[left] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes_count[left] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_past_session[both] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_to_future_session[both] PASSED [ 43%] 2173s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset[both] PASSED [ 43%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minute_offset_by_sessions[both] PASSED [ 43%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_in_range[both] PASSED [ 43%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_window[both] PASSED [ 43%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_distance[both] PASSED [ 43%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_minutes_to_sessions[both] PASSED [ 43%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes[both] PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_minutes_count[both] PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_has_break PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_regular_holidays_sample PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_adhoc_holidays_sample PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_non_holidays_sample PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_late_opens_sample PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_early_closes_sample PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_early_closes_sample_time PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_early_closes_weekdays PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_early_closes_weekdays_time PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_non_early_closes_sample PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_non_early_closes_sample_time PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_late_opens PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_early_closes PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_open_close_break_start_end PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_has_break PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_next_prev_session PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_session_offset PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_is_session PASSED [ 44%] 2174s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_date_to_session PASSED [ 44%] 2175s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_prev_next_open_close PASSED [ 44%] 2175s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_in_range PASSED [ 44%] 2175s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_has_break PASSED [ 44%] 2175s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_window PASSED [ 44%] 2175s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_sessions_distance PASSED [ 44%] 2175s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_trading_index PASSED [ 44%] 2175s tests/test_xhkg_calendar.py::TestXHKGCalendar::test_deprecated PASSED [ 44%] 2175s tests/test_xice_calendar.py::TestXICECalendar::test_testbase_integrity PASSED [ 44%] 2175s tests/test_xice_calendar.py::TestXICECalendar::test_base_integrity PASSED [ 44%] 2176s tests/test_xice_calendar.py::TestXICECalendar::test_calculated_against_csv PASSED [ 44%] 2176s tests/test_xice_calendar.py::TestXICECalendar::test_start_end PASSED [ 44%] 2176s tests/test_xice_calendar.py::TestXICECalendar::test_invalid_input PASSED [ 44%] 2177s tests/test_xice_calendar.py::TestXICECalendar::test_bound_min PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_bound_max PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_sanity_check_session_lengths PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_adhoc_holidays_specification PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_daylight_savings PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_sessions PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_opens_closes_break_starts_ends PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_properties[both] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_minutes[both] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_calendar_bounds_properties[both] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_session_minute_methods[both] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_session_minutes[both] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_is_trading_minute[both] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_is_break_minute[both] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_on_minute[both] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_at_time[both] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_prev_next_minute[both] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[both-next] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[both-next] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[left-next] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[left-next] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_properties[left] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_minutes[left] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_calendar_bounds_properties[left] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_session_minute_methods[left] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_session_minutes[left] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_is_trading_minute[left] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_is_break_minute[left] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_on_minute[left] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_at_time[left] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_prev_next_minute[left] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[left-previous] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[both-previous] PASSED [ 44%] 2178s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[right-previous] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[right-next] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[right-next] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_properties[right] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes[right] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_calendar_bounds_properties[right] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_session_minute_methods[right] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_session_minutes[right] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_is_trading_minute[right] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_is_break_minute[right] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_on_minute[right] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_at_time[right] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_prev_next_minute[right] PASSED [ 44%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[right-none] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[right-none] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[left-none] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[left-none] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[both-none] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[both-none] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[neither-none] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[neither-previous] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_session[neither-next] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_properties[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_calendar_bounds_properties[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_session_minute_methods[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_session_minutes[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_is_trading_minute[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_is_break_minute[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_on_minute[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_is_open_at_time[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_prev_next_minute[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_past_session[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_future_session[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset_by_sessions[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_in_range[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_window[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_distance[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_to_sessions[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes_count[neither] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_past_session[right] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_future_session[right] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset[right] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset_by_sessions[right] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_in_range[right] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_window[right] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_distance[right] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_to_sessions[right] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes[right] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes_count[right] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_past_session[left] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_future_session[left] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset[left] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset_by_sessions[left] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_in_range[left] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_window[left] PASSED [ 45%] 2179s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_distance[left] PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_to_sessions[left] PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes[left] PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes_count[left] PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_past_session[both] PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_minute_to_future_session[both] PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset[both] PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_minute_offset_by_sessions[both] PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_in_range[both] PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_window[both] PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_distance[both] PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_minutes_to_sessions[both] PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes[both] PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_minutes_count[both] PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_has_break PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_regular_holidays_sample PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_adhoc_holidays_sample PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_non_holidays_sample PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_late_opens_sample PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_early_closes_sample PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_early_closes_sample_time PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_early_closes_weekdays PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_early_closes_weekdays_time PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_non_early_closes_sample PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_non_early_closes_sample_time PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_late_opens PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_early_closes PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_session_open_close_break_start_end PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_session_has_break PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_next_prev_session PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_session_offset PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_is_session PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_date_to_session PASSED [ 45%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_prev_next_open_close PASSED [ 46%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_in_range PASSED [ 46%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_has_break PASSED [ 46%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_window PASSED [ 46%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_sessions_distance PASSED [ 46%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_trading_index PASSED [ 46%] 2180s tests/test_xice_calendar.py::TestXICECalendar::test_deprecated PASSED [ 46%] 2180s tests/test_xidx_calendar.py::TestXIDXCalendar::test_testbase_integrity PASSED [ 46%] 2180s tests/test_xidx_calendar.py::TestXIDXCalendar::test_base_integrity PASSED [ 46%] 2181s tests/test_xidx_calendar.py::TestXIDXCalendar::test_calculated_against_csv PASSED [ 46%] 2182s tests/test_xidx_calendar.py::TestXIDXCalendar::test_start_end PASSED [ 46%] 2182s tests/test_xidx_calendar.py::TestXIDXCalendar::test_invalid_input PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_bound_min PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_bound_max PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sanity_check_session_lengths PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_adhoc_holidays_specification PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_daylight_savings PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_opens_closes_break_starts_ends PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_properties[both] PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes[both] PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_calendar_bounds_properties[both] PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minute_methods[both] PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minutes[both] PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_trading_minute[both] PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_break_minute[both] PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_on_minute[both] PASSED [ 46%] 2183s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_at_time[both] PASSED [ 46%] 2184s tests/test_xidx_calendar.py::TestXIDXCalendar::test_prev_next_minute[both] PASSED [ 46%] 2184s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[both-next] PASSED [ 46%] 2184s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[both-next] PASSED [ 46%] 2184s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[left-next] PASSED [ 46%] 2184s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[left-next] PASSED [ 46%] 2184s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_properties[left] PASSED [ 46%] 2184s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes[left] PASSED [ 46%] 2184s tests/test_xidx_calendar.py::TestXIDXCalendar::test_calendar_bounds_properties[left] PASSED [ 46%] 2184s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minute_methods[left] PASSED [ 46%] 2184s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minutes[left] PASSED [ 46%] 2184s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_trading_minute[left] PASSED [ 46%] 2184s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_break_minute[left] PASSED [ 46%] 2184s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_on_minute[left] PASSED [ 46%] 2184s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_at_time[left] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_prev_next_minute[left] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[left-previous] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[both-previous] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[right-previous] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[right-next] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[right-next] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_properties[right] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes[right] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_calendar_bounds_properties[right] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minute_methods[right] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minutes[right] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_trading_minute[right] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_break_minute[right] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_on_minute[right] PASSED [ 46%] 2185s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_at_time[right] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_prev_next_minute[right] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[right-none] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[right-none] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[left-none] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[left-none] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[both-none] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[both-none] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[neither-none] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[neither-previous] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_session[neither-next] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_properties[neither] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes[neither] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_calendar_bounds_properties[neither] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minute_methods[neither] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_minutes[neither] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_trading_minute[neither] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_break_minute[neither] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_on_minute[neither] PASSED [ 46%] 2186s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_open_at_time[neither] PASSED [ 46%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_prev_next_minute[neither] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_past_session[neither] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_future_session[neither] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset[neither] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset_by_sessions[neither] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_in_range[neither] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_window[neither] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_distance[neither] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_to_sessions[neither] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes[neither] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes_count[neither] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_past_session[right] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_future_session[right] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset[right] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset_by_sessions[right] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_in_range[right] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_window[right] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_distance[right] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_to_sessions[right] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes[right] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes_count[right] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_past_session[left] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_future_session[left] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset[left] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset_by_sessions[left] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_in_range[left] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_window[left] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_distance[left] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_to_sessions[left] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes[left] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes_count[left] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_past_session[both] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_to_future_session[both] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset[both] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minute_offset_by_sessions[both] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_in_range[both] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_window[both] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_distance[both] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_minutes_to_sessions[both] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes[both] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_minutes_count[both] PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_has_break PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_regular_holidays_sample PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_adhoc_holidays_sample PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_non_holidays_sample PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_late_opens_sample PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_early_closes_sample PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_early_closes_sample_time PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_early_closes_weekdays PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_early_closes_weekdays_time PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_non_early_closes_sample PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_non_early_closes_sample_time PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_late_opens PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_early_closes PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_open_close_break_start_end PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_has_break PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_next_prev_session PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_session_offset PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_is_session PASSED [ 47%] 2187s tests/test_xidx_calendar.py::TestXIDXCalendar::test_date_to_session PASSED [ 47%] 2188s tests/test_xidx_calendar.py::TestXIDXCalendar::test_prev_next_open_close PASSED [ 47%] 2188s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_in_range PASSED [ 47%] 2188s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_has_break PASSED [ 47%] 2188s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_window PASSED [ 47%] 2188s tests/test_xidx_calendar.py::TestXIDXCalendar::test_sessions_distance PASSED [ 47%] 2188s tests/test_xidx_calendar.py::TestXIDXCalendar::test_trading_index PASSED [ 47%] 2188s tests/test_xidx_calendar.py::TestXIDXCalendar::test_deprecated PASSED [ 47%] 2188s tests/test_xidx_calendar.py::TestXIDXCalendar::test_trading_days PASSED [ 47%] 2188s tests/test_xidx_calendar.py::TestXIDXCalendar::test_holidays_in_year[2019-holidays0] PASSED [ 47%] 2188s tests/test_xidx_calendar.py::TestXIDXCalendar::test_holidays_in_year[2018-holidays1] PASSED [ 47%] 2188s tests/test_xist_calendar.py::TestXISTCalendar::test_testbase_integrity PASSED [ 47%] 2188s tests/test_xist_calendar.py::TestXISTCalendar::test_base_integrity PASSED [ 47%] 2190s tests/test_xist_calendar.py::TestXISTCalendar::test_calculated_against_csv PASSED [ 47%] 2190s tests/test_xist_calendar.py::TestXISTCalendar::test_start_end PASSED [ 47%] 2190s tests/test_xist_calendar.py::TestXISTCalendar::test_invalid_input PASSED [ 47%] 2191s tests/test_xist_calendar.py::TestXISTCalendar::test_bound_min PASSED [ 47%] 2191s tests/test_xist_calendar.py::TestXISTCalendar::test_bound_max PASSED [ 47%] 2191s tests/test_xist_calendar.py::TestXISTCalendar::test_sanity_check_session_lengths PASSED [ 47%] 2191s tests/test_xist_calendar.py::TestXISTCalendar::test_adhoc_holidays_specification PASSED [ 47%] 2191s tests/test_xist_calendar.py::TestXISTCalendar::test_daylight_savings PASSED [ 47%] 2191s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions PASSED [ 47%] 2191s tests/test_xist_calendar.py::TestXISTCalendar::test_opens_closes_break_starts_ends PASSED [ 47%] 2191s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_properties[both] PASSED [ 48%] 2192s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes[both] PASSED [ 48%] 2192s tests/test_xist_calendar.py::TestXISTCalendar::test_calendar_bounds_properties[both] PASSED [ 48%] 2192s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minute_methods[both] PASSED [ 48%] 2192s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minutes[both] PASSED [ 48%] 2192s tests/test_xist_calendar.py::TestXISTCalendar::test_is_trading_minute[both] PASSED [ 48%] 2192s tests/test_xist_calendar.py::TestXISTCalendar::test_is_break_minute[both] PASSED [ 48%] 2192s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_on_minute[both] PASSED [ 48%] 2192s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_at_time[both] PASSED [ 48%] 2192s tests/test_xist_calendar.py::TestXISTCalendar::test_prev_next_minute[both] PASSED [ 48%] 2192s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[both-next] PASSED [ 48%] 2192s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[both-next] PASSED [ 48%] 2192s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[left-next] PASSED [ 48%] 2192s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[left-next] PASSED [ 48%] 2192s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_properties[left] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes[left] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_calendar_bounds_properties[left] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minute_methods[left] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minutes[left] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_is_trading_minute[left] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_is_break_minute[left] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_on_minute[left] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_at_time[left] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_prev_next_minute[left] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[left-previous] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[both-previous] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[right-previous] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[right-next] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[right-next] PASSED [ 48%] 2193s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_properties[right] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes[right] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_calendar_bounds_properties[right] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minute_methods[right] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minutes[right] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_is_trading_minute[right] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_is_break_minute[right] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_on_minute[right] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_at_time[right] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_prev_next_minute[right] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[right-none] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[right-none] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[left-none] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[left-none] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[both-none] PASSED [ 48%] 2194s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[both-none] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[neither-none] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[neither-previous] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_session[neither-next] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_properties[neither] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes[neither] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_calendar_bounds_properties[neither] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minute_methods[neither] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_session_minutes[neither] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_is_trading_minute[neither] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_is_break_minute[neither] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_on_minute[neither] PASSED [ 48%] 2195s tests/test_xist_calendar.py::TestXISTCalendar::test_is_open_at_time[neither] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_prev_next_minute[neither] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_past_session[neither] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_future_session[neither] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset[neither] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset_by_sessions[neither] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_in_range[neither] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_window[neither] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_distance[neither] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_to_sessions[neither] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes[neither] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes_count[neither] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_past_session[right] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_future_session[right] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset[right] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset_by_sessions[right] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_in_range[right] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_window[right] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_distance[right] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_to_sessions[right] PASSED [ 48%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes[right] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes_count[right] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_past_session[left] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_future_session[left] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset[left] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset_by_sessions[left] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_in_range[left] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_window[left] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_distance[left] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_to_sessions[left] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes[left] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes_count[left] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_past_session[both] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_to_future_session[both] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset[both] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minute_offset_by_sessions[both] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_in_range[both] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_window[both] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_distance[both] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_minutes_to_sessions[both] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes[both] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_minutes_count[both] PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_has_break PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_regular_holidays_sample PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_adhoc_holidays_sample PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_non_holidays_sample PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_late_opens_sample PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_early_closes_sample PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_early_closes_sample_time PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_early_closes_weekdays PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_early_closes_weekdays_time PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_non_early_closes_sample PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_non_early_closes_sample_time PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_late_opens PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_early_closes PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_session_open_close_break_start_end PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_session_has_break PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_next_prev_session PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_session_offset PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_is_session PASSED [ 49%] 2196s tests/test_xist_calendar.py::TestXISTCalendar::test_date_to_session PASSED [ 49%] 2197s tests/test_xist_calendar.py::TestXISTCalendar::test_prev_next_open_close PASSED [ 49%] 2197s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_in_range PASSED [ 49%] 2197s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_has_break PASSED [ 49%] 2197s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_window PASSED [ 49%] 2197s tests/test_xist_calendar.py::TestXISTCalendar::test_sessions_distance PASSED [ 49%] 2197s tests/test_xist_calendar.py::TestXISTCalendar::test_trading_index PASSED [ 49%] 2197s tests/test_xist_calendar.py::TestXISTCalendar::test_deprecated PASSED [ 49%] 2197s tests/test_xjse_calendar.py::TestXJSECalendar::test_testbase_integrity PASSED [ 49%] 2197s tests/test_xjse_calendar.py::TestXJSECalendar::test_base_integrity PASSED [ 49%] 2199s tests/test_xjse_calendar.py::TestXJSECalendar::test_calculated_against_csv PASSED [ 49%] 2199s tests/test_xjse_calendar.py::TestXJSECalendar::test_start_end PASSED [ 49%] 2199s tests/test_xjse_calendar.py::TestXJSECalendar::test_invalid_input PASSED [ 49%] 2200s tests/test_xjse_calendar.py::TestXJSECalendar::test_bound_min PASSED [ 49%] 2200s tests/test_xjse_calendar.py::TestXJSECalendar::test_bound_max PASSED [ 49%] 2200s tests/test_xjse_calendar.py::TestXJSECalendar::test_sanity_check_session_lengths PASSED [ 49%] 2200s tests/test_xjse_calendar.py::TestXJSECalendar::test_adhoc_holidays_specification PASSED [ 49%] 2200s tests/test_xjse_calendar.py::TestXJSECalendar::test_daylight_savings PASSED [ 49%] 2200s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions PASSED [ 49%] 2200s tests/test_xjse_calendar.py::TestXJSECalendar::test_opens_closes_break_starts_ends PASSED [ 49%] 2200s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_properties[both] PASSED [ 49%] 2201s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes[both] PASSED [ 49%] 2201s tests/test_xjse_calendar.py::TestXJSECalendar::test_calendar_bounds_properties[both] PASSED [ 49%] 2201s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minute_methods[both] PASSED [ 49%] 2201s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minutes[both] PASSED [ 49%] 2201s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_trading_minute[both] PASSED [ 49%] 2201s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_break_minute[both] PASSED [ 49%] 2201s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_on_minute[both] PASSED [ 49%] 2201s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_at_time[both] PASSED [ 49%] 2201s tests/test_xjse_calendar.py::TestXJSECalendar::test_prev_next_minute[both] PASSED [ 49%] 2201s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[both-next] PASSED [ 49%] 2201s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[both-next] PASSED [ 49%] 2201s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[left-next] PASSED [ 49%] 2201s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[left-next] PASSED [ 49%] 2201s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_properties[left] PASSED [ 49%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes[left] PASSED [ 49%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_calendar_bounds_properties[left] PASSED [ 49%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minute_methods[left] PASSED [ 49%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minutes[left] PASSED [ 49%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_trading_minute[left] PASSED [ 49%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_break_minute[left] PASSED [ 49%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_on_minute[left] PASSED [ 49%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_at_time[left] PASSED [ 50%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_prev_next_minute[left] PASSED [ 50%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[left-previous] PASSED [ 50%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 50%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[both-previous] PASSED [ 50%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 50%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[right-previous] PASSED [ 50%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 50%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[right-next] PASSED [ 50%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[right-next] PASSED [ 50%] 2202s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_properties[right] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes[right] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_calendar_bounds_properties[right] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minute_methods[right] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minutes[right] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_trading_minute[right] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_break_minute[right] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_on_minute[right] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_at_time[right] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_prev_next_minute[right] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[right-none] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[right-none] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[left-none] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[left-none] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[both-none] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[both-none] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[neither-none] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[neither-previous] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_session[neither-next] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 50%] 2203s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_properties[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_calendar_bounds_properties[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minute_methods[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_minutes[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_trading_minute[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_break_minute[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_on_minute[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_open_at_time[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_prev_next_minute[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_past_session[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_future_session[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset_by_sessions[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_in_range[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_window[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_distance[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_to_sessions[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes_count[neither] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_past_session[right] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_future_session[right] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset[right] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset_by_sessions[right] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_in_range[right] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_window[right] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_distance[right] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_to_sessions[right] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes[right] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes_count[right] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_past_session[left] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_future_session[left] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset[left] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset_by_sessions[left] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_in_range[left] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_window[left] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_distance[left] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_to_sessions[left] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes[left] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes_count[left] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_past_session[both] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_to_future_session[both] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset[both] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minute_offset_by_sessions[both] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_in_range[both] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_window[both] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_distance[both] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_minutes_to_sessions[both] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes[both] PASSED [ 50%] 2204s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_minutes_count[both] PASSED [ 50%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_has_break PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_regular_holidays_sample PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_adhoc_holidays_sample PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_non_holidays_sample PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_late_opens_sample PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_early_closes_sample PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_early_closes_sample_time PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_early_closes_weekdays PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_early_closes_weekdays_time PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_non_early_closes_sample PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_non_early_closes_sample_time PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_late_opens PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_early_closes PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_open_close_break_start_end PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_has_break PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_next_prev_session PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_session_offset PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_is_session PASSED [ 51%] 2205s tests/test_xjse_calendar.py::TestXJSECalendar::test_date_to_session PASSED [ 51%] 2206s tests/test_xjse_calendar.py::TestXJSECalendar::test_prev_next_open_close PASSED [ 51%] 2206s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_in_range PASSED [ 51%] 2206s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_has_break PASSED [ 51%] 2206s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_window PASSED [ 51%] 2206s tests/test_xjse_calendar.py::TestXJSECalendar::test_sessions_distance PASSED [ 51%] 2206s tests/test_xjse_calendar.py::TestXJSECalendar::test_trading_index PASSED [ 51%] 2206s tests/test_xjse_calendar.py::TestXJSECalendar::test_deprecated PASSED [ 51%] 2206s tests/test_xjse_calendar.py::TestXJSECalendar::test_no_weekend_sessions PASSED [ 51%] 2206s tests/test_xjse_calendar.py::TestXJSECalendar::test_holidays_in_year[2019-holidays0] PASSED [ 51%] 2206s tests/test_xjse_calendar.py::TestXJSECalendar::test_holidays_in_year[2018-holidays1] PASSED [ 51%] 2206s tests/test_xjse_calendar.py::TestXJSECalendar::test_holidays_in_year[2016-holidays2] PASSED [ 51%] 2206s tests/test_xkar_calendar.py::TestXKARCalendar::test_testbase_integrity PASSED [ 51%] 2206s tests/test_xkar_calendar.py::TestXKARCalendar::test_base_integrity PASSED [ 51%] 2208s tests/test_xkar_calendar.py::TestXKARCalendar::test_calculated_against_csv PASSED [ 51%] 2208s tests/test_xkar_calendar.py::TestXKARCalendar::test_start_end PASSED [ 51%] 2208s tests/test_xkar_calendar.py::TestXKARCalendar::test_invalid_input PASSED [ 51%] 2208s tests/test_xkar_calendar.py::TestXKARCalendar::test_bound_min PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_bound_max PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_sanity_check_session_lengths PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_adhoc_holidays_specification PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_daylight_savings PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_opens_closes_break_starts_ends PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_properties[both] PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes[both] PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_calendar_bounds_properties[both] PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minute_methods[both] PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minutes[both] PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_trading_minute[both] PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_break_minute[both] PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_on_minute[both] PASSED [ 51%] 2209s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_at_time[both] PASSED [ 51%] 2210s tests/test_xkar_calendar.py::TestXKARCalendar::test_prev_next_minute[both] PASSED [ 51%] 2210s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[both-next] PASSED [ 51%] 2210s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[both-next] PASSED [ 51%] 2210s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[left-next] PASSED [ 51%] 2210s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[left-next] PASSED [ 51%] 2210s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_properties[left] PASSED [ 51%] 2210s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes[left] PASSED [ 51%] 2210s tests/test_xkar_calendar.py::TestXKARCalendar::test_calendar_bounds_properties[left] PASSED [ 51%] 2210s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minute_methods[left] PASSED [ 51%] 2210s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minutes[left] PASSED [ 51%] 2210s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_trading_minute[left] PASSED [ 51%] 2210s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_break_minute[left] PASSED [ 51%] 2210s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_on_minute[left] PASSED [ 51%] 2210s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_at_time[left] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_prev_next_minute[left] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[left-previous] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[both-previous] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[right-previous] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[right-next] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[right-next] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_properties[right] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes[right] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_calendar_bounds_properties[right] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minute_methods[right] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minutes[right] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_trading_minute[right] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_break_minute[right] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_on_minute[right] PASSED [ 51%] 2211s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_at_time[right] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_prev_next_minute[right] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[right-none] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[right-none] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[left-none] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[left-none] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[both-none] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[both-none] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[neither-none] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[neither-previous] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_session[neither-next] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_properties[neither] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes[neither] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_calendar_bounds_properties[neither] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minute_methods[neither] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_minutes[neither] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_trading_minute[neither] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_break_minute[neither] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_on_minute[neither] PASSED [ 52%] 2212s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_open_at_time[neither] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_prev_next_minute[neither] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_past_session[neither] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_future_session[neither] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset[neither] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset_by_sessions[neither] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_in_range[neither] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_window[neither] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_distance[neither] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_to_sessions[neither] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes[neither] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes_count[neither] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_past_session[right] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_future_session[right] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset[right] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset_by_sessions[right] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_in_range[right] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_window[right] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_distance[right] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_to_sessions[right] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes[right] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes_count[right] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_past_session[left] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_future_session[left] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset[left] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset_by_sessions[left] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_in_range[left] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_window[left] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_distance[left] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_to_sessions[left] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes[left] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes_count[left] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_past_session[both] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_to_future_session[both] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset[both] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minute_offset_by_sessions[both] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_in_range[both] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_window[both] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_distance[both] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_minutes_to_sessions[both] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes[both] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_minutes_count[both] PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_has_break PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_regular_holidays_sample PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_adhoc_holidays_sample PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_non_holidays_sample PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_late_opens_sample PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_early_closes_sample PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_early_closes_sample_time PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_early_closes_weekdays PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_early_closes_weekdays_time PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_non_early_closes_sample PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_non_early_closes_sample_time PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_late_opens PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_early_closes PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_open_close_break_start_end PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_has_break PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_next_prev_session PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_session_offset PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_is_session PASSED [ 52%] 2213s tests/test_xkar_calendar.py::TestXKARCalendar::test_date_to_session PASSED [ 53%] 2214s tests/test_xkar_calendar.py::TestXKARCalendar::test_prev_next_open_close PASSED [ 53%] 2214s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_in_range PASSED [ 53%] 2214s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_has_break PASSED [ 53%] 2214s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_window PASSED [ 53%] 2214s tests/test_xkar_calendar.py::TestXKARCalendar::test_sessions_distance PASSED [ 53%] 2215s tests/test_xkar_calendar.py::TestXKARCalendar::test_trading_index PASSED [ 53%] 2215s tests/test_xkar_calendar.py::TestXKARCalendar::test_deprecated PASSED [ 53%] 2215s tests/test_xkar_calendar.py::TestXKARCalendar::test_holidays_in_year[2019-holidays0] PASSED [ 53%] 2215s tests/test_xkls_calendar.py::TestXKLSCalendar::test_testbase_integrity PASSED [ 53%] 2215s tests/test_xkls_calendar.py::TestXKLSCalendar::test_base_integrity PASSED [ 53%] 2216s tests/test_xkls_calendar.py::TestXKLSCalendar::test_calculated_against_csv PASSED [ 53%] 2216s tests/test_xkls_calendar.py::TestXKLSCalendar::test_start_end PASSED [ 53%] 2216s tests/test_xkls_calendar.py::TestXKLSCalendar::test_invalid_input PASSED [ 53%] 2217s tests/test_xkls_calendar.py::TestXKLSCalendar::test_bound_min PASSED [ 53%] 2217s tests/test_xkls_calendar.py::TestXKLSCalendar::test_bound_max PASSED [ 53%] 2217s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sanity_check_session_lengths PASSED [ 53%] 2217s tests/test_xkls_calendar.py::TestXKLSCalendar::test_adhoc_holidays_specification PASSED [ 53%] 2217s tests/test_xkls_calendar.py::TestXKLSCalendar::test_daylight_savings PASSED [ 53%] 2217s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions PASSED [ 53%] 2217s tests/test_xkls_calendar.py::TestXKLSCalendar::test_opens_closes_break_starts_ends PASSED [ 53%] 2217s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_properties[both] PASSED [ 53%] 2218s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes[both] PASSED [ 53%] 2218s tests/test_xkls_calendar.py::TestXKLSCalendar::test_calendar_bounds_properties[both] PASSED [ 53%] 2218s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minute_methods[both] PASSED [ 53%] 2218s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minutes[both] PASSED [ 53%] 2218s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_trading_minute[both] PASSED [ 53%] 2218s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_break_minute[both] PASSED [ 53%] 2218s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_on_minute[both] PASSED [ 53%] 2218s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_at_time[both] PASSED [ 53%] 2218s tests/test_xkls_calendar.py::TestXKLSCalendar::test_prev_next_minute[both] PASSED [ 53%] 2218s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[both-next] PASSED [ 53%] 2218s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[both-next] PASSED [ 53%] 2218s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[left-next] PASSED [ 53%] 2218s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[left-next] PASSED [ 53%] 2218s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_properties[left] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes[left] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_calendar_bounds_properties[left] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minute_methods[left] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minutes[left] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_trading_minute[left] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_break_minute[left] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_on_minute[left] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_at_time[left] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_prev_next_minute[left] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[left-previous] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[both-previous] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[right-previous] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[right-next] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[right-next] PASSED [ 53%] 2219s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_properties[right] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes[right] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_calendar_bounds_properties[right] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minute_methods[right] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minutes[right] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_trading_minute[right] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_break_minute[right] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_on_minute[right] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_at_time[right] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_prev_next_minute[right] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[right-none] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[right-none] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[left-none] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[left-none] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[both-none] PASSED [ 53%] 2220s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[both-none] PASSED [ 53%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[neither-none] PASSED [ 53%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 53%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[neither-previous] PASSED [ 53%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 53%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_session[neither-next] PASSED [ 53%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 53%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_properties[neither] PASSED [ 53%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes[neither] PASSED [ 53%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_calendar_bounds_properties[neither] PASSED [ 53%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minute_methods[neither] PASSED [ 53%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_minutes[neither] PASSED [ 53%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_trading_minute[neither] PASSED [ 53%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_break_minute[neither] PASSED [ 53%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_on_minute[neither] PASSED [ 54%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_open_at_time[neither] PASSED [ 54%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_prev_next_minute[neither] PASSED [ 54%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_past_session[neither] PASSED [ 54%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_future_session[neither] PASSED [ 54%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset[neither] PASSED [ 54%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset_by_sessions[neither] PASSED [ 54%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_in_range[neither] PASSED [ 54%] 2221s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_window[neither] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_distance[neither] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_to_sessions[neither] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes[neither] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes_count[neither] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_past_session[right] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_future_session[right] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset[right] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset_by_sessions[right] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_in_range[right] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_window[right] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_distance[right] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_to_sessions[right] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes[right] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes_count[right] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_past_session[left] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_future_session[left] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset[left] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset_by_sessions[left] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_in_range[left] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_window[left] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_distance[left] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_to_sessions[left] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes[left] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes_count[left] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_past_session[both] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_to_future_session[both] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset[both] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minute_offset_by_sessions[both] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_in_range[both] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_window[both] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_distance[both] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_minutes_to_sessions[both] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes[both] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_minutes_count[both] PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_has_break PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_regular_holidays_sample PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_adhoc_holidays_sample PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_non_holidays_sample PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_late_opens_sample PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_early_closes_sample PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_early_closes_sample_time PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_early_closes_weekdays PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_early_closes_weekdays_time PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_non_early_closes_sample PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_non_early_closes_sample_time PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_late_opens PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_early_closes PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_open_close_break_start_end PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_has_break PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_next_prev_session PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_session_offset PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_is_session PASSED [ 54%] 2222s tests/test_xkls_calendar.py::TestXKLSCalendar::test_date_to_session PASSED [ 54%] 2223s tests/test_xkls_calendar.py::TestXKLSCalendar::test_prev_next_open_close PASSED [ 54%] 2223s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_in_range PASSED [ 54%] 2223s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_has_break PASSED [ 54%] 2223s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_window PASSED [ 54%] 2223s tests/test_xkls_calendar.py::TestXKLSCalendar::test_sessions_distance PASSED [ 54%] 2223s tests/test_xkls_calendar.py::TestXKLSCalendar::test_trading_index PASSED [ 54%] 2223s tests/test_xkls_calendar.py::TestXKLSCalendar::test_deprecated PASSED [ 54%] 2223s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_testbase_integrity PASSED [ 54%] 2223s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_base_integrity PASSED [ 54%] 2236s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_calculated_against_csv PASSED [ 54%] 2239s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_start_end PASSED [ 54%] 2240s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_invalid_input PASSED [ 54%] 2245s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_bound_min PASSED [ 54%] 2248s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_bound_max PASSED [ 54%] 2248s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sanity_check_session_lengths PASSED [ 54%] 2248s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_adhoc_holidays_specification PASSED [ 54%] 2248s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_daylight_savings PASSED [ 54%] 2248s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions PASSED [ 54%] 2248s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_opens_closes_break_starts_ends PASSED [ 54%] 2248s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_properties[both] PASSED [ 55%] 2248s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes[both] PASSED [ 55%] 2248s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_calendar_bounds_properties[both] PASSED [ 55%] 2248s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minute_methods[both] PASSED [ 55%] 2248s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minutes[both] PASSED [ 55%] 2248s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_trading_minute[both] PASSED [ 55%] 2248s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_break_minute[both] PASSED [ 55%] 2248s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_on_minute[both] PASSED [ 55%] 2249s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_at_time[both] PASSED [ 55%] 2250s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_prev_next_minute[both] PASSED [ 55%] 2250s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[both-next] PASSED [ 55%] 2250s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[both-next] PASSED [ 55%] 2250s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[left-next] PASSED [ 55%] 2250s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[left-next] PASSED [ 55%] 2250s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_properties[left] PASSED [ 55%] 2250s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes[left] PASSED [ 55%] 2250s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_calendar_bounds_properties[left] PASSED [ 55%] 2250s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minute_methods[left] PASSED [ 55%] 2250s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minutes[left] PASSED [ 55%] 2250s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_trading_minute[left] PASSED [ 55%] 2250s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_break_minute[left] PASSED [ 55%] 2250s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_on_minute[left] PASSED [ 55%] 2251s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_at_time[left] PASSED [ 55%] 2252s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_prev_next_minute[left] PASSED [ 55%] 2252s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[left-previous] PASSED [ 55%] 2252s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 55%] 2252s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[both-previous] PASSED [ 55%] 2252s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 55%] 2252s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[right-previous] PASSED [ 55%] 2252s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 55%] 2252s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[right-next] PASSED [ 55%] 2252s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[right-next] PASSED [ 55%] 2252s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_properties[right] PASSED [ 55%] 2253s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes[right] PASSED [ 55%] 2253s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_calendar_bounds_properties[right] PASSED [ 55%] 2253s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minute_methods[right] PASSED [ 55%] 2253s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minutes[right] PASSED [ 55%] 2253s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_trading_minute[right] PASSED [ 55%] 2253s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_break_minute[right] PASSED [ 55%] 2253s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_on_minute[right] PASSED [ 55%] 2254s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_at_time[right] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_prev_next_minute[right] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[right-none] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[right-none] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[left-none] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[left-none] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[both-none] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[both-none] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[neither-none] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[neither-previous] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_session[neither-next] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_properties[neither] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes[neither] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_calendar_bounds_properties[neither] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minute_methods[neither] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_minutes[neither] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_trading_minute[neither] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_break_minute[neither] PASSED [ 55%] 2255s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_on_minute[neither] PASSED [ 55%] 2256s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_open_at_time[neither] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_prev_next_minute[neither] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_past_session[neither] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_future_session[neither] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset[neither] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset_by_sessions[neither] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_in_range[neither] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_window[neither] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_distance[neither] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_to_sessions[neither] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes[neither] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes_count[neither] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_past_session[right] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_future_session[right] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset[right] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset_by_sessions[right] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_in_range[right] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_window[right] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_distance[right] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_to_sessions[right] PASSED [ 55%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes[right] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes_count[right] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_past_session[left] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_future_session[left] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset[left] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset_by_sessions[left] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_in_range[left] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_window[left] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_distance[left] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_to_sessions[left] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes[left] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes_count[left] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_past_session[both] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_to_future_session[both] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset[both] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minute_offset_by_sessions[both] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_in_range[both] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_window[both] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_distance[both] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_minutes_to_sessions[both] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes[both] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_minutes_count[both] PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_has_break PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_regular_holidays_sample PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_adhoc_holidays_sample PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_non_holidays_sample PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_late_opens_sample PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_early_closes_sample PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_early_closes_sample_time PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_early_closes_weekdays PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_early_closes_weekdays_time PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_non_early_closes_sample PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_non_early_closes_sample_time PASSED [ 56%] 2257s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_early_closes PASSED [ 56%] 2258s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_open_close_break_start_end PASSED [ 56%] 2258s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_has_break PASSED [ 56%] 2258s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_next_prev_session PASSED [ 56%] 2258s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_session_offset PASSED [ 56%] 2258s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_is_session PASSED [ 56%] 2258s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_date_to_session PASSED [ 56%] 2259s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_prev_next_open_close PASSED [ 56%] 2259s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_in_range PASSED [ 56%] 2259s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_has_break PASSED [ 56%] 2259s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_window PASSED [ 56%] 2259s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_sessions_distance PASSED [ 56%] 2259s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_trading_index PASSED [ 56%] 2259s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_deprecated PASSED [ 56%] 2259s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_late_opens XFAIL [ 56%] 2260s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_historical_regular_holidays_fall_into_precomputed_holidays PASSED [ 56%] 2261s tests/test_xkrx_calendar.py::TestXKRXCalendar::test_feb_29_2022_in_lunar_calendar PASSED [ 56%] 2261s tests/test_xlim_calendar.py::TestXLIMCalendar::test_testbase_integrity PASSED [ 56%] 2261s tests/test_xlim_calendar.py::TestXLIMCalendar::test_base_integrity PASSED [ 56%] 2262s tests/test_xlim_calendar.py::TestXLIMCalendar::test_calculated_against_csv PASSED [ 56%] 2262s tests/test_xlim_calendar.py::TestXLIMCalendar::test_start_end PASSED [ 56%] 2262s tests/test_xlim_calendar.py::TestXLIMCalendar::test_invalid_input PASSED [ 56%] 2263s tests/test_xlim_calendar.py::TestXLIMCalendar::test_bound_min PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_bound_max PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sanity_check_session_lengths PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_adhoc_holidays_specification PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_daylight_savings PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_opens_closes_break_starts_ends PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_properties[both] PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes[both] PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_calendar_bounds_properties[both] PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minute_methods[both] PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minutes[both] PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_trading_minute[both] PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_break_minute[both] PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_on_minute[both] PASSED [ 56%] 2264s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_at_time[both] PASSED [ 56%] 2265s tests/test_xlim_calendar.py::TestXLIMCalendar::test_prev_next_minute[both] PASSED [ 56%] 2265s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[both-next] PASSED [ 56%] 2265s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[both-next] PASSED [ 56%] 2265s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[left-next] PASSED [ 56%] 2265s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[left-next] PASSED [ 56%] 2265s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_properties[left] PASSED [ 56%] 2265s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes[left] PASSED [ 56%] 2265s tests/test_xlim_calendar.py::TestXLIMCalendar::test_calendar_bounds_properties[left] PASSED [ 56%] 2265s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minute_methods[left] PASSED [ 56%] 2265s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minutes[left] PASSED [ 56%] 2265s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_trading_minute[left] PASSED [ 56%] 2265s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_break_minute[left] PASSED [ 57%] 2265s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_on_minute[left] PASSED [ 57%] 2265s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_at_time[left] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_prev_next_minute[left] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[left-previous] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[both-previous] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[right-previous] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[right-next] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[right-next] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_properties[right] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes[right] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_calendar_bounds_properties[right] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minute_methods[right] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minutes[right] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_trading_minute[right] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_break_minute[right] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_on_minute[right] PASSED [ 57%] 2266s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_at_time[right] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_prev_next_minute[right] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[right-none] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[right-none] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[left-none] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[left-none] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[both-none] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[both-none] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[neither-none] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[neither-previous] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_session[neither-next] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_properties[neither] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes[neither] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_calendar_bounds_properties[neither] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minute_methods[neither] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_minutes[neither] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_trading_minute[neither] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_break_minute[neither] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_on_minute[neither] PASSED [ 57%] 2267s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_open_at_time[neither] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_prev_next_minute[neither] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_past_session[neither] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_future_session[neither] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset[neither] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset_by_sessions[neither] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_in_range[neither] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_window[neither] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_distance[neither] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_to_sessions[neither] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes[neither] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes_count[neither] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_past_session[right] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_future_session[right] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset[right] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset_by_sessions[right] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_in_range[right] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_window[right] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_distance[right] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_to_sessions[right] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes[right] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes_count[right] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_past_session[left] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_future_session[left] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset[left] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset_by_sessions[left] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_in_range[left] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_window[left] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_distance[left] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_to_sessions[left] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes[left] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes_count[left] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_past_session[both] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_to_future_session[both] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset[both] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minute_offset_by_sessions[both] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_in_range[both] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_window[both] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_distance[both] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_minutes_to_sessions[both] PASSED [ 57%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes[both] PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_minutes_count[both] PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_has_break PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_regular_holidays_sample PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_adhoc_holidays_sample PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_non_holidays_sample PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_late_opens_sample PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_early_closes_sample PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_early_closes_sample_time PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_early_closes_weekdays PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_early_closes_weekdays_time PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_non_early_closes_sample PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_non_early_closes_sample_time PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_late_opens PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_early_closes PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_open_close_break_start_end PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_has_break PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_next_prev_session PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_session_offset PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_is_session PASSED [ 58%] 2268s tests/test_xlim_calendar.py::TestXLIMCalendar::test_date_to_session PASSED [ 58%] 2269s tests/test_xlim_calendar.py::TestXLIMCalendar::test_prev_next_open_close PASSED [ 58%] 2269s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_in_range PASSED [ 58%] 2269s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_has_break PASSED [ 58%] 2269s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_window PASSED [ 58%] 2269s tests/test_xlim_calendar.py::TestXLIMCalendar::test_sessions_distance PASSED [ 58%] 2269s tests/test_xlim_calendar.py::TestXLIMCalendar::test_trading_index PASSED [ 58%] 2269s tests/test_xlim_calendar.py::TestXLIMCalendar::test_deprecated PASSED [ 58%] 2269s tests/test_xlis_calendar.py::TestXLISCalendar::test_testbase_integrity PASSED [ 58%] 2269s tests/test_xlis_calendar.py::TestXLISCalendar::test_base_integrity PASSED [ 58%] 2271s tests/test_xlis_calendar.py::TestXLISCalendar::test_calculated_against_csv PASSED [ 58%] 2271s tests/test_xlis_calendar.py::TestXLISCalendar::test_start_end PASSED [ 58%] 2271s tests/test_xlis_calendar.py::TestXLISCalendar::test_invalid_input PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_bound_min PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_bound_max PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_sanity_check_session_lengths PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_adhoc_holidays_specification PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_daylight_savings PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_opens_closes_break_starts_ends PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_properties[both] PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes[both] PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_calendar_bounds_properties[both] PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minute_methods[both] PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minutes[both] PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_trading_minute[both] PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_break_minute[both] PASSED [ 58%] 2272s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_on_minute[both] PASSED [ 58%] 2273s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_at_time[both] PASSED [ 58%] 2273s tests/test_xlis_calendar.py::TestXLISCalendar::test_prev_next_minute[both] PASSED [ 58%] 2273s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[both-next] PASSED [ 58%] 2273s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[both-next] PASSED [ 58%] 2273s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[left-next] PASSED [ 58%] 2273s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[left-next] PASSED [ 58%] 2273s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_properties[left] PASSED [ 58%] 2273s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes[left] PASSED [ 58%] 2273s tests/test_xlis_calendar.py::TestXLISCalendar::test_calendar_bounds_properties[left] PASSED [ 58%] 2273s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minute_methods[left] PASSED [ 58%] 2273s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minutes[left] PASSED [ 58%] 2273s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_trading_minute[left] PASSED [ 58%] 2273s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_break_minute[left] PASSED [ 58%] 2273s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_on_minute[left] PASSED [ 58%] 2274s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_at_time[left] PASSED [ 58%] 2274s tests/test_xlis_calendar.py::TestXLISCalendar::test_prev_next_minute[left] PASSED [ 58%] 2274s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[left-previous] PASSED [ 58%] 2274s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 58%] 2274s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[both-previous] PASSED [ 58%] 2274s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 58%] 2274s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[right-previous] PASSED [ 58%] 2274s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 58%] 2274s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[right-next] PASSED [ 58%] 2274s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[right-next] PASSED [ 58%] 2274s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_properties[right] PASSED [ 58%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes[right] PASSED [ 58%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_calendar_bounds_properties[right] PASSED [ 58%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minute_methods[right] PASSED [ 58%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minutes[right] PASSED [ 58%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_trading_minute[right] PASSED [ 58%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_break_minute[right] PASSED [ 58%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_on_minute[right] PASSED [ 58%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_at_time[right] PASSED [ 58%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_prev_next_minute[right] PASSED [ 58%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[right-none] PASSED [ 59%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[right-none] PASSED [ 59%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[left-none] PASSED [ 59%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[left-none] PASSED [ 59%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[both-none] PASSED [ 59%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[both-none] PASSED [ 59%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[neither-none] PASSED [ 59%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 59%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[neither-previous] PASSED [ 59%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 59%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_session[neither-next] PASSED [ 59%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 59%] 2275s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_properties[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_calendar_bounds_properties[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minute_methods[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_minutes[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_trading_minute[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_break_minute[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_on_minute[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_open_at_time[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_prev_next_minute[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_past_session[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_future_session[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset_by_sessions[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_in_range[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_window[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_distance[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_to_sessions[neither] PASSED [ 59%] 2276s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes[neither] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes_count[neither] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_past_session[right] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_future_session[right] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset[right] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset_by_sessions[right] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_in_range[right] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_window[right] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_distance[right] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_to_sessions[right] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes[right] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes_count[right] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_past_session[left] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_future_session[left] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset[left] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset_by_sessions[left] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_in_range[left] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_window[left] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_distance[left] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_to_sessions[left] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes[left] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes_count[left] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_past_session[both] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_to_future_session[both] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset[both] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minute_offset_by_sessions[both] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_in_range[both] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_window[both] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_distance[both] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_minutes_to_sessions[both] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes[both] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_minutes_count[both] PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_has_break PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_regular_holidays_sample PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_adhoc_holidays_sample PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_non_holidays_sample PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_late_opens_sample PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_early_closes_sample PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_early_closes_sample_time PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_early_closes_weekdays PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_early_closes_weekdays_time PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_non_early_closes_sample PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_non_early_closes_sample_time PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_late_opens PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_early_closes PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_open_close_break_start_end PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_has_break PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_next_prev_session PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_session_offset PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_is_session PASSED [ 59%] 2277s tests/test_xlis_calendar.py::TestXLISCalendar::test_date_to_session PASSED [ 59%] 2278s tests/test_xlis_calendar.py::TestXLISCalendar::test_prev_next_open_close PASSED [ 59%] 2278s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_in_range PASSED [ 60%] 2278s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_has_break PASSED [ 60%] 2278s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_window PASSED [ 60%] 2278s tests/test_xlis_calendar.py::TestXLISCalendar::test_sessions_distance PASSED [ 60%] 2278s tests/test_xlis_calendar.py::TestXLISCalendar::test_trading_index PASSED [ 60%] 2278s tests/test_xlis_calendar.py::TestXLISCalendar::test_deprecated PASSED [ 60%] 2278s tests/test_xlon_calendar.py::TestXLONCalendar::test_testbase_integrity PASSED [ 60%] 2278s tests/test_xlon_calendar.py::TestXLONCalendar::test_base_integrity PASSED [ 60%] 2280s tests/test_xlon_calendar.py::TestXLONCalendar::test_calculated_against_csv PASSED [ 60%] 2280s tests/test_xlon_calendar.py::TestXLONCalendar::test_start_end PASSED [ 60%] 2280s tests/test_xlon_calendar.py::TestXLONCalendar::test_invalid_input PASSED [ 60%] 2281s tests/test_xlon_calendar.py::TestXLONCalendar::test_bound_min PASSED [ 60%] 2281s tests/test_xlon_calendar.py::TestXLONCalendar::test_bound_max PASSED [ 60%] 2281s tests/test_xlon_calendar.py::TestXLONCalendar::test_sanity_check_session_lengths PASSED [ 60%] 2281s tests/test_xlon_calendar.py::TestXLONCalendar::test_adhoc_holidays_specification PASSED [ 60%] 2281s tests/test_xlon_calendar.py::TestXLONCalendar::test_daylight_savings PASSED [ 60%] 2281s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions PASSED [ 60%] 2281s tests/test_xlon_calendar.py::TestXLONCalendar::test_opens_closes_break_starts_ends PASSED [ 60%] 2281s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_properties[both] PASSED [ 60%] 2282s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes[both] PASSED [ 60%] 2282s tests/test_xlon_calendar.py::TestXLONCalendar::test_calendar_bounds_properties[both] PASSED [ 60%] 2282s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minute_methods[both] PASSED [ 60%] 2282s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minutes[both] PASSED [ 60%] 2282s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_trading_minute[both] PASSED [ 60%] 2282s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_break_minute[both] PASSED [ 60%] 2282s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_on_minute[both] PASSED [ 60%] 2282s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_at_time[both] PASSED [ 60%] 2282s tests/test_xlon_calendar.py::TestXLONCalendar::test_prev_next_minute[both] PASSED [ 60%] 2282s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[both-next] PASSED [ 60%] 2282s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[both-next] PASSED [ 60%] 2282s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[left-next] PASSED [ 60%] 2282s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[left-next] PASSED [ 60%] 2282s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_properties[left] PASSED [ 60%] 2283s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes[left] PASSED [ 60%] 2283s tests/test_xlon_calendar.py::TestXLONCalendar::test_calendar_bounds_properties[left] PASSED [ 60%] 2283s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minute_methods[left] PASSED [ 60%] 2283s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minutes[left] PASSED [ 60%] 2283s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_trading_minute[left] PASSED [ 60%] 2283s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_break_minute[left] PASSED [ 60%] 2283s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_on_minute[left] PASSED [ 60%] 2283s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_at_time[left] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_prev_next_minute[left] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[left-previous] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[both-previous] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[right-previous] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[right-next] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[right-next] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_properties[right] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes[right] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_calendar_bounds_properties[right] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minute_methods[right] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minutes[right] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_trading_minute[right] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_break_minute[right] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_on_minute[right] PASSED [ 60%] 2284s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_at_time[right] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_prev_next_minute[right] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[right-none] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[right-none] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[left-none] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[left-none] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[both-none] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[both-none] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[neither-none] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[neither-previous] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_session[neither-next] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_properties[neither] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes[neither] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_calendar_bounds_properties[neither] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minute_methods[neither] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_minutes[neither] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_trading_minute[neither] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_break_minute[neither] PASSED [ 60%] 2285s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_on_minute[neither] PASSED [ 60%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_open_at_time[neither] PASSED [ 60%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_prev_next_minute[neither] PASSED [ 60%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_past_session[neither] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_future_session[neither] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset[neither] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset_by_sessions[neither] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_in_range[neither] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_window[neither] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_distance[neither] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_to_sessions[neither] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes[neither] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes_count[neither] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_past_session[right] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_future_session[right] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset[right] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset_by_sessions[right] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_in_range[right] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_window[right] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_distance[right] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_to_sessions[right] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes[right] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes_count[right] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_past_session[left] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_future_session[left] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset[left] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset_by_sessions[left] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_in_range[left] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_window[left] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_distance[left] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_to_sessions[left] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes[left] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes_count[left] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_past_session[both] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_to_future_session[both] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset[both] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minute_offset_by_sessions[both] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_in_range[both] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_window[both] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_distance[both] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_minutes_to_sessions[both] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes[both] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_minutes_count[both] PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_has_break PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_regular_holidays_sample PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_adhoc_holidays_sample PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_non_holidays_sample PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_late_opens_sample PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_early_closes_sample PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_early_closes_sample_time PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_early_closes_weekdays PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_early_closes_weekdays_time PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_non_early_closes_sample PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_non_early_closes_sample_time PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_late_opens PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_early_closes PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_open_close_break_start_end PASSED [ 61%] 2286s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_has_break PASSED [ 61%] 2287s tests/test_xlon_calendar.py::TestXLONCalendar::test_next_prev_session PASSED [ 61%] 2287s tests/test_xlon_calendar.py::TestXLONCalendar::test_session_offset PASSED [ 61%] 2287s tests/test_xlon_calendar.py::TestXLONCalendar::test_is_session PASSED [ 61%] 2287s tests/test_xlon_calendar.py::TestXLONCalendar::test_date_to_session PASSED [ 61%] 2288s tests/test_xlon_calendar.py::TestXLONCalendar::test_prev_next_open_close PASSED [ 61%] 2288s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_in_range PASSED [ 61%] 2288s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_has_break PASSED [ 61%] 2288s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_window PASSED [ 61%] 2288s tests/test_xlon_calendar.py::TestXLONCalendar::test_sessions_distance PASSED [ 61%] 2288s tests/test_xlon_calendar.py::TestXLONCalendar::test_trading_index PASSED [ 61%] 2288s tests/test_xlon_calendar.py::TestXLONCalendar::test_deprecated PASSED [ 61%] 2288s tests/test_xmad_calendar.py::TestXMADCalendar::test_testbase_integrity PASSED [ 61%] 2288s tests/test_xmad_calendar.py::TestXMADCalendar::test_base_integrity PASSED [ 61%] 2289s tests/test_xmad_calendar.py::TestXMADCalendar::test_calculated_against_csv PASSED [ 61%] 2290s tests/test_xmad_calendar.py::TestXMADCalendar::test_start_end PASSED [ 61%] 2290s tests/test_xmad_calendar.py::TestXMADCalendar::test_invalid_input PASSED [ 61%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_bound_min PASSED [ 61%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_bound_max PASSED [ 61%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_sanity_check_session_lengths PASSED [ 61%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_adhoc_holidays_specification PASSED [ 61%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_daylight_savings PASSED [ 61%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions PASSED [ 61%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_opens_closes_break_starts_ends PASSED [ 61%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_properties[both] PASSED [ 61%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes[both] PASSED [ 61%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_calendar_bounds_properties[both] PASSED [ 61%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minute_methods[both] PASSED [ 61%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minutes[both] PASSED [ 62%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_trading_minute[both] PASSED [ 62%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_break_minute[both] PASSED [ 62%] 2291s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_on_minute[both] PASSED [ 62%] 2292s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_at_time[both] PASSED [ 62%] 2292s tests/test_xmad_calendar.py::TestXMADCalendar::test_prev_next_minute[both] PASSED [ 62%] 2292s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[both-next] PASSED [ 62%] 2292s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[both-next] PASSED [ 62%] 2292s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[left-next] PASSED [ 62%] 2292s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[left-next] PASSED [ 62%] 2292s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_properties[left] PASSED [ 62%] 2292s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes[left] PASSED [ 62%] 2292s tests/test_xmad_calendar.py::TestXMADCalendar::test_calendar_bounds_properties[left] PASSED [ 62%] 2292s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minute_methods[left] PASSED [ 62%] 2292s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minutes[left] PASSED [ 62%] 2292s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_trading_minute[left] PASSED [ 62%] 2292s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_break_minute[left] PASSED [ 62%] 2292s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_on_minute[left] PASSED [ 62%] 2293s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_at_time[left] PASSED [ 62%] 2293s tests/test_xmad_calendar.py::TestXMADCalendar::test_prev_next_minute[left] PASSED [ 62%] 2293s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[left-previous] PASSED [ 62%] 2293s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 62%] 2293s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[both-previous] PASSED [ 62%] 2293s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 62%] 2293s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[right-previous] PASSED [ 62%] 2293s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 62%] 2293s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[right-next] PASSED [ 62%] 2293s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[right-next] PASSED [ 62%] 2293s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_properties[right] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes[right] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_calendar_bounds_properties[right] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minute_methods[right] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minutes[right] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_trading_minute[right] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_break_minute[right] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_on_minute[right] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_at_time[right] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_prev_next_minute[right] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[right-none] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[right-none] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[left-none] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[left-none] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[both-none] PASSED [ 62%] 2294s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[both-none] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[neither-none] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[neither-previous] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_session[neither-next] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_properties[neither] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes[neither] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_calendar_bounds_properties[neither] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minute_methods[neither] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_minutes[neither] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_trading_minute[neither] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_break_minute[neither] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_on_minute[neither] PASSED [ 62%] 2295s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_open_at_time[neither] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_prev_next_minute[neither] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_past_session[neither] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_future_session[neither] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset[neither] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset_by_sessions[neither] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_in_range[neither] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_window[neither] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_distance[neither] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_to_sessions[neither] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes[neither] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes_count[neither] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_past_session[right] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_future_session[right] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset[right] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset_by_sessions[right] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_in_range[right] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_window[right] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_distance[right] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_to_sessions[right] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes[right] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes_count[right] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_past_session[left] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_future_session[left] PASSED [ 62%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset[left] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset_by_sessions[left] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_in_range[left] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_window[left] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_distance[left] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_to_sessions[left] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes[left] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes_count[left] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_past_session[both] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_to_future_session[both] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset[both] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minute_offset_by_sessions[both] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_in_range[both] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_window[both] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_distance[both] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_minutes_to_sessions[both] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes[both] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_minutes_count[both] PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_has_break PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_regular_holidays_sample PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_adhoc_holidays_sample PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_non_holidays_sample PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_late_opens_sample PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_early_closes_sample PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_early_closes_sample_time PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_early_closes_weekdays PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_early_closes_weekdays_time PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_non_early_closes_sample PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_non_early_closes_sample_time PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_late_opens PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_early_closes PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_open_close_break_start_end PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_has_break PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_next_prev_session PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_session_offset PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_is_session PASSED [ 63%] 2296s tests/test_xmad_calendar.py::TestXMADCalendar::test_date_to_session PASSED [ 63%] 2297s tests/test_xmad_calendar.py::TestXMADCalendar::test_prev_next_open_close PASSED [ 63%] 2297s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_in_range PASSED [ 63%] 2297s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_has_break PASSED [ 63%] 2297s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_window PASSED [ 63%] 2297s tests/test_xmad_calendar.py::TestXMADCalendar::test_sessions_distance PASSED [ 63%] 2298s tests/test_xmad_calendar.py::TestXMADCalendar::test_trading_index PASSED [ 63%] 2298s tests/test_xmad_calendar.py::TestXMADCalendar::test_deprecated PASSED [ 63%] 2298s tests/test_xmex_calendar.py::TestXMEXCalendar::test_testbase_integrity PASSED [ 63%] 2298s tests/test_xmex_calendar.py::TestXMEXCalendar::test_base_integrity PASSED [ 63%] 2299s tests/test_xmex_calendar.py::TestXMEXCalendar::test_calculated_against_csv PASSED [ 63%] 2299s tests/test_xmex_calendar.py::TestXMEXCalendar::test_start_end PASSED [ 63%] 2299s tests/test_xmex_calendar.py::TestXMEXCalendar::test_invalid_input PASSED [ 63%] 2300s tests/test_xmex_calendar.py::TestXMEXCalendar::test_bound_min PASSED [ 63%] 2300s tests/test_xmex_calendar.py::TestXMEXCalendar::test_bound_max PASSED [ 63%] 2300s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sanity_check_session_lengths PASSED [ 63%] 2300s tests/test_xmex_calendar.py::TestXMEXCalendar::test_adhoc_holidays_specification PASSED [ 63%] 2300s tests/test_xmex_calendar.py::TestXMEXCalendar::test_daylight_savings PASSED [ 63%] 2300s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions PASSED [ 63%] 2300s tests/test_xmex_calendar.py::TestXMEXCalendar::test_opens_closes_break_starts_ends PASSED [ 63%] 2300s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_properties[both] PASSED [ 63%] 2301s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes[both] PASSED [ 63%] 2301s tests/test_xmex_calendar.py::TestXMEXCalendar::test_calendar_bounds_properties[both] PASSED [ 63%] 2301s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minute_methods[both] PASSED [ 63%] 2301s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minutes[both] PASSED [ 63%] 2301s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_trading_minute[both] PASSED [ 63%] 2301s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_break_minute[both] PASSED [ 63%] 2301s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_on_minute[both] PASSED [ 63%] 2301s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_at_time[both] PASSED [ 63%] 2301s tests/test_xmex_calendar.py::TestXMEXCalendar::test_prev_next_minute[both] PASSED [ 63%] 2301s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[both-next] PASSED [ 63%] 2301s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[both-next] PASSED [ 63%] 2301s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[left-next] PASSED [ 63%] 2301s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[left-next] PASSED [ 63%] 2301s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_properties[left] PASSED [ 63%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes[left] PASSED [ 63%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_calendar_bounds_properties[left] PASSED [ 63%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minute_methods[left] PASSED [ 63%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minutes[left] PASSED [ 63%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_trading_minute[left] PASSED [ 63%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_break_minute[left] PASSED [ 63%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_on_minute[left] PASSED [ 63%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_at_time[left] PASSED [ 63%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_prev_next_minute[left] PASSED [ 63%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[left-previous] PASSED [ 63%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 64%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[both-previous] PASSED [ 64%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 64%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[right-previous] PASSED [ 64%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 64%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[right-next] PASSED [ 64%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[right-next] PASSED [ 64%] 2302s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_properties[right] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes[right] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_calendar_bounds_properties[right] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minute_methods[right] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minutes[right] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_trading_minute[right] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_break_minute[right] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_on_minute[right] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_at_time[right] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_prev_next_minute[right] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[right-none] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[right-none] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[left-none] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[left-none] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[both-none] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[both-none] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[neither-none] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[neither-previous] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_session[neither-next] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 64%] 2303s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_properties[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_calendar_bounds_properties[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minute_methods[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_minutes[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_trading_minute[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_break_minute[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_on_minute[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_open_at_time[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_prev_next_minute[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_past_session[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_future_session[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset_by_sessions[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_in_range[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_window[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_distance[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_to_sessions[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes_count[neither] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_past_session[right] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_future_session[right] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset[right] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset_by_sessions[right] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_in_range[right] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_window[right] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_distance[right] PASSED [ 64%] 2304s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_to_sessions[right] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes[right] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes_count[right] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_past_session[left] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_future_session[left] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset[left] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset_by_sessions[left] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_in_range[left] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_window[left] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_distance[left] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_to_sessions[left] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes[left] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes_count[left] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_past_session[both] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_to_future_session[both] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset[both] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minute_offset_by_sessions[both] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_in_range[both] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_window[both] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_distance[both] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_minutes_to_sessions[both] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes[both] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_minutes_count[both] PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_has_break PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_regular_holidays_sample PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_adhoc_holidays_sample PASSED [ 64%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_non_holidays_sample PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_late_opens_sample PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_early_closes_sample PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_early_closes_sample_time PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_early_closes_weekdays PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_early_closes_weekdays_time PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_non_early_closes_sample PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_non_early_closes_sample_time PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_late_opens PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_early_closes PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_open_close_break_start_end PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_has_break PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_next_prev_session PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_session_offset PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_is_session PASSED [ 65%] 2305s tests/test_xmex_calendar.py::TestXMEXCalendar::test_date_to_session PASSED [ 65%] 2306s tests/test_xmex_calendar.py::TestXMEXCalendar::test_prev_next_open_close PASSED [ 65%] 2306s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_in_range PASSED [ 65%] 2306s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_has_break PASSED [ 65%] 2306s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_window PASSED [ 65%] 2306s tests/test_xmex_calendar.py::TestXMEXCalendar::test_sessions_distance PASSED [ 65%] 2306s tests/test_xmex_calendar.py::TestXMEXCalendar::test_trading_index PASSED [ 65%] 2306s tests/test_xmex_calendar.py::TestXMEXCalendar::test_deprecated PASSED [ 65%] 2306s tests/test_xmil_calendar.py::TestXMILCalendar::test_testbase_integrity PASSED [ 65%] 2306s tests/test_xmil_calendar.py::TestXMILCalendar::test_base_integrity PASSED [ 65%] 2307s tests/test_xmil_calendar.py::TestXMILCalendar::test_calculated_against_csv PASSED [ 65%] 2307s tests/test_xmil_calendar.py::TestXMILCalendar::test_start_end PASSED [ 65%] 2308s tests/test_xmil_calendar.py::TestXMILCalendar::test_invalid_input PASSED [ 65%] 2308s tests/test_xmil_calendar.py::TestXMILCalendar::test_bound_min PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_bound_max PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_sanity_check_session_lengths PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_adhoc_holidays_specification PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_daylight_savings PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_opens_closes_break_starts_ends PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_properties[both] PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes[both] PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_calendar_bounds_properties[both] PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minute_methods[both] PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minutes[both] PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_trading_minute[both] PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_break_minute[both] PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_on_minute[both] PASSED [ 65%] 2309s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_at_time[both] PASSED [ 65%] 2310s tests/test_xmil_calendar.py::TestXMILCalendar::test_prev_next_minute[both] PASSED [ 65%] 2310s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[both-next] PASSED [ 65%] 2310s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[both-next] PASSED [ 65%] 2310s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[left-next] PASSED [ 65%] 2310s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[left-next] PASSED [ 65%] 2310s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_properties[left] PASSED [ 65%] 2310s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes[left] PASSED [ 65%] 2310s tests/test_xmil_calendar.py::TestXMILCalendar::test_calendar_bounds_properties[left] PASSED [ 65%] 2310s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minute_methods[left] PASSED [ 65%] 2310s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minutes[left] PASSED [ 65%] 2310s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_trading_minute[left] PASSED [ 65%] 2310s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_break_minute[left] PASSED [ 65%] 2310s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_on_minute[left] PASSED [ 65%] 2310s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_at_time[left] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_prev_next_minute[left] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[left-previous] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[both-previous] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[right-previous] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[right-next] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[right-next] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_properties[right] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes[right] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_calendar_bounds_properties[right] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minute_methods[right] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minutes[right] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_trading_minute[right] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_break_minute[right] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_on_minute[right] PASSED [ 65%] 2311s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_at_time[right] PASSED [ 65%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_prev_next_minute[right] PASSED [ 65%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[right-none] PASSED [ 65%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[right-none] PASSED [ 65%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[left-none] PASSED [ 65%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[left-none] PASSED [ 65%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[both-none] PASSED [ 65%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[both-none] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[neither-none] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[neither-previous] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_session[neither-next] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_properties[neither] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes[neither] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_calendar_bounds_properties[neither] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minute_methods[neither] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_minutes[neither] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_trading_minute[neither] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_break_minute[neither] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_on_minute[neither] PASSED [ 66%] 2312s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_open_at_time[neither] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_prev_next_minute[neither] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_past_session[neither] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_future_session[neither] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset[neither] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset_by_sessions[neither] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_in_range[neither] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_window[neither] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_distance[neither] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_to_sessions[neither] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes[neither] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes_count[neither] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_past_session[right] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_future_session[right] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset[right] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset_by_sessions[right] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_in_range[right] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_window[right] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_distance[right] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_to_sessions[right] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes[right] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes_count[right] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_past_session[left] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_future_session[left] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset[left] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset_by_sessions[left] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_in_range[left] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_window[left] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_distance[left] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_to_sessions[left] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes[left] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes_count[left] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_past_session[both] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_to_future_session[both] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset[both] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minute_offset_by_sessions[both] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_in_range[both] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_window[both] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_distance[both] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_minutes_to_sessions[both] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes[both] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_minutes_count[both] PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_has_break PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_regular_holidays_sample PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_adhoc_holidays_sample PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_non_holidays_sample PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_late_opens_sample PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_early_closes_sample PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_early_closes_sample_time PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_early_closes_weekdays PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_early_closes_weekdays_time PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_non_early_closes_sample PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_non_early_closes_sample_time PASSED [ 66%] 2313s tests/test_xmil_calendar.py::TestXMILCalendar::test_late_opens PASSED [ 66%] 2314s tests/test_xmil_calendar.py::TestXMILCalendar::test_early_closes PASSED [ 66%] 2314s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_open_close_break_start_end PASSED [ 66%] 2314s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_has_break PASSED [ 66%] 2314s tests/test_xmil_calendar.py::TestXMILCalendar::test_next_prev_session PASSED [ 66%] 2314s tests/test_xmil_calendar.py::TestXMILCalendar::test_session_offset PASSED [ 66%] 2314s tests/test_xmil_calendar.py::TestXMILCalendar::test_is_session PASSED [ 66%] 2314s tests/test_xmil_calendar.py::TestXMILCalendar::test_date_to_session PASSED [ 66%] 2315s tests/test_xmil_calendar.py::TestXMILCalendar::test_prev_next_open_close PASSED [ 66%] 2315s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_in_range PASSED [ 66%] 2315s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_has_break PASSED [ 66%] 2315s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_window PASSED [ 66%] 2315s tests/test_xmil_calendar.py::TestXMILCalendar::test_sessions_distance PASSED [ 66%] 2315s tests/test_xmil_calendar.py::TestXMILCalendar::test_trading_index PASSED [ 66%] 2315s tests/test_xmil_calendar.py::TestXMILCalendar::test_deprecated PASSED [ 67%] 2315s tests/test_xmos_calendar.py::TestXMOSCalendar::test_testbase_integrity PASSED [ 67%] 2315s tests/test_xmos_calendar.py::TestXMOSCalendar::test_base_integrity PASSED [ 67%] 2325s tests/test_xmos_calendar.py::TestXMOSCalendar::test_calculated_against_csv PASSED [ 67%] 2326s tests/test_xmos_calendar.py::TestXMOSCalendar::test_start_end PASSED [ 67%] 2327s tests/test_xmos_calendar.py::TestXMOSCalendar::test_invalid_input PASSED [ 67%] 2333s tests/test_xmos_calendar.py::TestXMOSCalendar::test_bound_min PASSED [ 67%] 2335s tests/test_xmos_calendar.py::TestXMOSCalendar::test_bound_max PASSED [ 67%] 2335s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sanity_check_session_lengths PASSED [ 67%] 2335s tests/test_xmos_calendar.py::TestXMOSCalendar::test_adhoc_holidays_specification PASSED [ 67%] 2335s tests/test_xmos_calendar.py::TestXMOSCalendar::test_daylight_savings PASSED [ 67%] 2335s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions PASSED [ 67%] 2335s tests/test_xmos_calendar.py::TestXMOSCalendar::test_opens_closes_break_starts_ends PASSED [ 67%] 2335s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_properties[both] PASSED [ 67%] 2336s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes[both] PASSED [ 67%] 2336s tests/test_xmos_calendar.py::TestXMOSCalendar::test_calendar_bounds_properties[both] PASSED [ 67%] 2336s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minute_methods[both] PASSED [ 67%] 2336s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minutes[both] PASSED [ 67%] 2336s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_trading_minute[both] PASSED [ 67%] 2336s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_break_minute[both] PASSED [ 67%] 2336s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_on_minute[both] PASSED [ 67%] 2336s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_at_time[both] PASSED [ 67%] 2337s tests/test_xmos_calendar.py::TestXMOSCalendar::test_prev_next_minute[both] PASSED [ 67%] 2337s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[both-next] PASSED [ 67%] 2337s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[both-next] PASSED [ 67%] 2337s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[left-next] PASSED [ 67%] 2337s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[left-next] PASSED [ 67%] 2337s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_properties[left] PASSED [ 67%] 2337s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes[left] PASSED [ 67%] 2337s tests/test_xmos_calendar.py::TestXMOSCalendar::test_calendar_bounds_properties[left] PASSED [ 67%] 2337s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minute_methods[left] PASSED [ 67%] 2337s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minutes[left] PASSED [ 67%] 2337s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_trading_minute[left] PASSED [ 67%] 2337s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_break_minute[left] PASSED [ 67%] 2337s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_on_minute[left] PASSED [ 67%] 2337s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_at_time[left] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_prev_next_minute[left] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[left-previous] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[both-previous] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[right-previous] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[right-next] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[right-next] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_properties[right] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes[right] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_calendar_bounds_properties[right] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minute_methods[right] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minutes[right] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_trading_minute[right] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_break_minute[right] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_on_minute[right] PASSED [ 67%] 2338s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_at_time[right] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_prev_next_minute[right] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[right-none] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[right-none] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[left-none] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[left-none] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[both-none] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[both-none] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[neither-none] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[neither-previous] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_session[neither-next] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_properties[neither] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes[neither] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_calendar_bounds_properties[neither] PASSED [ 67%] 2339s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minute_methods[neither] PASSED [ 67%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_minutes[neither] PASSED [ 67%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_trading_minute[neither] PASSED [ 67%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_break_minute[neither] PASSED [ 67%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_on_minute[neither] PASSED [ 67%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_open_at_time[neither] PASSED [ 67%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_prev_next_minute[neither] PASSED [ 67%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_past_session[neither] PASSED [ 67%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_future_session[neither] PASSED [ 67%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset[neither] PASSED [ 67%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset_by_sessions[neither] PASSED [ 67%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_in_range[neither] PASSED [ 67%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_window[neither] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_distance[neither] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_to_sessions[neither] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes[neither] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes_count[neither] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_past_session[right] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_future_session[right] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset[right] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset_by_sessions[right] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_in_range[right] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_window[right] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_distance[right] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_to_sessions[right] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes[right] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes_count[right] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_past_session[left] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_future_session[left] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset[left] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset_by_sessions[left] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_in_range[left] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_window[left] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_distance[left] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_to_sessions[left] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes[left] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes_count[left] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_past_session[both] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_to_future_session[both] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset[both] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minute_offset_by_sessions[both] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_in_range[both] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_window[both] PASSED [ 68%] 2340s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_distance[both] PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_minutes_to_sessions[both] PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes[both] PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_minutes_count[both] PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_has_break PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_regular_holidays_sample PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_adhoc_holidays_sample PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_non_holidays_sample PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_late_opens_sample PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_early_closes_sample PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_early_closes_sample_time PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_early_closes_weekdays PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_early_closes_weekdays_time PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_non_early_closes_sample PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_non_early_closes_sample_time PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_late_opens PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_early_closes PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_open_close_break_start_end PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_has_break PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_next_prev_session PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_session_offset PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_is_session PASSED [ 68%] 2341s tests/test_xmos_calendar.py::TestXMOSCalendar::test_date_to_session PASSED [ 68%] 2342s tests/test_xmos_calendar.py::TestXMOSCalendar::test_prev_next_open_close PASSED [ 68%] 2342s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_in_range PASSED [ 68%] 2342s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_has_break PASSED [ 68%] 2342s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_window PASSED [ 68%] 2342s tests/test_xmos_calendar.py::TestXMOSCalendar::test_sessions_distance PASSED [ 68%] 2342s tests/test_xmos_calendar.py::TestXMOSCalendar::test_trading_index PASSED [ 68%] 2342s tests/test_xmos_calendar.py::TestXMOSCalendar::test_deprecated PASSED [ 68%] 2342s tests/test_xnys_calendar.py::TestXNYSCalendar::test_testbase_integrity PASSED [ 68%] 2342s tests/test_xnys_calendar.py::TestXNYSCalendar::test_base_integrity PASSED [ 68%] 2344s tests/test_xnys_calendar.py::TestXNYSCalendar::test_calculated_against_csv PASSED [ 68%] 2344s tests/test_xnys_calendar.py::TestXNYSCalendar::test_start_end PASSED [ 68%] 2344s tests/test_xnys_calendar.py::TestXNYSCalendar::test_invalid_input PASSED [ 68%] 2345s tests/test_xnys_calendar.py::TestXNYSCalendar::test_bound_min PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_bound_max PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sanity_check_session_lengths PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_adhoc_holidays_specification PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_daylight_savings PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_opens_closes_break_starts_ends PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_properties[both] PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes[both] PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_calendar_bounds_properties[both] PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minute_methods[both] PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minutes[both] PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_trading_minute[both] PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_break_minute[both] PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_on_minute[both] PASSED [ 68%] 2346s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_at_time[both] PASSED [ 68%] 2347s tests/test_xnys_calendar.py::TestXNYSCalendar::test_prev_next_minute[both] PASSED [ 69%] 2347s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[both-next] PASSED [ 69%] 2347s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[both-next] PASSED [ 69%] 2347s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[left-next] PASSED [ 69%] 2347s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[left-next] PASSED [ 69%] 2347s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_properties[left] PASSED [ 69%] 2347s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes[left] PASSED [ 69%] 2347s tests/test_xnys_calendar.py::TestXNYSCalendar::test_calendar_bounds_properties[left] PASSED [ 69%] 2347s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minute_methods[left] PASSED [ 69%] 2347s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minutes[left] PASSED [ 69%] 2347s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_trading_minute[left] PASSED [ 69%] 2347s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_break_minute[left] PASSED [ 69%] 2347s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_on_minute[left] PASSED [ 69%] 2347s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_at_time[left] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_prev_next_minute[left] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[left-previous] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[both-previous] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[right-previous] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[right-next] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[right-next] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_properties[right] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes[right] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_calendar_bounds_properties[right] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minute_methods[right] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minutes[right] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_trading_minute[right] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_break_minute[right] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_on_minute[right] PASSED [ 69%] 2348s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_at_time[right] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_prev_next_minute[right] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[right-none] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[right-none] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[left-none] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[left-none] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[both-none] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[both-none] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[neither-none] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[neither-previous] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_session[neither-next] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_properties[neither] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes[neither] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_calendar_bounds_properties[neither] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minute_methods[neither] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_minutes[neither] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_trading_minute[neither] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_break_minute[neither] PASSED [ 69%] 2349s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_on_minute[neither] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_open_at_time[neither] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_prev_next_minute[neither] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_past_session[neither] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_future_session[neither] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset[neither] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset_by_sessions[neither] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_in_range[neither] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_window[neither] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_distance[neither] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_to_sessions[neither] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes[neither] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes_count[neither] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_past_session[right] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_future_session[right] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset[right] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset_by_sessions[right] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_in_range[right] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_window[right] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_distance[right] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_to_sessions[right] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes[right] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes_count[right] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_past_session[left] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_future_session[left] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset[left] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset_by_sessions[left] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_in_range[left] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_window[left] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_distance[left] PASSED [ 69%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_to_sessions[left] PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes[left] PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes_count[left] PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_past_session[both] PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_to_future_session[both] PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset[both] PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minute_offset_by_sessions[both] PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_in_range[both] PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_window[both] PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_distance[both] PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_minutes_to_sessions[both] PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes[both] PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_minutes_count[both] PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_has_break PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_regular_holidays_sample PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_adhoc_holidays_sample PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_non_holidays_sample PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_late_opens_sample PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_early_closes_sample PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_early_closes_sample_time PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_early_closes_weekdays PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_early_closes_weekdays_time PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_non_early_closes_sample PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_non_early_closes_sample_time PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_late_opens PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_early_closes PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_open_close_break_start_end PASSED [ 70%] 2350s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_has_break PASSED [ 70%] 2351s tests/test_xnys_calendar.py::TestXNYSCalendar::test_next_prev_session PASSED [ 70%] 2351s tests/test_xnys_calendar.py::TestXNYSCalendar::test_session_offset PASSED [ 70%] 2351s tests/test_xnys_calendar.py::TestXNYSCalendar::test_is_session PASSED [ 70%] 2351s tests/test_xnys_calendar.py::TestXNYSCalendar::test_date_to_session PASSED [ 70%] 2352s tests/test_xnys_calendar.py::TestXNYSCalendar::test_prev_next_open_close PASSED [ 70%] 2352s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_in_range PASSED [ 70%] 2352s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_has_break PASSED [ 70%] 2352s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_window PASSED [ 70%] 2352s tests/test_xnys_calendar.py::TestXNYSCalendar::test_sessions_distance PASSED [ 70%] 2352s tests/test_xnys_calendar.py::TestXNYSCalendar::test_trading_index PASSED [ 70%] 2352s tests/test_xnys_calendar.py::TestXNYSCalendar::test_deprecated PASSED [ 70%] 2352s tests/test_xnze_calendar.py::TestXNZECalendar::test_testbase_integrity PASSED [ 70%] 2352s tests/test_xnze_calendar.py::TestXNZECalendar::test_base_integrity PASSED [ 70%] 2353s tests/test_xnze_calendar.py::TestXNZECalendar::test_calculated_against_csv PASSED [ 70%] 2354s tests/test_xnze_calendar.py::TestXNZECalendar::test_start_end PASSED [ 70%] 2354s tests/test_xnze_calendar.py::TestXNZECalendar::test_invalid_input PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_bound_min PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_bound_max PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_sanity_check_session_lengths PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_adhoc_holidays_specification PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_daylight_savings PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_opens_closes_break_starts_ends PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_properties[both] PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes[both] PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_calendar_bounds_properties[both] PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minute_methods[both] PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minutes[both] PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_trading_minute[both] PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_break_minute[both] PASSED [ 70%] 2355s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_on_minute[both] PASSED [ 70%] 2356s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_at_time[both] PASSED [ 70%] 2356s tests/test_xnze_calendar.py::TestXNZECalendar::test_prev_next_minute[both] PASSED [ 70%] 2356s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[both-next] PASSED [ 70%] 2356s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[both-next] PASSED [ 70%] 2356s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[left-next] PASSED [ 70%] 2356s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[left-next] PASSED [ 70%] 2356s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_properties[left] PASSED [ 70%] 2356s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes[left] PASSED [ 70%] 2356s tests/test_xnze_calendar.py::TestXNZECalendar::test_calendar_bounds_properties[left] PASSED [ 70%] 2356s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minute_methods[left] PASSED [ 70%] 2356s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minutes[left] PASSED [ 70%] 2356s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_trading_minute[left] PASSED [ 70%] 2356s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_break_minute[left] PASSED [ 70%] 2356s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_on_minute[left] PASSED [ 70%] 2357s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_at_time[left] PASSED [ 70%] 2357s tests/test_xnze_calendar.py::TestXNZECalendar::test_prev_next_minute[left] PASSED [ 70%] 2357s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[left-previous] PASSED [ 70%] 2357s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 70%] 2357s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[both-previous] PASSED [ 70%] 2357s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 70%] 2357s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[right-previous] PASSED [ 70%] 2357s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 70%] 2357s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[right-next] PASSED [ 70%] 2357s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[right-next] PASSED [ 71%] 2357s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_properties[right] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes[right] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_calendar_bounds_properties[right] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minute_methods[right] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minutes[right] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_trading_minute[right] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_break_minute[right] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_on_minute[right] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_at_time[right] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_prev_next_minute[right] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[right-none] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[right-none] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[left-none] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[left-none] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[both-none] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[both-none] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[neither-none] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[neither-previous] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_session[neither-next] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 71%] 2358s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_properties[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_calendar_bounds_properties[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minute_methods[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_minutes[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_trading_minute[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_break_minute[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_on_minute[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_open_at_time[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_prev_next_minute[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_past_session[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_future_session[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset_by_sessions[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_in_range[neither] PASSED [ 71%] 2359s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_window[neither] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_distance[neither] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_to_sessions[neither] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes[neither] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes_count[neither] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_past_session[right] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_future_session[right] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset[right] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset_by_sessions[right] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_in_range[right] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_window[right] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_distance[right] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_to_sessions[right] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes[right] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes_count[right] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_past_session[left] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_future_session[left] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset[left] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset_by_sessions[left] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_in_range[left] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_window[left] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_distance[left] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_to_sessions[left] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes[left] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes_count[left] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_past_session[both] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_to_future_session[both] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset[both] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minute_offset_by_sessions[both] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_in_range[both] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_window[both] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_distance[both] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_minutes_to_sessions[both] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes[both] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_minutes_count[both] PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_has_break PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_regular_holidays_sample PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_adhoc_holidays_sample PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_non_holidays_sample PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_late_opens_sample PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_early_closes_sample PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_early_closes_sample_time PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_early_closes_weekdays PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_early_closes_weekdays_time PASSED [ 71%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_non_early_closes_sample PASSED [ 72%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_non_early_closes_sample_time PASSED [ 72%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_late_opens PASSED [ 72%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_early_closes PASSED [ 72%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_open_close_break_start_end PASSED [ 72%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_has_break PASSED [ 72%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_next_prev_session PASSED [ 72%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_session_offset PASSED [ 72%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_is_session PASSED [ 72%] 2360s tests/test_xnze_calendar.py::TestXNZECalendar::test_date_to_session PASSED [ 72%] 2361s tests/test_xnze_calendar.py::TestXNZECalendar::test_prev_next_open_close PASSED [ 72%] 2361s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_in_range PASSED [ 72%] 2361s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_has_break PASSED [ 72%] 2361s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_window PASSED [ 72%] 2361s tests/test_xnze_calendar.py::TestXNZECalendar::test_sessions_distance PASSED [ 72%] 2361s tests/test_xnze_calendar.py::TestXNZECalendar::test_trading_index PASSED [ 72%] 2361s tests/test_xnze_calendar.py::TestXNZECalendar::test_deprecated PASSED [ 72%] 2361s tests/test_xosl_calendar.py::TestXOSLCalendar::test_testbase_integrity PASSED [ 72%] 2361s tests/test_xosl_calendar.py::TestXOSLCalendar::test_base_integrity PASSED [ 72%] 2363s tests/test_xosl_calendar.py::TestXOSLCalendar::test_calculated_against_csv PASSED [ 72%] 2363s tests/test_xosl_calendar.py::TestXOSLCalendar::test_start_end PASSED [ 72%] 2363s tests/test_xosl_calendar.py::TestXOSLCalendar::test_invalid_input PASSED [ 72%] 2364s tests/test_xosl_calendar.py::TestXOSLCalendar::test_bound_min PASSED [ 72%] 2364s tests/test_xosl_calendar.py::TestXOSLCalendar::test_bound_max PASSED [ 72%] 2364s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sanity_check_session_lengths PASSED [ 72%] 2364s tests/test_xosl_calendar.py::TestXOSLCalendar::test_adhoc_holidays_specification PASSED [ 72%] 2364s tests/test_xosl_calendar.py::TestXOSLCalendar::test_daylight_savings PASSED [ 72%] 2364s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions PASSED [ 72%] 2364s tests/test_xosl_calendar.py::TestXOSLCalendar::test_opens_closes_break_starts_ends PASSED [ 72%] 2364s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_properties[both] PASSED [ 72%] 2365s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes[both] PASSED [ 72%] 2365s tests/test_xosl_calendar.py::TestXOSLCalendar::test_calendar_bounds_properties[both] PASSED [ 72%] 2365s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minute_methods[both] PASSED [ 72%] 2365s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minutes[both] PASSED [ 72%] 2365s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_trading_minute[both] PASSED [ 72%] 2365s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_break_minute[both] PASSED [ 72%] 2365s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_on_minute[both] PASSED [ 72%] 2365s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_at_time[both] PASSED [ 72%] 2365s tests/test_xosl_calendar.py::TestXOSLCalendar::test_prev_next_minute[both] PASSED [ 72%] 2365s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[both-next] PASSED [ 72%] 2365s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[both-next] PASSED [ 72%] 2365s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[left-next] PASSED [ 72%] 2365s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[left-next] PASSED [ 72%] 2365s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_properties[left] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes[left] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_calendar_bounds_properties[left] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minute_methods[left] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minutes[left] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_trading_minute[left] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_break_minute[left] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_on_minute[left] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_at_time[left] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_prev_next_minute[left] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[left-previous] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[both-previous] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[right-previous] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[right-next] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[right-next] PASSED [ 72%] 2366s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_properties[right] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes[right] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_calendar_bounds_properties[right] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minute_methods[right] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minutes[right] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_trading_minute[right] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_break_minute[right] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_on_minute[right] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_at_time[right] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_prev_next_minute[right] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[right-none] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[right-none] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[left-none] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[left-none] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[both-none] PASSED [ 72%] 2367s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[both-none] PASSED [ 72%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[neither-none] PASSED [ 72%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 72%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[neither-previous] PASSED [ 72%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 72%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_session[neither-next] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_properties[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_calendar_bounds_properties[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minute_methods[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_minutes[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_trading_minute[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_break_minute[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_on_minute[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_open_at_time[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_prev_next_minute[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_past_session[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_future_session[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset_by_sessions[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_in_range[neither] PASSED [ 73%] 2368s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_window[neither] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_distance[neither] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_to_sessions[neither] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes[neither] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes_count[neither] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_past_session[right] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_future_session[right] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset[right] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset_by_sessions[right] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_in_range[right] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_window[right] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_distance[right] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_to_sessions[right] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes[right] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes_count[right] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_past_session[left] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_future_session[left] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset[left] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset_by_sessions[left] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_in_range[left] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_window[left] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_distance[left] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_to_sessions[left] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes[left] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes_count[left] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_past_session[both] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_to_future_session[both] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset[both] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minute_offset_by_sessions[both] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_in_range[both] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_window[both] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_distance[both] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_minutes_to_sessions[both] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes[both] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_minutes_count[both] PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_has_break PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_regular_holidays_sample PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_adhoc_holidays_sample PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_non_holidays_sample PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_late_opens_sample PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_early_closes_sample PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_early_closes_sample_time PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_early_closes_weekdays PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_early_closes_weekdays_time PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_non_early_closes_sample PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_non_early_closes_sample_time PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_late_opens PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_early_closes PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_open_close_break_start_end PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_has_break PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_next_prev_session PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_session_offset PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_is_session PASSED [ 73%] 2369s tests/test_xosl_calendar.py::TestXOSLCalendar::test_date_to_session PASSED [ 73%] 2370s tests/test_xosl_calendar.py::TestXOSLCalendar::test_prev_next_open_close PASSED [ 73%] 2370s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_in_range PASSED [ 73%] 2370s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_has_break PASSED [ 73%] 2370s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_window PASSED [ 73%] 2370s tests/test_xosl_calendar.py::TestXOSLCalendar::test_sessions_distance PASSED [ 73%] 2370s tests/test_xosl_calendar.py::TestXOSLCalendar::test_trading_index PASSED [ 73%] 2370s tests/test_xosl_calendar.py::TestXOSLCalendar::test_deprecated PASSED [ 73%] 2370s tests/test_xpar_calendar.py::TestXPARCalendar::test_testbase_integrity PASSED [ 73%] 2370s tests/test_xpar_calendar.py::TestXPARCalendar::test_base_integrity PASSED [ 73%] 2371s tests/test_xpar_calendar.py::TestXPARCalendar::test_calculated_against_csv PASSED [ 73%] 2372s tests/test_xpar_calendar.py::TestXPARCalendar::test_start_end PASSED [ 73%] 2372s tests/test_xpar_calendar.py::TestXPARCalendar::test_invalid_input PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_bound_min PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_bound_max PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_sanity_check_session_lengths PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_adhoc_holidays_specification PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_daylight_savings PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_opens_closes_break_starts_ends PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_properties[both] PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes[both] PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_calendar_bounds_properties[both] PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minute_methods[both] PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minutes[both] PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_trading_minute[both] PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_break_minute[both] PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_on_minute[both] PASSED [ 74%] 2373s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_at_time[both] PASSED [ 74%] 2374s tests/test_xpar_calendar.py::TestXPARCalendar::test_prev_next_minute[both] PASSED [ 74%] 2374s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[both-next] PASSED [ 74%] 2374s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[both-next] PASSED [ 74%] 2374s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[left-next] PASSED [ 74%] 2374s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[left-next] PASSED [ 74%] 2374s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_properties[left] PASSED [ 74%] 2374s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes[left] PASSED [ 74%] 2374s tests/test_xpar_calendar.py::TestXPARCalendar::test_calendar_bounds_properties[left] PASSED [ 74%] 2374s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minute_methods[left] PASSED [ 74%] 2374s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minutes[left] PASSED [ 74%] 2374s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_trading_minute[left] PASSED [ 74%] 2374s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_break_minute[left] PASSED [ 74%] 2374s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_on_minute[left] PASSED [ 74%] 2374s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_at_time[left] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_prev_next_minute[left] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[left-previous] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[both-previous] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[right-previous] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[right-next] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[right-next] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_properties[right] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes[right] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_calendar_bounds_properties[right] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minute_methods[right] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minutes[right] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_trading_minute[right] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_break_minute[right] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_on_minute[right] PASSED [ 74%] 2375s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_at_time[right] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_prev_next_minute[right] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[right-none] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[right-none] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[left-none] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[left-none] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[both-none] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[both-none] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[neither-none] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[neither-previous] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_session[neither-next] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_properties[neither] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes[neither] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_calendar_bounds_properties[neither] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minute_methods[neither] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_minutes[neither] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_trading_minute[neither] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_break_minute[neither] PASSED [ 74%] 2376s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_on_minute[neither] PASSED [ 74%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_open_at_time[neither] PASSED [ 74%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_prev_next_minute[neither] PASSED [ 74%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_past_session[neither] PASSED [ 74%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_future_session[neither] PASSED [ 74%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset[neither] PASSED [ 74%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset_by_sessions[neither] PASSED [ 74%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_in_range[neither] PASSED [ 74%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_window[neither] PASSED [ 74%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_distance[neither] PASSED [ 74%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_to_sessions[neither] PASSED [ 74%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes[neither] PASSED [ 74%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes_count[neither] PASSED [ 74%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_past_session[right] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_future_session[right] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset[right] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset_by_sessions[right] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_in_range[right] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_window[right] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_distance[right] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_to_sessions[right] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes[right] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes_count[right] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_past_session[left] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_future_session[left] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset[left] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset_by_sessions[left] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_in_range[left] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_window[left] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_distance[left] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_to_sessions[left] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes[left] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes_count[left] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_past_session[both] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_to_future_session[both] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset[both] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minute_offset_by_sessions[both] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_in_range[both] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_window[both] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_distance[both] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_minutes_to_sessions[both] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes[both] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_minutes_count[both] PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_has_break PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_regular_holidays_sample PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_adhoc_holidays_sample PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_non_holidays_sample PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_late_opens_sample PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_early_closes_sample PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_early_closes_sample_time PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_early_closes_weekdays PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_early_closes_weekdays_time PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_non_early_closes_sample PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_non_early_closes_sample_time PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_late_opens PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_early_closes PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_open_close_break_start_end PASSED [ 75%] 2377s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_has_break PASSED [ 75%] 2378s tests/test_xpar_calendar.py::TestXPARCalendar::test_next_prev_session PASSED [ 75%] 2378s tests/test_xpar_calendar.py::TestXPARCalendar::test_session_offset PASSED [ 75%] 2378s tests/test_xpar_calendar.py::TestXPARCalendar::test_is_session PASSED [ 75%] 2378s tests/test_xpar_calendar.py::TestXPARCalendar::test_date_to_session PASSED [ 75%] 2379s tests/test_xpar_calendar.py::TestXPARCalendar::test_prev_next_open_close PASSED [ 75%] 2379s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_in_range PASSED [ 75%] 2379s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_has_break PASSED [ 75%] 2379s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_window PASSED [ 75%] 2379s tests/test_xpar_calendar.py::TestXPARCalendar::test_sessions_distance PASSED [ 75%] 2379s tests/test_xpar_calendar.py::TestXPARCalendar::test_trading_index PASSED [ 75%] 2379s tests/test_xpar_calendar.py::TestXPARCalendar::test_deprecated PASSED [ 75%] 2379s tests/test_xphs_calendar.py::TestXPHSCalendar::test_testbase_integrity PASSED [ 75%] 2379s tests/test_xphs_calendar.py::TestXPHSCalendar::test_base_integrity PASSED [ 75%] 2380s tests/test_xphs_calendar.py::TestXPHSCalendar::test_calculated_against_csv PASSED [ 75%] 2380s tests/test_xphs_calendar.py::TestXPHSCalendar::test_start_end PASSED [ 75%] 2381s tests/test_xphs_calendar.py::TestXPHSCalendar::test_invalid_input PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_bound_min PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_bound_max PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sanity_check_session_lengths PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_adhoc_holidays_specification PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_daylight_savings PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_opens_closes_break_starts_ends PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_properties[both] PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes[both] PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_calendar_bounds_properties[both] PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minute_methods[both] PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minutes[both] PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_trading_minute[both] PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_break_minute[both] PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_on_minute[both] PASSED [ 75%] 2382s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_at_time[both] PASSED [ 75%] 2383s tests/test_xphs_calendar.py::TestXPHSCalendar::test_prev_next_minute[both] PASSED [ 75%] 2383s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[both-next] PASSED [ 75%] 2383s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[both-next] PASSED [ 75%] 2383s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[left-next] PASSED [ 75%] 2383s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[left-next] PASSED [ 75%] 2383s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_properties[left] PASSED [ 76%] 2383s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes[left] PASSED [ 76%] 2383s tests/test_xphs_calendar.py::TestXPHSCalendar::test_calendar_bounds_properties[left] PASSED [ 76%] 2383s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minute_methods[left] PASSED [ 76%] 2383s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minutes[left] PASSED [ 76%] 2383s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_trading_minute[left] PASSED [ 76%] 2383s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_break_minute[left] PASSED [ 76%] 2383s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_on_minute[left] PASSED [ 76%] 2383s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_at_time[left] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_prev_next_minute[left] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[left-previous] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[both-previous] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[right-previous] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[right-next] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[right-next] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_properties[right] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes[right] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_calendar_bounds_properties[right] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minute_methods[right] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minutes[right] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_trading_minute[right] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_break_minute[right] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_on_minute[right] PASSED [ 76%] 2384s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_at_time[right] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_prev_next_minute[right] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[right-none] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[right-none] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[left-none] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[left-none] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[both-none] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[both-none] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[neither-none] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[neither-previous] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_session[neither-next] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_properties[neither] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes[neither] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_calendar_bounds_properties[neither] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minute_methods[neither] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_minutes[neither] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_trading_minute[neither] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_break_minute[neither] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_on_minute[neither] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_open_at_time[neither] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_prev_next_minute[neither] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_past_session[neither] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_future_session[neither] PASSED [ 76%] 2385s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset[neither] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset_by_sessions[neither] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_in_range[neither] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_window[neither] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_distance[neither] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_to_sessions[neither] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes[neither] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes_count[neither] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_past_session[right] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_future_session[right] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset[right] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset_by_sessions[right] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_in_range[right] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_window[right] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_distance[right] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_to_sessions[right] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes[right] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes_count[right] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_past_session[left] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_future_session[left] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset[left] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset_by_sessions[left] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_in_range[left] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_window[left] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_distance[left] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_to_sessions[left] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes[left] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes_count[left] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_past_session[both] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_to_future_session[both] PASSED [ 76%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset[both] PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minute_offset_by_sessions[both] PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_in_range[both] PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_window[both] PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_distance[both] PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_minutes_to_sessions[both] PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes[both] PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_minutes_count[both] PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_has_break PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_regular_holidays_sample PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_adhoc_holidays_sample PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_non_holidays_sample PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_late_opens_sample PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_early_closes_sample PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_early_closes_sample_time PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_early_closes_weekdays PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_early_closes_weekdays_time PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_non_early_closes_sample PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_non_early_closes_sample_time PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_late_opens PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_early_closes PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_open_close_break_start_end PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_has_break PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_next_prev_session PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_session_offset PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_is_session PASSED [ 77%] 2386s tests/test_xphs_calendar.py::TestXPHSCalendar::test_date_to_session PASSED [ 77%] 2387s tests/test_xphs_calendar.py::TestXPHSCalendar::test_prev_next_open_close PASSED [ 77%] 2387s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_in_range PASSED [ 77%] 2387s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_has_break PASSED [ 77%] 2387s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_window PASSED [ 77%] 2387s tests/test_xphs_calendar.py::TestXPHSCalendar::test_sessions_distance PASSED [ 77%] 2387s tests/test_xphs_calendar.py::TestXPHSCalendar::test_trading_index PASSED [ 77%] 2387s tests/test_xphs_calendar.py::TestXPHSCalendar::test_deprecated PASSED [ 77%] 2387s tests/test_xpra_calendar.py::TestXPRACalendar::test_testbase_integrity PASSED [ 77%] 2387s tests/test_xpra_calendar.py::TestXPRACalendar::test_base_integrity PASSED [ 77%] 2389s tests/test_xpra_calendar.py::TestXPRACalendar::test_calculated_against_csv PASSED [ 77%] 2389s tests/test_xpra_calendar.py::TestXPRACalendar::test_start_end PASSED [ 77%] 2389s tests/test_xpra_calendar.py::TestXPRACalendar::test_invalid_input PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_bound_min PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_bound_max PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_sanity_check_session_lengths PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_adhoc_holidays_specification PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_daylight_savings PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_opens_closes_break_starts_ends PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_properties[both] PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes[both] PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_calendar_bounds_properties[both] PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minute_methods[both] PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minutes[both] PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_trading_minute[both] PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_break_minute[both] PASSED [ 77%] 2390s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_on_minute[both] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_at_time[both] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_prev_next_minute[both] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[both-next] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[both-next] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[left-next] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[left-next] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_properties[left] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes[left] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_calendar_bounds_properties[left] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minute_methods[left] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minutes[left] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_trading_minute[left] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_break_minute[left] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_on_minute[left] PASSED [ 77%] 2391s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_at_time[left] PASSED [ 77%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_prev_next_minute[left] PASSED [ 77%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[left-previous] PASSED [ 77%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[left-previous] PASSED [ 77%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[both-previous] PASSED [ 77%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[both-previous] PASSED [ 77%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[right-previous] PASSED [ 77%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[right-previous] PASSED [ 77%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[right-next] PASSED [ 77%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[right-next] PASSED [ 77%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_properties[right] PASSED [ 77%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes[right] PASSED [ 77%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_calendar_bounds_properties[right] PASSED [ 77%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minute_methods[right] PASSED [ 77%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minutes[right] PASSED [ 78%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_trading_minute[right] PASSED [ 78%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_break_minute[right] PASSED [ 78%] 2392s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_on_minute[right] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_at_time[right] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_prev_next_minute[right] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[right-none] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[right-none] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[left-none] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[left-none] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[both-none] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[both-none] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[neither-none] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[neither-none] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[neither-previous] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_session[neither-next] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_trading_minute[neither-next] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_properties[neither] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes[neither] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_calendar_bounds_properties[neither] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minute_methods[neither] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_minutes[neither] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_trading_minute[neither] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_break_minute[neither] PASSED [ 78%] 2393s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_on_minute[neither] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_open_at_time[neither] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_prev_next_minute[neither] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_past_session[neither] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_future_session[neither] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset[neither] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset_by_sessions[neither] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_in_range[neither] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_window[neither] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_distance[neither] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_to_sessions[neither] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes[neither] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes_count[neither] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_past_session[right] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_future_session[right] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset[right] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset_by_sessions[right] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_in_range[right] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_window[right] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_distance[right] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_to_sessions[right] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes[right] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes_count[right] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_past_session[left] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_future_session[left] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset[left] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset_by_sessions[left] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_in_range[left] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_window[left] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_distance[left] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_to_sessions[left] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes[left] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes_count[left] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_past_session[both] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_to_future_session[both] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset[both] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minute_offset_by_sessions[both] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_in_range[both] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_window[both] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_distance[both] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_minutes_to_sessions[both] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes[both] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_minutes_count[both] PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_has_break PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_regular_holidays_sample PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_adhoc_holidays_sample PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_non_holidays_sample PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_late_opens_sample PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_early_closes_sample PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_early_closes_sample_time PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_early_closes_weekdays PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_early_closes_weekdays_time PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_non_early_closes_sample PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_non_early_closes_sample_time PASSED [ 78%] 2394s tests/test_xpra_calendar.py::TestXPRACalendar::test_late_opens PASSED [ 78%] 2395s tests/test_xpra_calendar.py::TestXPRACalendar::test_early_closes PASSED [ 78%] 2395s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_open_close_break_start_end PASSED [ 78%] 2395s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_has_break PASSED [ 79%] 2395s tests/test_xpra_calendar.py::TestXPRACalendar::test_next_prev_session PASSED [ 79%] 2395s tests/test_xpra_calendar.py::TestXPRACalendar::test_session_offset PASSED [ 79%] 2395s tests/test_xpra_calendar.py::TestXPRACalendar::test_is_session PASSED [ 79%] 2395s tests/test_xpra_calendar.py::TestXPRACalendar::test_date_to_session PASSED [ 79%] 2396s tests/test_xpra_calendar.py::TestXPRACalendar::test_prev_next_open_close PASSED [ 79%] 2396s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_in_range PASSED [ 79%] 2396s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_has_break PASSED [ 79%] 2396s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_window PASSED [ 79%] 2396s tests/test_xpra_calendar.py::TestXPRACalendar::test_sessions_distance PASSED [ 79%] 2396s tests/test_xpra_calendar.py::TestXPRACalendar::test_trading_index PASSED [ 79%] 2396s tests/test_xpra_calendar.py::TestXPRACalendar::test_deprecated PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_testbase_integrity PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_base_integrity PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_calculated_against_csv PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_start_end PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_invalid_input PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_bound_min PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_bound_max PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_sanity_check_session_lengths PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_adhoc_holidays_specification PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_daylight_savings PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_opens_closes_break_starts_ends PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_properties[both] PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes[both] PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_calendar_bounds_properties[both] PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minute_methods[both] PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minutes[both] PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_trading_minute[both] PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_break_minute[both] PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_on_minute[both] PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_at_time[both] PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_prev_next_minute[both] PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[both-next] PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[both-next] PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[left-next] PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[left-next] PASSED [ 79%] 2396s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_properties[left] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes[left] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_calendar_bounds_properties[left] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minute_methods[left] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minutes[left] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_trading_minute[left] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_break_minute[left] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_on_minute[left] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_at_time[left] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_prev_next_minute[left] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[left-previous] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[both-previous] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[right-previous] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[right-next] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[right-next] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_properties[right] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes[right] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_calendar_bounds_properties[right] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minute_methods[right] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minutes[right] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_trading_minute[right] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_break_minute[right] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_on_minute[right] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_at_time[right] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_prev_next_minute[right] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[right-none] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[right-none] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[left-none] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[left-none] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[both-none] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[both-none] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[neither-none] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[neither-previous] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_session[neither-next] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_properties[neither] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes[neither] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_calendar_bounds_properties[neither] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minute_methods[neither] PASSED [ 79%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_minutes[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_trading_minute[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_break_minute[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_on_minute[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_open_at_time[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_prev_next_minute[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_past_session[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_future_session[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset_by_sessions[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_in_range[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_window[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_distance[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_to_sessions[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes_count[neither] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_past_session[right] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_future_session[right] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset[right] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset_by_sessions[right] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_in_range[right] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_window[right] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_distance[right] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_to_sessions[right] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes[right] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes_count[right] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_past_session[left] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_future_session[left] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset[left] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset_by_sessions[left] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_in_range[left] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_window[left] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_distance[left] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_to_sessions[left] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes[left] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes_count[left] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_past_session[both] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_to_future_session[both] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset[both] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minute_offset_by_sessions[both] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_in_range[both] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_window[both] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_distance[both] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_minutes_to_sessions[both] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes[both] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_minutes_count[both] PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_has_break PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_regular_holidays_sample PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_adhoc_holidays_sample PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_non_holidays_sample PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_late_opens_sample PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_early_closes_sample PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_early_closes_sample_time PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_early_closes_weekdays PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_early_closes_weekdays_time PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_non_early_closes_sample PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_non_early_closes_sample_time PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_late_opens PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_early_closes PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_open_close_break_start_end PASSED [ 80%] 2397s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_has_break PASSED [ 80%] 2398s tests/test_xsau_calendar.py::TestXASUCalendar::test_next_prev_session PASSED [ 80%] 2398s tests/test_xsau_calendar.py::TestXASUCalendar::test_session_offset PASSED [ 80%] 2398s tests/test_xsau_calendar.py::TestXASUCalendar::test_is_session PASSED [ 80%] 2398s tests/test_xsau_calendar.py::TestXASUCalendar::test_date_to_session PASSED [ 80%] 2398s tests/test_xsau_calendar.py::TestXASUCalendar::test_prev_next_open_close PASSED [ 80%] 2398s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_in_range PASSED [ 80%] 2398s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_has_break PASSED [ 80%] 2398s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_window PASSED [ 80%] 2398s tests/test_xsau_calendar.py::TestXASUCalendar::test_sessions_distance PASSED [ 80%] 2398s tests/test_xsau_calendar.py::TestXASUCalendar::test_trading_index PASSED [ 80%] 2398s tests/test_xsau_calendar.py::TestXASUCalendar::test_deprecated PASSED [ 80%] 2398s tests/test_xses_calendar.py::TestXSESCalendar::test_testbase_integrity PASSED [ 80%] 2398s tests/test_xses_calendar.py::TestXSESCalendar::test_base_integrity PASSED [ 80%] 2399s tests/test_xses_calendar.py::TestXSESCalendar::test_calculated_against_csv PASSED [ 80%] 2399s tests/test_xses_calendar.py::TestXSESCalendar::test_start_end PASSED [ 80%] 2399s tests/test_xses_calendar.py::TestXSESCalendar::test_invalid_input PASSED [ 80%] 2399s tests/test_xses_calendar.py::TestXSESCalendar::test_bound_min PASSED [ 80%] 2399s tests/test_xses_calendar.py::TestXSESCalendar::test_bound_max PASSED [ 80%] 2399s tests/test_xses_calendar.py::TestXSESCalendar::test_sanity_check_session_lengths PASSED [ 80%] 2399s tests/test_xses_calendar.py::TestXSESCalendar::test_adhoc_holidays_specification PASSED [ 80%] 2399s tests/test_xses_calendar.py::TestXSESCalendar::test_daylight_savings PASSED [ 80%] 2399s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions PASSED [ 81%] 2399s tests/test_xses_calendar.py::TestXSESCalendar::test_opens_closes_break_starts_ends PASSED [ 81%] 2400s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_properties[both] PASSED [ 81%] 2400s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes[both] PASSED [ 81%] 2400s tests/test_xses_calendar.py::TestXSESCalendar::test_calendar_bounds_properties[both] PASSED [ 81%] 2400s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minute_methods[both] PASSED [ 81%] 2400s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minutes[both] PASSED [ 81%] 2400s tests/test_xses_calendar.py::TestXSESCalendar::test_is_trading_minute[both] PASSED [ 81%] 2400s tests/test_xses_calendar.py::TestXSESCalendar::test_is_break_minute[both] PASSED [ 81%] 2400s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_on_minute[both] PASSED [ 81%] 2400s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_at_time[both] PASSED [ 81%] 2401s tests/test_xses_calendar.py::TestXSESCalendar::test_prev_next_minute[both] PASSED [ 81%] 2401s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[both-next] PASSED [ 81%] 2401s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[both-next] PASSED [ 81%] 2401s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[left-next] PASSED [ 81%] 2401s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[left-next] PASSED [ 81%] 2401s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_properties[left] PASSED [ 81%] 2401s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes[left] PASSED [ 81%] 2401s tests/test_xses_calendar.py::TestXSESCalendar::test_calendar_bounds_properties[left] PASSED [ 81%] 2401s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minute_methods[left] PASSED [ 81%] 2401s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minutes[left] PASSED [ 81%] 2401s tests/test_xses_calendar.py::TestXSESCalendar::test_is_trading_minute[left] PASSED [ 81%] 2401s tests/test_xses_calendar.py::TestXSESCalendar::test_is_break_minute[left] PASSED [ 81%] 2401s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_on_minute[left] PASSED [ 81%] 2401s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_at_time[left] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_prev_next_minute[left] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[left-previous] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[both-previous] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[right-previous] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[right-next] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[right-next] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_properties[right] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes[right] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_calendar_bounds_properties[right] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minute_methods[right] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minutes[right] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_is_trading_minute[right] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_is_break_minute[right] PASSED [ 81%] 2402s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_on_minute[right] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_at_time[right] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_prev_next_minute[right] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[right-none] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[right-none] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[left-none] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[left-none] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[both-none] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[both-none] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[neither-none] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[neither-previous] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_session[neither-next] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 81%] 2403s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_properties[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_calendar_bounds_properties[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minute_methods[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_session_minutes[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_is_trading_minute[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_is_break_minute[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_on_minute[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_is_open_at_time[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_prev_next_minute[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_past_session[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_future_session[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset_by_sessions[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_in_range[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_window[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_distance[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_to_sessions[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes_count[neither] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_past_session[right] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_future_session[right] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset[right] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset_by_sessions[right] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_in_range[right] PASSED [ 81%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_window[right] PASSED [ 82%] 2404s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_distance[right] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_to_sessions[right] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes[right] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes_count[right] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_past_session[left] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_future_session[left] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset[left] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset_by_sessions[left] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_in_range[left] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_window[left] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_distance[left] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_to_sessions[left] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes[left] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes_count[left] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_past_session[both] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_to_future_session[both] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset[both] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minute_offset_by_sessions[both] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_in_range[both] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_window[both] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_distance[both] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_minutes_to_sessions[both] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes[both] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_minutes_count[both] PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_has_break PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_regular_holidays_sample PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_adhoc_holidays_sample PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_non_holidays_sample PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_late_opens_sample PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_early_closes_sample PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_early_closes_sample_time PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_early_closes_weekdays PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_early_closes_weekdays_time PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_non_early_closes_sample PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_non_early_closes_sample_time PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_late_opens PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_early_closes PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_session_open_close_break_start_end PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_session_has_break PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_next_prev_session PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_session_offset PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_is_session PASSED [ 82%] 2405s tests/test_xses_calendar.py::TestXSESCalendar::test_date_to_session PASSED [ 82%] 2406s tests/test_xses_calendar.py::TestXSESCalendar::test_prev_next_open_close PASSED [ 82%] 2406s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_in_range PASSED [ 82%] 2406s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_has_break PASSED [ 82%] 2406s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_window PASSED [ 82%] 2406s tests/test_xses_calendar.py::TestXSESCalendar::test_sessions_distance PASSED [ 82%] 2406s tests/test_xses_calendar.py::TestXSESCalendar::test_trading_index PASSED [ 82%] 2406s tests/test_xses_calendar.py::TestXSESCalendar::test_deprecated PASSED [ 82%] 2406s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_testbase_integrity PASSED [ 82%] 2406s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_base_integrity PASSED [ 82%] 2408s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_calculated_against_csv PASSED [ 82%] 2408s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_start_end PASSED [ 82%] 2408s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_invalid_input PASSED [ 82%] 2409s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_bound_min PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_bound_max PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sanity_check_session_lengths PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_adhoc_holidays_specification PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_daylight_savings PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_opens_closes_break_starts_ends PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_properties[both] PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes[both] PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_calendar_bounds_properties[both] PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minute_methods[both] PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minutes[both] PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_trading_minute[both] PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_break_minute[both] PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_on_minute[both] PASSED [ 82%] 2410s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_at_time[both] PASSED [ 82%] 2411s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_prev_next_minute[both] PASSED [ 82%] 2411s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[both-next] PASSED [ 82%] 2411s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[both-next] PASSED [ 82%] 2411s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[left-next] PASSED [ 82%] 2411s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[left-next] PASSED [ 82%] 2411s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_properties[left] PASSED [ 82%] 2411s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes[left] PASSED [ 82%] 2411s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_calendar_bounds_properties[left] PASSED [ 82%] 2411s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minute_methods[left] PASSED [ 82%] 2411s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minutes[left] PASSED [ 82%] 2411s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_trading_minute[left] PASSED [ 83%] 2411s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_break_minute[left] PASSED [ 83%] 2411s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_on_minute[left] PASSED [ 83%] 2411s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_at_time[left] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_prev_next_minute[left] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[left-previous] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[both-previous] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[right-previous] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[right-next] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[right-next] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_properties[right] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes[right] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_calendar_bounds_properties[right] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minute_methods[right] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minutes[right] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_trading_minute[right] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_break_minute[right] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_on_minute[right] PASSED [ 83%] 2412s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_at_time[right] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_prev_next_minute[right] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[right-none] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[right-none] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[left-none] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[left-none] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[both-none] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[both-none] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[neither-none] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[neither-previous] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_session[neither-next] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_properties[neither] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes[neither] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_calendar_bounds_properties[neither] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minute_methods[neither] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_minutes[neither] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_trading_minute[neither] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_break_minute[neither] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_on_minute[neither] PASSED [ 83%] 2413s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_open_at_time[neither] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_prev_next_minute[neither] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_past_session[neither] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_future_session[neither] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset[neither] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset_by_sessions[neither] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_in_range[neither] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_window[neither] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_distance[neither] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_to_sessions[neither] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes[neither] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes_count[neither] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_past_session[right] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_future_session[right] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset[right] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset_by_sessions[right] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_in_range[right] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_window[right] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_distance[right] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_to_sessions[right] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes[right] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes_count[right] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_past_session[left] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_future_session[left] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset[left] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset_by_sessions[left] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_in_range[left] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_window[left] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_distance[left] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_to_sessions[left] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes[left] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes_count[left] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_past_session[both] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_to_future_session[both] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset[both] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minute_offset_by_sessions[both] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_in_range[both] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_window[both] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_distance[both] PASSED [ 83%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_minutes_to_sessions[both] PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes[both] PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_minutes_count[both] PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_has_break PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_regular_holidays_sample PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_adhoc_holidays_sample PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_non_holidays_sample PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_late_opens_sample PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_early_closes_sample PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_early_closes_sample_time PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_early_closes_weekdays PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_early_closes_weekdays_time PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_non_early_closes_sample PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_non_early_closes_sample_time PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_late_opens PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_early_closes PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_open_close_break_start_end PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_has_break PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_next_prev_session PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_session_offset PASSED [ 84%] 2414s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_is_session PASSED [ 84%] 2415s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_date_to_session PASSED [ 84%] 2415s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_prev_next_open_close PASSED [ 84%] 2415s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_in_range PASSED [ 84%] 2415s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_has_break PASSED [ 84%] 2415s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_window PASSED [ 84%] 2415s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_sessions_distance PASSED [ 84%] 2416s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_trading_index PASSED [ 84%] 2416s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_deprecated PASSED [ 84%] 2416s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_additional_early_closes_sample PASSED [ 84%] 2416s tests/test_xsgo_calendar.py::TestXSGOCalendar::test_close_time_change PASSED [ 84%] 2416s tests/test_xshg_calendar.py::TestXSHGCalendar::test_testbase_integrity PASSED [ 84%] 2416s tests/test_xshg_calendar.py::TestXSHGCalendar::test_base_integrity PASSED [ 84%] 2417s tests/test_xshg_calendar.py::TestXSHGCalendar::test_calculated_against_csv PASSED [ 84%] 2417s tests/test_xshg_calendar.py::TestXSHGCalendar::test_start_end PASSED [ 84%] 2417s tests/test_xshg_calendar.py::TestXSHGCalendar::test_invalid_input PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_bound_min PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_bound_max PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sanity_check_session_lengths PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_adhoc_holidays_specification PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_daylight_savings PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_opens_closes_break_starts_ends PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_properties[both] PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes[both] PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_calendar_bounds_properties[both] PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minute_methods[both] PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minutes[both] PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_trading_minute[both] PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_break_minute[both] PASSED [ 84%] 2418s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_on_minute[both] PASSED [ 84%] 2419s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_at_time[both] PASSED [ 84%] 2420s tests/test_xshg_calendar.py::TestXSHGCalendar::test_prev_next_minute[both] PASSED [ 84%] 2420s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[both-next] PASSED [ 84%] 2420s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[both-next] PASSED [ 84%] 2420s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[left-next] PASSED [ 84%] 2420s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[left-next] PASSED [ 84%] 2420s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_properties[left] PASSED [ 84%] 2420s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes[left] PASSED [ 84%] 2420s tests/test_xshg_calendar.py::TestXSHGCalendar::test_calendar_bounds_properties[left] PASSED [ 84%] 2420s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minute_methods[left] PASSED [ 84%] 2420s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minutes[left] PASSED [ 84%] 2420s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_trading_minute[left] PASSED [ 84%] 2420s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_break_minute[left] PASSED [ 84%] 2420s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_on_minute[left] PASSED [ 84%] 2421s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_at_time[left] PASSED [ 84%] 2421s tests/test_xshg_calendar.py::TestXSHGCalendar::test_prev_next_minute[left] PASSED [ 84%] 2421s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[left-previous] PASSED [ 84%] 2421s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 84%] 2422s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[both-previous] PASSED [ 84%] 2422s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 84%] 2422s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[right-previous] PASSED [ 84%] 2422s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 84%] 2422s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[right-next] PASSED [ 84%] 2422s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[right-next] PASSED [ 84%] 2422s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_properties[right] PASSED [ 84%] 2422s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes[right] PASSED [ 84%] 2422s tests/test_xshg_calendar.py::TestXSHGCalendar::test_calendar_bounds_properties[right] PASSED [ 84%] 2422s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minute_methods[right] PASSED [ 84%] 2422s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minutes[right] PASSED [ 84%] 2422s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_trading_minute[right] PASSED [ 84%] 2422s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_break_minute[right] PASSED [ 84%] 2422s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_on_minute[right] PASSED [ 85%] 2423s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_at_time[right] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_prev_next_minute[right] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[right-none] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[right-none] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[left-none] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[left-none] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[both-none] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[both-none] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[neither-none] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[neither-previous] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_session[neither-next] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_properties[neither] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes[neither] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_calendar_bounds_properties[neither] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minute_methods[neither] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_minutes[neither] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_trading_minute[neither] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_break_minute[neither] PASSED [ 85%] 2424s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_on_minute[neither] PASSED [ 85%] 2425s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_open_at_time[neither] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_prev_next_minute[neither] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_past_session[neither] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_future_session[neither] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset[neither] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset_by_sessions[neither] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_in_range[neither] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_window[neither] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_distance[neither] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_to_sessions[neither] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes[neither] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes_count[neither] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_past_session[right] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_future_session[right] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset[right] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset_by_sessions[right] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_in_range[right] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_window[right] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_distance[right] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_to_sessions[right] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes[right] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes_count[right] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_past_session[left] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_future_session[left] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset[left] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset_by_sessions[left] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_in_range[left] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_window[left] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_distance[left] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_to_sessions[left] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes[left] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes_count[left] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_past_session[both] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_to_future_session[both] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset[both] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minute_offset_by_sessions[both] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_in_range[both] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_window[both] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_distance[both] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_minutes_to_sessions[both] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes[both] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_minutes_count[both] PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_has_break PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_regular_holidays_sample PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_adhoc_holidays_sample PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_non_holidays_sample PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_late_opens_sample PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_early_closes_sample PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_early_closes_sample_time PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_early_closes_weekdays PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_early_closes_weekdays_time PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_non_early_closes_sample PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_non_early_closes_sample_time PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_late_opens PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_early_closes PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_open_close_break_start_end PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_has_break PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_next_prev_session PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_session_offset PASSED [ 85%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_is_session PASSED [ 86%] 2426s tests/test_xshg_calendar.py::TestXSHGCalendar::test_date_to_session PASSED [ 86%] 2427s tests/test_xshg_calendar.py::TestXSHGCalendar::test_prev_next_open_close PASSED [ 86%] 2427s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_in_range PASSED [ 86%] 2427s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_has_break PASSED [ 86%] 2427s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_window PASSED [ 86%] 2427s tests/test_xshg_calendar.py::TestXSHGCalendar::test_sessions_distance PASSED [ 86%] 2428s tests/test_xshg_calendar.py::TestXSHGCalendar::test_trading_index PASSED [ 86%] 2428s tests/test_xshg_calendar.py::TestXSHGCalendar::test_deprecated PASSED [ 86%] 2428s tests/test_xsto_calendar.py::TestXSTOCalendar::test_testbase_integrity PASSED [ 86%] 2428s tests/test_xsto_calendar.py::TestXSTOCalendar::test_base_integrity PASSED [ 86%] 2429s tests/test_xsto_calendar.py::TestXSTOCalendar::test_calculated_against_csv PASSED [ 86%] 2429s tests/test_xsto_calendar.py::TestXSTOCalendar::test_start_end PASSED [ 86%] 2430s tests/test_xsto_calendar.py::TestXSTOCalendar::test_invalid_input PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_bound_min PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_bound_max PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sanity_check_session_lengths PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_adhoc_holidays_specification PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_daylight_savings PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_opens_closes_break_starts_ends PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_properties[both] PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes[both] PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_calendar_bounds_properties[both] PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minute_methods[both] PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minutes[both] PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_trading_minute[both] PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_break_minute[both] PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_on_minute[both] PASSED [ 86%] 2431s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_at_time[both] PASSED [ 86%] 2432s tests/test_xsto_calendar.py::TestXSTOCalendar::test_prev_next_minute[both] PASSED [ 86%] 2432s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[both-next] PASSED [ 86%] 2432s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[both-next] PASSED [ 86%] 2432s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[left-next] PASSED [ 86%] 2432s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[left-next] PASSED [ 86%] 2432s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_properties[left] PASSED [ 86%] 2432s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes[left] PASSED [ 86%] 2432s tests/test_xsto_calendar.py::TestXSTOCalendar::test_calendar_bounds_properties[left] PASSED [ 86%] 2432s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minute_methods[left] PASSED [ 86%] 2432s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minutes[left] PASSED [ 86%] 2432s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_trading_minute[left] PASSED [ 86%] 2432s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_break_minute[left] PASSED [ 86%] 2432s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_on_minute[left] PASSED [ 86%] 2432s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_at_time[left] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_prev_next_minute[left] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[left-previous] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[both-previous] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[right-previous] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[right-next] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[right-next] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_properties[right] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes[right] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_calendar_bounds_properties[right] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minute_methods[right] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minutes[right] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_trading_minute[right] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_break_minute[right] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_on_minute[right] PASSED [ 86%] 2433s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_at_time[right] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_prev_next_minute[right] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[right-none] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[right-none] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[left-none] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[left-none] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[both-none] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[both-none] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[neither-none] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[neither-previous] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_session[neither-next] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_properties[neither] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes[neither] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_calendar_bounds_properties[neither] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minute_methods[neither] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_minutes[neither] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_trading_minute[neither] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_break_minute[neither] PASSED [ 86%] 2434s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_on_minute[neither] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_open_at_time[neither] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_prev_next_minute[neither] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_past_session[neither] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_future_session[neither] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset[neither] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset_by_sessions[neither] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_in_range[neither] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_window[neither] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_distance[neither] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_to_sessions[neither] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes[neither] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes_count[neither] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_past_session[right] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_future_session[right] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset[right] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset_by_sessions[right] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_in_range[right] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_window[right] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_distance[right] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_to_sessions[right] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes[right] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes_count[right] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_past_session[left] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_future_session[left] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset[left] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset_by_sessions[left] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_in_range[left] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_window[left] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_distance[left] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_to_sessions[left] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes[left] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes_count[left] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_past_session[both] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_to_future_session[both] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset[both] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minute_offset_by_sessions[both] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_in_range[both] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_window[both] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_distance[both] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_minutes_to_sessions[both] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes[both] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_minutes_count[both] PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_has_break PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_regular_holidays_sample PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_adhoc_holidays_sample PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_non_holidays_sample PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_late_opens_sample PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_early_closes_sample PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_early_closes_sample_time PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_early_closes_weekdays PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_early_closes_weekdays_time PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_non_early_closes_sample PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_non_early_closes_sample_time PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_late_opens PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_early_closes PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_open_close_break_start_end PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_has_break PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_next_prev_session PASSED [ 87%] 2435s tests/test_xsto_calendar.py::TestXSTOCalendar::test_session_offset PASSED [ 87%] 2436s tests/test_xsto_calendar.py::TestXSTOCalendar::test_is_session PASSED [ 87%] 2436s tests/test_xsto_calendar.py::TestXSTOCalendar::test_date_to_session PASSED [ 87%] 2436s tests/test_xsto_calendar.py::TestXSTOCalendar::test_prev_next_open_close PASSED [ 87%] 2436s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_in_range PASSED [ 87%] 2436s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_has_break PASSED [ 87%] 2436s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_window PASSED [ 87%] 2437s tests/test_xsto_calendar.py::TestXSTOCalendar::test_sessions_distance PASSED [ 87%] 2437s tests/test_xsto_calendar.py::TestXSTOCalendar::test_trading_index PASSED [ 87%] 2437s tests/test_xsto_calendar.py::TestXSTOCalendar::test_deprecated PASSED [ 87%] 2437s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_testbase_integrity PASSED [ 87%] 2437s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_base_integrity PASSED [ 87%] 2438s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_calculated_against_csv PASSED [ 87%] 2438s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_start_end PASSED [ 87%] 2438s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_invalid_input PASSED [ 87%] 2439s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_bound_min PASSED [ 87%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_bound_max PASSED [ 87%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sanity_check_session_lengths PASSED [ 87%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_adhoc_holidays_specification PASSED [ 87%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_daylight_savings PASSED [ 87%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions PASSED [ 87%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_opens_closes_break_starts_ends PASSED [ 87%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_properties[both] PASSED [ 87%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes[both] PASSED [ 88%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_calendar_bounds_properties[both] PASSED [ 88%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minute_methods[both] PASSED [ 88%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minutes[both] PASSED [ 88%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_trading_minute[both] PASSED [ 88%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_break_minute[both] PASSED [ 88%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_on_minute[both] PASSED [ 88%] 2440s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_at_time[both] PASSED [ 88%] 2441s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_prev_next_minute[both] PASSED [ 88%] 2441s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[both-next] PASSED [ 88%] 2441s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[both-next] PASSED [ 88%] 2441s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[left-next] PASSED [ 88%] 2441s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[left-next] PASSED [ 88%] 2441s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_properties[left] PASSED [ 88%] 2441s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes[left] PASSED [ 88%] 2441s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_calendar_bounds_properties[left] PASSED [ 88%] 2441s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minute_methods[left] PASSED [ 88%] 2441s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minutes[left] PASSED [ 88%] 2441s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_trading_minute[left] PASSED [ 88%] 2441s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_break_minute[left] PASSED [ 88%] 2441s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_on_minute[left] PASSED [ 88%] 2441s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_at_time[left] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_prev_next_minute[left] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[left-previous] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[both-previous] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[right-previous] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[right-next] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[right-next] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_properties[right] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes[right] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_calendar_bounds_properties[right] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minute_methods[right] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minutes[right] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_trading_minute[right] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_break_minute[right] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_on_minute[right] PASSED [ 88%] 2442s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_at_time[right] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_prev_next_minute[right] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[right-none] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[right-none] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[left-none] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[left-none] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[both-none] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[both-none] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[neither-none] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[neither-previous] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_session[neither-next] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_properties[neither] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes[neither] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_calendar_bounds_properties[neither] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minute_methods[neither] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_minutes[neither] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_trading_minute[neither] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_break_minute[neither] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_on_minute[neither] PASSED [ 88%] 2443s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_open_at_time[neither] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_prev_next_minute[neither] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_past_session[neither] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_future_session[neither] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset[neither] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset_by_sessions[neither] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_in_range[neither] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_window[neither] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_distance[neither] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_to_sessions[neither] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes[neither] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes_count[neither] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_past_session[right] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_future_session[right] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset[right] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset_by_sessions[right] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_in_range[right] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_window[right] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_distance[right] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_to_sessions[right] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes[right] PASSED [ 88%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes_count[right] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_past_session[left] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_future_session[left] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset[left] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset_by_sessions[left] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_in_range[left] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_window[left] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_distance[left] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_to_sessions[left] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes[left] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes_count[left] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_past_session[both] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_to_future_session[both] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset[both] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minute_offset_by_sessions[both] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_in_range[both] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_window[both] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_distance[both] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_minutes_to_sessions[both] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes[both] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_minutes_count[both] PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_has_break PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_regular_holidays_sample PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_adhoc_holidays_sample PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_non_holidays_sample PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_late_opens_sample PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_early_closes_sample PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_early_closes_sample_time PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_early_closes_weekdays PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_early_closes_weekdays_time PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_non_early_closes_sample PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_non_early_closes_sample_time PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_late_opens PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_early_closes PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_open_close_break_start_end PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_has_break PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_next_prev_session PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_session_offset PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_is_session PASSED [ 89%] 2444s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_date_to_session PASSED [ 89%] 2445s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_prev_next_open_close PASSED [ 89%] 2445s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_in_range PASSED [ 89%] 2445s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_has_break PASSED [ 89%] 2445s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_window PASSED [ 89%] 2445s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_sessions_distance PASSED [ 89%] 2445s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_trading_index PASSED [ 89%] 2445s tests/test_xswx_calendar.py::TestIXSWXCalendar::test_deprecated PASSED [ 89%] 2445s tests/test_xtae_calendar.py::TestXTAECalendar::test_testbase_integrity PASSED [ 89%] 2445s tests/test_xtae_calendar.py::TestXTAECalendar::test_base_integrity PASSED [ 89%] 2447s tests/test_xtae_calendar.py::TestXTAECalendar::test_calculated_against_csv PASSED [ 89%] 2448s tests/test_xtae_calendar.py::TestXTAECalendar::test_start_end PASSED [ 89%] 2448s tests/test_xtae_calendar.py::TestXTAECalendar::test_invalid_input PASSED [ 89%] 2449s tests/test_xtae_calendar.py::TestXTAECalendar::test_bound_min PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_bound_max PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_sanity_check_session_lengths PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_adhoc_holidays_specification PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_daylight_savings PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_opens_closes_break_starts_ends PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_properties[both] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes[both] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_calendar_bounds_properties[both] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minute_methods[both] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minutes[both] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_trading_minute[both] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_break_minute[both] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_on_minute[both] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_at_time[both] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_prev_next_minute[both] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[both-next] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[both-next] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[left-next] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[left-next] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_properties[left] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes[left] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_calendar_bounds_properties[left] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minute_methods[left] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minutes[left] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_trading_minute[left] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_break_minute[left] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_on_minute[left] PASSED [ 89%] 2450s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_at_time[left] PASSED [ 89%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_prev_next_minute[left] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[left-previous] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[both-previous] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[right-previous] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[right-next] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[right-next] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_properties[right] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes[right] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_calendar_bounds_properties[right] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minute_methods[right] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minutes[right] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_trading_minute[right] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_break_minute[right] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_on_minute[right] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_at_time[right] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_prev_next_minute[right] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[right-none] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[right-none] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[left-none] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[left-none] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[both-none] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[both-none] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[neither-none] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[neither-previous] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_session[neither-next] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_properties[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_calendar_bounds_properties[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minute_methods[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_minutes[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_trading_minute[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_break_minute[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_on_minute[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_open_at_time[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_prev_next_minute[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_past_session[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_future_session[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset_by_sessions[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_in_range[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_window[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_distance[neither] PASSED [ 90%] 2451s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_to_sessions[neither] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes[neither] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes_count[neither] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_past_session[right] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_future_session[right] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset[right] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset_by_sessions[right] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_in_range[right] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_window[right] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_distance[right] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_to_sessions[right] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes[right] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes_count[right] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_past_session[left] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_future_session[left] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset[left] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset_by_sessions[left] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_in_range[left] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_window[left] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_distance[left] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_to_sessions[left] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes[left] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes_count[left] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_past_session[both] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_to_future_session[both] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset[both] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minute_offset_by_sessions[both] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_in_range[both] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_window[both] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_distance[both] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_minutes_to_sessions[both] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes[both] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_minutes_count[both] PASSED [ 90%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_has_break PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_regular_holidays_sample PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_adhoc_holidays_sample PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_non_holidays_sample PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_late_opens_sample PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_early_closes_sample PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_early_closes_sample_time PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_early_closes_weekdays PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_early_closes_weekdays_time PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_non_early_closes_sample PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_non_early_closes_sample_time PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_late_opens PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_early_closes PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_open_close_break_start_end PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_has_break PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_next_prev_session PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_session_offset PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_is_session PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_date_to_session PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_prev_next_open_close PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_in_range PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_has_break PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_window PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_sessions_distance PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_trading_index PASSED [ 91%] 2452s tests/test_xtae_calendar.py::TestXTAECalendar::test_deprecated PASSED [ 91%] 2452s tests/test_xtai_calendar.py::TestXTAICalendar::test_testbase_integrity PASSED [ 91%] 2452s tests/test_xtai_calendar.py::TestXTAICalendar::test_base_integrity PASSED [ 91%] 2457s tests/test_xtai_calendar.py::TestXTAICalendar::test_calculated_against_csv PASSED [ 91%] 2457s tests/test_xtai_calendar.py::TestXTAICalendar::test_start_end PASSED [ 91%] 2457s tests/test_xtai_calendar.py::TestXTAICalendar::test_invalid_input PASSED [ 91%] 2458s tests/test_xtai_calendar.py::TestXTAICalendar::test_bound_min PASSED [ 91%] 2459s tests/test_xtai_calendar.py::TestXTAICalendar::test_bound_max PASSED [ 91%] 2459s tests/test_xtai_calendar.py::TestXTAICalendar::test_sanity_check_session_lengths PASSED [ 91%] 2459s tests/test_xtai_calendar.py::TestXTAICalendar::test_adhoc_holidays_specification PASSED [ 91%] 2459s tests/test_xtai_calendar.py::TestXTAICalendar::test_daylight_savings PASSED [ 91%] 2459s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions PASSED [ 91%] 2459s tests/test_xtai_calendar.py::TestXTAICalendar::test_opens_closes_break_starts_ends PASSED [ 91%] 2459s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_properties[both] PASSED [ 91%] 2460s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes[both] PASSED [ 91%] 2460s tests/test_xtai_calendar.py::TestXTAICalendar::test_calendar_bounds_properties[both] PASSED [ 91%] 2460s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minute_methods[both] PASSED [ 91%] 2460s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minutes[both] PASSED [ 91%] 2460s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_trading_minute[both] PASSED [ 91%] 2460s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_break_minute[both] PASSED [ 91%] 2460s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_on_minute[both] PASSED [ 91%] 2460s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_at_time[both] PASSED [ 91%] 2462s tests/test_xtai_calendar.py::TestXTAICalendar::test_prev_next_minute[both] PASSED [ 91%] 2462s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[both-next] PASSED [ 91%] 2462s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[both-next] PASSED [ 91%] 2462s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[left-next] PASSED [ 91%] 2462s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[left-next] PASSED [ 91%] 2462s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_properties[left] PASSED [ 91%] 2463s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes[left] PASSED [ 91%] 2463s tests/test_xtai_calendar.py::TestXTAICalendar::test_calendar_bounds_properties[left] PASSED [ 91%] 2463s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minute_methods[left] PASSED [ 91%] 2463s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minutes[left] PASSED [ 91%] 2463s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_trading_minute[left] PASSED [ 91%] 2463s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_break_minute[left] PASSED [ 91%] 2463s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_on_minute[left] PASSED [ 91%] 2463s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_at_time[left] PASSED [ 91%] 2465s tests/test_xtai_calendar.py::TestXTAICalendar::test_prev_next_minute[left] PASSED [ 91%] 2465s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[left-previous] PASSED [ 91%] 2465s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[left-previous] PASSED [ 91%] 2465s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[both-previous] PASSED [ 91%] 2465s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[both-previous] PASSED [ 91%] 2465s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[right-previous] PASSED [ 91%] 2465s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[right-previous] PASSED [ 91%] 2465s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[right-next] PASSED [ 91%] 2465s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[right-next] PASSED [ 91%] 2465s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_properties[right] PASSED [ 91%] 2466s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes[right] PASSED [ 91%] 2466s tests/test_xtai_calendar.py::TestXTAICalendar::test_calendar_bounds_properties[right] PASSED [ 91%] 2466s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minute_methods[right] PASSED [ 91%] 2466s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minutes[right] PASSED [ 91%] 2466s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_trading_minute[right] PASSED [ 91%] 2466s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_break_minute[right] PASSED [ 91%] 2466s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_on_minute[right] PASSED [ 91%] 2466s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_at_time[right] PASSED [ 91%] 2468s tests/test_xtai_calendar.py::TestXTAICalendar::test_prev_next_minute[right] PASSED [ 91%] 2468s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[right-none] PASSED [ 91%] 2468s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[right-none] PASSED [ 91%] 2468s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[left-none] PASSED [ 92%] 2468s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[left-none] PASSED [ 92%] 2468s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[both-none] PASSED [ 92%] 2468s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[both-none] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[neither-none] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[neither-none] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[neither-previous] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_session[neither-next] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_trading_minute[neither-next] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_properties[neither] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes[neither] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_calendar_bounds_properties[neither] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minute_methods[neither] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_minutes[neither] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_trading_minute[neither] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_break_minute[neither] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_on_minute[neither] PASSED [ 92%] 2469s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_open_at_time[neither] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_prev_next_minute[neither] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_past_session[neither] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_future_session[neither] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset[neither] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset_by_sessions[neither] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_in_range[neither] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_window[neither] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_distance[neither] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_to_sessions[neither] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes[neither] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes_count[neither] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_past_session[right] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_future_session[right] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset[right] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset_by_sessions[right] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_in_range[right] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_window[right] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_distance[right] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_to_sessions[right] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes[right] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes_count[right] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_past_session[left] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_future_session[left] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset[left] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset_by_sessions[left] PASSED [ 92%] 2471s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_in_range[left] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_window[left] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_distance[left] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_to_sessions[left] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes[left] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes_count[left] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_past_session[both] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_to_future_session[both] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset[both] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_minute_offset_by_sessions[both] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_in_range[both] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_window[both] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_distance[both] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_minutes_to_sessions[both] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes[both] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_minutes_count[both] PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_has_break PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_regular_holidays_sample PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_adhoc_holidays_sample PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_non_holidays_sample PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_late_opens_sample PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_early_closes_sample PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_early_closes_sample_time PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_early_closes_weekdays PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_early_closes_weekdays_time PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_non_early_closes_sample PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_non_early_closes_sample_time PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_late_opens PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_early_closes PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_open_close_break_start_end PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_has_break PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_next_prev_session PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_session_offset PASSED [ 92%] 2472s tests/test_xtai_calendar.py::TestXTAICalendar::test_is_session PASSED [ 92%] 2473s tests/test_xtai_calendar.py::TestXTAICalendar::test_date_to_session PASSED [ 92%] 2477s tests/test_xtai_calendar.py::TestXTAICalendar::test_prev_next_open_close PASSED [ 92%] 2477s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_in_range PASSED [ 92%] 2477s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_has_break PASSED [ 92%] 2477s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_window PASSED [ 93%] 2477s tests/test_xtai_calendar.py::TestXTAICalendar::test_sessions_distance PASSED [ 93%] 2477s tests/test_xtai_calendar.py::TestXTAICalendar::test_trading_index PASSED [ 93%] 2477s tests/test_xtai_calendar.py::TestXTAICalendar::test_deprecated PASSED [ 93%] 2477s tests/test_xtks_calendar.py::TestXTKSCalendar::test_testbase_integrity PASSED [ 93%] 2477s tests/test_xtks_calendar.py::TestXTKSCalendar::test_base_integrity PASSED [ 93%] 2479s tests/test_xtks_calendar.py::TestXTKSCalendar::test_calculated_against_csv PASSED [ 93%] 2479s tests/test_xtks_calendar.py::TestXTKSCalendar::test_start_end PASSED [ 93%] 2479s tests/test_xtks_calendar.py::TestXTKSCalendar::test_invalid_input PASSED [ 93%] 2479s tests/test_xtks_calendar.py::TestXTKSCalendar::test_bound_min PASSED [ 93%] 2480s tests/test_xtks_calendar.py::TestXTKSCalendar::test_bound_max PASSED [ 93%] 2480s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sanity_check_session_lengths PASSED [ 93%] 2480s tests/test_xtks_calendar.py::TestXTKSCalendar::test_adhoc_holidays_specification PASSED [ 93%] 2480s tests/test_xtks_calendar.py::TestXTKSCalendar::test_daylight_savings PASSED [ 93%] 2480s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions PASSED [ 93%] 2480s tests/test_xtks_calendar.py::TestXTKSCalendar::test_opens_closes_break_starts_ends PASSED [ 93%] 2480s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_properties[both] PASSED [ 93%] 2480s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes[both] PASSED [ 93%] 2480s tests/test_xtks_calendar.py::TestXTKSCalendar::test_calendar_bounds_properties[both] PASSED [ 93%] 2480s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minute_methods[both] PASSED [ 93%] 2480s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minutes[both] PASSED [ 93%] 2480s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_trading_minute[both] PASSED [ 93%] 2480s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_break_minute[both] PASSED [ 93%] 2480s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_on_minute[both] PASSED [ 93%] 2481s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_at_time[both] PASSED [ 93%] 2481s tests/test_xtks_calendar.py::TestXTKSCalendar::test_prev_next_minute[both] PASSED [ 93%] 2481s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[both-next] PASSED [ 93%] 2481s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[both-next] PASSED [ 93%] 2481s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[left-next] PASSED [ 93%] 2481s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[left-next] PASSED [ 93%] 2481s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_properties[left] PASSED [ 93%] 2482s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes[left] PASSED [ 93%] 2482s tests/test_xtks_calendar.py::TestXTKSCalendar::test_calendar_bounds_properties[left] PASSED [ 93%] 2482s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minute_methods[left] PASSED [ 93%] 2482s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minutes[left] PASSED [ 93%] 2482s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_trading_minute[left] PASSED [ 93%] 2482s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_break_minute[left] PASSED [ 93%] 2482s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_on_minute[left] PASSED [ 93%] 2482s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_at_time[left] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_prev_next_minute[left] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[left-previous] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[both-previous] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[right-previous] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[right-next] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[right-next] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_properties[right] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes[right] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_calendar_bounds_properties[right] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minute_methods[right] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minutes[right] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_trading_minute[right] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_break_minute[right] PASSED [ 93%] 2483s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_on_minute[right] PASSED [ 93%] 2484s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_at_time[right] PASSED [ 93%] 2484s tests/test_xtks_calendar.py::TestXTKSCalendar::test_prev_next_minute[right] PASSED [ 93%] 2484s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[right-none] PASSED [ 93%] 2484s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[right-none] PASSED [ 93%] 2484s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[left-none] PASSED [ 93%] 2484s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[left-none] PASSED [ 93%] 2484s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[both-none] PASSED [ 93%] 2484s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[both-none] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[neither-none] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[neither-previous] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_session[neither-next] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_properties[neither] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes[neither] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_calendar_bounds_properties[neither] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minute_methods[neither] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_minutes[neither] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_trading_minute[neither] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_break_minute[neither] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_on_minute[neither] PASSED [ 93%] 2485s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_open_at_time[neither] PASSED [ 93%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_prev_next_minute[neither] PASSED [ 93%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_past_session[neither] PASSED [ 93%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_future_session[neither] PASSED [ 93%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset[neither] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset_by_sessions[neither] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_in_range[neither] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_window[neither] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_distance[neither] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_to_sessions[neither] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes[neither] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes_count[neither] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_past_session[right] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_future_session[right] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset[right] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset_by_sessions[right] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_in_range[right] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_window[right] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_distance[right] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_to_sessions[right] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes[right] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes_count[right] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_past_session[left] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_future_session[left] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset[left] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset_by_sessions[left] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_in_range[left] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_window[left] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_distance[left] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_to_sessions[left] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes[left] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes_count[left] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_past_session[both] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_to_future_session[both] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset[both] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minute_offset_by_sessions[both] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_in_range[both] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_window[both] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_distance[both] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_minutes_to_sessions[both] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes[both] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_minutes_count[both] PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_has_break PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_regular_holidays_sample PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_adhoc_holidays_sample PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_non_holidays_sample PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_late_opens_sample PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_early_closes_sample PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_early_closes_sample_time PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_early_closes_weekdays PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_early_closes_weekdays_time PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_non_early_closes_sample PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_non_early_closes_sample_time PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_late_opens PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_early_closes PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_open_close_break_start_end PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_has_break PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_next_prev_session PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_session_offset PASSED [ 94%] 2486s tests/test_xtks_calendar.py::TestXTKSCalendar::test_is_session PASSED [ 94%] 2487s tests/test_xtks_calendar.py::TestXTKSCalendar::test_date_to_session PASSED [ 94%] 2487s tests/test_xtks_calendar.py::TestXTKSCalendar::test_prev_next_open_close PASSED [ 94%] 2487s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_in_range PASSED [ 94%] 2487s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_has_break PASSED [ 94%] 2487s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_window PASSED [ 94%] 2487s tests/test_xtks_calendar.py::TestXTKSCalendar::test_sessions_distance PASSED [ 94%] 2487s tests/test_xtks_calendar.py::TestXTKSCalendar::test_trading_index PASSED [ 94%] 2487s tests/test_xtks_calendar.py::TestXTKSCalendar::test_deprecated PASSED [ 94%] 2487s tests/test_xtks_calendar.py::TestXTKSCalendar::test_golden_week_holidays PASSED [ 94%] 2488s tests/test_xtks_calendar.py::TestXTKSCalendar::test_emperors_birthday PASSED [ 94%] 2488s tests/test_xtse_calendar.py::TestXTSECalendar::test_testbase_integrity PASSED [ 94%] 2488s tests/test_xtse_calendar.py::TestXTSECalendar::test_base_integrity PASSED [ 94%] 2489s tests/test_xtse_calendar.py::TestXTSECalendar::test_calculated_against_csv PASSED [ 94%] 2489s tests/test_xtse_calendar.py::TestXTSECalendar::test_start_end PASSED [ 94%] 2489s tests/test_xtse_calendar.py::TestXTSECalendar::test_invalid_input PASSED [ 94%] 2490s tests/test_xtse_calendar.py::TestXTSECalendar::test_bound_min PASSED [ 94%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_bound_max PASSED [ 94%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_sanity_check_session_lengths PASSED [ 94%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_adhoc_holidays_specification PASSED [ 94%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_daylight_savings PASSED [ 94%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions PASSED [ 94%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_opens_closes_break_starts_ends PASSED [ 94%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_properties[both] PASSED [ 94%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes[both] PASSED [ 94%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_calendar_bounds_properties[both] PASSED [ 94%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minute_methods[both] PASSED [ 94%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minutes[both] PASSED [ 95%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_trading_minute[both] PASSED [ 95%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_break_minute[both] PASSED [ 95%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_on_minute[both] PASSED [ 95%] 2491s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_at_time[both] PASSED [ 95%] 2492s tests/test_xtse_calendar.py::TestXTSECalendar::test_prev_next_minute[both] PASSED [ 95%] 2492s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[both-next] PASSED [ 95%] 2492s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[both-next] PASSED [ 95%] 2492s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[left-next] PASSED [ 95%] 2492s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[left-next] PASSED [ 95%] 2492s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_properties[left] PASSED [ 95%] 2492s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes[left] PASSED [ 95%] 2492s tests/test_xtse_calendar.py::TestXTSECalendar::test_calendar_bounds_properties[left] PASSED [ 95%] 2492s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minute_methods[left] PASSED [ 95%] 2492s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minutes[left] PASSED [ 95%] 2492s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_trading_minute[left] PASSED [ 95%] 2492s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_break_minute[left] PASSED [ 95%] 2492s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_on_minute[left] PASSED [ 95%] 2492s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_at_time[left] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_prev_next_minute[left] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[left-previous] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[left-previous] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[both-previous] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[both-previous] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[right-previous] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[right-previous] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[right-next] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[right-next] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_properties[right] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes[right] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_calendar_bounds_properties[right] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minute_methods[right] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minutes[right] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_trading_minute[right] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_break_minute[right] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_on_minute[right] PASSED [ 95%] 2493s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_at_time[right] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_prev_next_minute[right] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[right-none] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[right-none] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[left-none] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[left-none] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[both-none] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[both-none] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[neither-none] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[neither-none] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[neither-previous] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_session[neither-next] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_trading_minute[neither-next] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_properties[neither] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes[neither] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_calendar_bounds_properties[neither] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minute_methods[neither] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_minutes[neither] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_trading_minute[neither] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_break_minute[neither] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_on_minute[neither] PASSED [ 95%] 2494s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_open_at_time[neither] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_prev_next_minute[neither] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_past_session[neither] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_future_session[neither] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset[neither] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset_by_sessions[neither] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_in_range[neither] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_window[neither] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_distance[neither] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_to_sessions[neither] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes[neither] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes_count[neither] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_past_session[right] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_future_session[right] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset[right] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset_by_sessions[right] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_in_range[right] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_window[right] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_distance[right] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_to_sessions[right] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes[right] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes_count[right] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_past_session[left] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_future_session[left] PASSED [ 95%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset[left] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset_by_sessions[left] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_in_range[left] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_window[left] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_distance[left] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_to_sessions[left] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes[left] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes_count[left] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_past_session[both] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_to_future_session[both] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset[both] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minute_offset_by_sessions[both] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_in_range[both] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_window[both] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_distance[both] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_minutes_to_sessions[both] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes[both] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_minutes_count[both] PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_has_break PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_regular_holidays_sample PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_adhoc_holidays_sample PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_non_holidays_sample PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_late_opens_sample PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_early_closes_sample PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_early_closes_sample_time PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_early_closes_weekdays PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_early_closes_weekdays_time PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_non_early_closes_sample PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_non_early_closes_sample_time PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_late_opens PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_early_closes PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_open_close_break_start_end PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_has_break PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_next_prev_session PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_session_offset PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_is_session PASSED [ 96%] 2495s tests/test_xtse_calendar.py::TestXTSECalendar::test_date_to_session PASSED [ 96%] 2496s tests/test_xtse_calendar.py::TestXTSECalendar::test_prev_next_open_close PASSED [ 96%] 2496s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_in_range PASSED [ 96%] 2496s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_has_break PASSED [ 96%] 2496s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_window PASSED [ 96%] 2496s tests/test_xtse_calendar.py::TestXTSECalendar::test_sessions_distance PASSED [ 96%] 2496s tests/test_xtse_calendar.py::TestXTSECalendar::test_trading_index PASSED [ 96%] 2496s tests/test_xtse_calendar.py::TestXTSECalendar::test_deprecated PASSED [ 96%] 2496s tests/test_xwar_calendar.py::TestXWARCalendar::test_testbase_integrity PASSED [ 96%] 2496s tests/test_xwar_calendar.py::TestXWARCalendar::test_base_integrity PASSED [ 96%] 2498s tests/test_xwar_calendar.py::TestXWARCalendar::test_calculated_against_csv PASSED [ 96%] 2498s tests/test_xwar_calendar.py::TestXWARCalendar::test_start_end PASSED [ 96%] 2498s tests/test_xwar_calendar.py::TestXWARCalendar::test_invalid_input PASSED [ 96%] 2499s tests/test_xwar_calendar.py::TestXWARCalendar::test_bound_min PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_bound_max PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_sanity_check_session_lengths PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_adhoc_holidays_specification PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_daylight_savings PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_opens_closes_break_starts_ends PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_properties[both] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes[both] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_calendar_bounds_properties[both] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minute_methods[both] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minutes[both] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_trading_minute[both] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_break_minute[both] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_on_minute[both] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_at_time[both] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_prev_next_minute[both] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[both-next] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[both-next] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[left-next] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[left-next] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_properties[left] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes[left] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_calendar_bounds_properties[left] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minute_methods[left] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minutes[left] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_trading_minute[left] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_break_minute[left] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_on_minute[left] PASSED [ 96%] 2501s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_at_time[left] PASSED [ 96%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_prev_next_minute[left] PASSED [ 96%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[left-previous] PASSED [ 96%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 96%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[both-previous] PASSED [ 97%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 97%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[right-previous] PASSED [ 97%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 97%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[right-next] PASSED [ 97%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[right-next] PASSED [ 97%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_properties[right] PASSED [ 97%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes[right] PASSED [ 97%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_calendar_bounds_properties[right] PASSED [ 97%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minute_methods[right] PASSED [ 97%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minutes[right] PASSED [ 97%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_trading_minute[right] PASSED [ 97%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_break_minute[right] PASSED [ 97%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_on_minute[right] PASSED [ 97%] 2502s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_at_time[right] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_prev_next_minute[right] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[right-none] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[right-none] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[left-none] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[left-none] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[both-none] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[both-none] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[neither-none] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[neither-previous] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_session[neither-next] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_properties[neither] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes[neither] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_calendar_bounds_properties[neither] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minute_methods[neither] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_minutes[neither] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_trading_minute[neither] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_break_minute[neither] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_on_minute[neither] PASSED [ 97%] 2503s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_open_at_time[neither] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_prev_next_minute[neither] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_past_session[neither] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_future_session[neither] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset[neither] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset_by_sessions[neither] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_in_range[neither] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_window[neither] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_distance[neither] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_to_sessions[neither] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes[neither] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes_count[neither] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_past_session[right] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_future_session[right] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset[right] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset_by_sessions[right] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_in_range[right] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_window[right] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_distance[right] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_to_sessions[right] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes[right] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes_count[right] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_past_session[left] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_future_session[left] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset[left] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset_by_sessions[left] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_in_range[left] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_window[left] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_distance[left] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_to_sessions[left] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes[left] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes_count[left] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_past_session[both] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_to_future_session[both] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset[both] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minute_offset_by_sessions[both] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_in_range[both] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_window[both] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_distance[both] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_minutes_to_sessions[both] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes[both] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_minutes_count[both] PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_has_break PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_regular_holidays_sample PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_adhoc_holidays_sample PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_non_holidays_sample PASSED [ 97%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_late_opens_sample PASSED [ 98%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_early_closes_sample PASSED [ 98%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_early_closes_sample_time PASSED [ 98%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_early_closes_weekdays PASSED [ 98%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_early_closes_weekdays_time PASSED [ 98%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_non_early_closes_sample PASSED [ 98%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_non_early_closes_sample_time PASSED [ 98%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_late_opens PASSED [ 98%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_early_closes PASSED [ 98%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_open_close_break_start_end PASSED [ 98%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_has_break PASSED [ 98%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_next_prev_session PASSED [ 98%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_session_offset PASSED [ 98%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_is_session PASSED [ 98%] 2504s tests/test_xwar_calendar.py::TestXWARCalendar::test_date_to_session PASSED [ 98%] 2505s tests/test_xwar_calendar.py::TestXWARCalendar::test_prev_next_open_close PASSED [ 98%] 2505s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_in_range PASSED [ 98%] 2505s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_has_break PASSED [ 98%] 2505s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_window PASSED [ 98%] 2505s tests/test_xwar_calendar.py::TestXWARCalendar::test_sessions_distance PASSED [ 98%] 2506s tests/test_xwar_calendar.py::TestXWARCalendar::test_trading_index PASSED [ 98%] 2506s tests/test_xwar_calendar.py::TestXWARCalendar::test_deprecated PASSED [ 98%] 2506s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_testbase_integrity PASSED [ 98%] 2506s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_base_integrity PASSED [ 98%] 2507s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_calculated_against_csv PASSED [ 98%] 2507s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_start_end PASSED [ 98%] 2508s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_invalid_input PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_bound_min PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_bound_max PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sanity_check_session_lengths PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_adhoc_holidays_specification PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_daylight_savings PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_opens_closes_break_starts_ends PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_properties[both] PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes[both] PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_calendar_bounds_properties[both] PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minute_methods[both] PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minutes[both] PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_trading_minute[both] PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_break_minute[both] PASSED [ 98%] 2509s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_on_minute[both] PASSED [ 98%] 2510s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_at_time[both] PASSED [ 98%] 2510s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_prev_next_minute[both] PASSED [ 98%] 2510s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[both-next] PASSED [ 98%] 2510s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[both-next] PASSED [ 98%] 2510s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[left-next] PASSED [ 98%] 2510s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[left-next] PASSED [ 98%] 2510s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_properties[left] PASSED [ 98%] 2510s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes[left] PASSED [ 98%] 2510s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_calendar_bounds_properties[left] PASSED [ 98%] 2510s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minute_methods[left] PASSED [ 98%] 2510s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minutes[left] PASSED [ 98%] 2510s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_trading_minute[left] PASSED [ 98%] 2510s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_break_minute[left] PASSED [ 98%] 2510s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_on_minute[left] PASSED [ 98%] 2511s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_at_time[left] PASSED [ 98%] 2511s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_prev_next_minute[left] PASSED [ 98%] 2511s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[left-previous] PASSED [ 98%] 2511s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[left-previous] PASSED [ 98%] 2511s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[both-previous] PASSED [ 98%] 2511s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[both-previous] PASSED [ 98%] 2511s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[right-previous] PASSED [ 98%] 2511s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[right-previous] PASSED [ 98%] 2511s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[right-next] PASSED [ 98%] 2511s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[right-next] PASSED [ 98%] 2511s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_properties[right] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes[right] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_calendar_bounds_properties[right] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minute_methods[right] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minutes[right] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_trading_minute[right] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_break_minute[right] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_on_minute[right] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_at_time[right] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_prev_next_minute[right] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[right-none] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[right-none] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[left-none] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[left-none] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[both-none] PASSED [ 98%] 2512s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[both-none] PASSED [ 98%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[neither-none] PASSED [ 99%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[neither-none] PASSED [ 99%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[neither-previous] PASSED [ 99%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[neither-previous] PASSED [ 99%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_session[neither-next] PASSED [ 99%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_trading_minute[neither-next] PASSED [ 99%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_properties[neither] PASSED [ 99%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes[neither] PASSED [ 99%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_calendar_bounds_properties[neither] PASSED [ 99%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minute_methods[neither] PASSED [ 99%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_minutes[neither] PASSED [ 99%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_trading_minute[neither] PASSED [ 99%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_break_minute[neither] PASSED [ 99%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_on_minute[neither] PASSED [ 99%] 2513s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_open_at_time[neither] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_prev_next_minute[neither] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_past_session[neither] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_future_session[neither] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset[neither] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset_by_sessions[neither] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_in_range[neither] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_window[neither] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_distance[neither] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_to_sessions[neither] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes[neither] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes_count[neither] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_past_session[right] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_future_session[right] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset[right] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset_by_sessions[right] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_in_range[right] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_window[right] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_distance[right] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_to_sessions[right] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes[right] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes_count[right] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_past_session[left] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_future_session[left] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset[left] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset_by_sessions[left] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_in_range[left] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_window[left] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_distance[left] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_to_sessions[left] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes[left] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes_count[left] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_past_session[both] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_to_future_session[both] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset[both] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minute_offset_by_sessions[both] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_in_range[both] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_window[both] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_distance[both] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_minutes_to_sessions[both] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes[both] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_minutes_count[both] PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_has_break PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_regular_holidays_sample PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_adhoc_holidays_sample PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_non_holidays_sample PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_late_opens_sample PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_early_closes_sample PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_early_closes_sample_time PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_early_closes_weekdays PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_early_closes_weekdays_time PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_non_early_closes_sample PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_non_early_closes_sample_time PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_late_opens PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_early_closes PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_open_close_break_start_end PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_has_break PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_next_prev_session PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_session_offset PASSED [ 99%] 2514s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_is_session PASSED [ 99%] 2515s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_date_to_session PASSED [ 99%] 2516s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_prev_next_open_close PASSED [ 99%] 2516s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_in_range PASSED [ 99%] 2516s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_has_break PASSED [ 99%] 2516s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_window PASSED [ 99%] 2516s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_sessions_distance PASSED [ 99%] 2516s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_trading_index PASSED [ 99%] 2516s tests/test_xwbo_calendar.py::TestXWBOCalendar::test_deprecated PASSED [100%] 2516s 2516s =============================== warnings summary =============================== 2516s tests/test_calendar_helpers.py:456 2516s /tmp/autopkgtest.wMlJoC/autopkgtest_tmp/tests/test_calendar_helpers.py:456: HypothesisWarning: Return-type annotation is `st.SearchStrategy[tuple[pandas._libs.tslibs.timestamps.Timestamp, pandas._libs.tslibs.timestamps.Timestamp]]`, but the decorated function should return a value (not a strategy) 2516s @st.composite 2516s 2516s tests/test_calendar_helpers.py:466 2516s /tmp/autopkgtest.wMlJoC/autopkgtest_tmp/tests/test_calendar_helpers.py:466: HypothesisWarning: Return-type annotation is `st.SearchStrategy[tuple[pandas._libs.tslibs.timestamps.Timestamp, pandas._libs.tslibs.timestamps.Timestamp]]`, but the decorated function should return a value (not a strategy) 2516s @st.composite 2516s 2516s tests/test_calendar_helpers.py:500 2516s /tmp/autopkgtest.wMlJoC/autopkgtest_tmp/tests/test_calendar_helpers.py:500: HypothesisWarning: Return-type annotation is `st.SearchStrategy[pandas._libs.tslibs.timedeltas.Timedelta]`, but the decorated function should return a value (not a strategy) 2516s @st.composite 2516s 2516s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 2516s =========== 8188 passed, 1 xfailed, 3 warnings in 621.09s (0:10:21) ============ 2517s autopkgtest [09:11:41]: test run-tests: -----------------------] 2517s run-tests PASS 2517s autopkgtest [09:11:41]: test run-tests: - - - - - - - - - - results - - - - - - - - - - 2518s autopkgtest [09:11:42]: @@@@@@@@@@@@@@@@@@@@ summary 2518s run-tests PASS 2524s nova [W] Skipping flock for amd64 2524s Creating nova instance adt-plucky-i386-exchange-calendars-20241120-082943-juju-7f2275-prod-proposed-migration-environment-15-41c310d5-9f43-49c5-8b4a-034f9c25e091 from image adt/ubuntu-plucky-amd64-server-20241119.img (UUID 2e5306de-7efa-448c-bc27-5518979e66f0)... 2524s nova [W] nova quota exceeded (attempt #0) 2524s nova [W] nova quota exceeded (attempt #1)