File: test_print_width.cpp

package info (click to toggle)
libosmium 2.23.0-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 4,564 kB
  • sloc: cpp: 53,570; sh: 148; makefile: 19
file content (19 lines) | stat: -rw-r--r-- 871 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "catch.hpp"

#include <osmium/io/detail/debug_output_format.hpp>

TEST_CASE("Calculate width of a number") {
    REQUIRE(osmium::io::detail::print_width(0) == 1);
    REQUIRE(osmium::io::detail::print_width(1) == 1);
    REQUIRE(osmium::io::detail::print_width(2) == 1);
    REQUIRE(osmium::io::detail::print_width(9) == 1);
    REQUIRE(osmium::io::detail::print_width(10) == 1); // 0 .. 9
    REQUIRE(osmium::io::detail::print_width(11) == 2);
    REQUIRE(osmium::io::detail::print_width(42) == 2);
    REQUIRE(osmium::io::detail::print_width(99) == 2);
    REQUIRE(osmium::io::detail::print_width(100) == 2); // 0 .. 99
    REQUIRE(osmium::io::detail::print_width(101) == 3);
    REQUIRE(osmium::io::detail::print_width(999) == 3);
    REQUIRE(osmium::io::detail::print_width(1000) == 3); // 0 .. 100
    REQUIRE(osmium::io::detail::print_width(1001) == 4);
}