File: TestUtils.awk

package info (click to toggle)
translate-shell 0.9.7.1-2
  • links: PTS, VCS
  • area: contrib
  • in suites: forky, sid, trixie
  • size: 644 kB
  • sloc: awk: 7,183; lisp: 54; makefile: 38; sh: 22
file content (86 lines) | stat: -rw-r--r-- 2,235 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
@include "include/Utils"

BEGIN {
    START_TEST("Utils.awk")

    T("GawkVersion", 1)
    {
        initGawk()
        assertTrue(GawkVersion ~ "^(4|5).")
    }

    T("Rlwrap", 1)
    {
        initRlwrap()
        assertEqual(Rlwrap, "rlwrap")
    }

    T("Emacs", 1)
    {
        initEmacs()
        assertEqual(Emacs, "emacs")
    }

    T("newerVersion()", 5)
    {
        assertTrue(newerVersion("0.9", "0.8"))
        assertTrue(newerVersion("0.9.0.1", "0.9.0"))
        assertTrue(newerVersion("1.0", "0.9.9999"))
        assertTrue(newerVersion("1.9.9999", "1.9.10"))
        assertTrue(newerVersion("2", "1.9.9999"))
    }

    if (yn(ENVIRON["NETWORK_ACCESS"])) { # if network access enabled
        T("curl()", 1)
        {
            delete tokens; delete ast
            tokenize(tokens, curl("https://httpbin.org/get"))
            parseJson(ast, tokens)
            assertEqual(unparameterize(ast[0 SUBSEP "url"]),
                        "https://httpbin.org/get")
        }

        T("curlPost()", 1)
        {
            delete tokens; delete ast
            tokenize(tokens, curlPost("https://httpbin.org/post", "fizz=buzz"))
            parseJson(ast, tokens)
            assertEqual(unparameterize(ast[0 SUBSEP "url"]),
                        "https://httpbin.org/post")
        }
    }

    T("dump()", 3)
    {
        delete group
        assertEqual(dump("a", group), 1)

        delete group
        assertEqual(dump("Århus", group), 6)

        delete group
        assertEqual(dump("안녕하세요 세계", group), 22)
    }

    T("dumpX()", 2)
    {
        delete group
        assertEqual(dumpX("a", group), 1)

        delete group
        assertEqual(dumpX("你好", group), 6)
    }

    T("base64()", 1)
    {
        assertEqual(base64("ninja"), "bmluamE=")
        assertEqual(base64("ninjaninjaninjaninjaninjaninjaninjaninjaninjaninjaninjaninjaninjaninjaninjaninjaninjaninjaninjaninjaninjaninjaninjaninja"), "bmluamFuaW5qYW5pbmphbmluamFuaW5qYW5pbmphbmluamFuaW5qYW5pbmphbmluamFuaW5qYW5pbmphbmluamFuaW5qYW5pbmphbmluamFuaW5qYW5pbmphbmluamFuaW5qYW5pbmphbmluamFuaW5qYW5pbmph")
    }

    T("uprintf", 1)
    {
        assertEqual(uprintf("Ma\\u00f1ana"), "Mañana")
    }

    END_TEST()
}