summaryrefslogtreecommitdiffstats
path: root/src/libcommuni/tests/auto/shared/tst_ircdata.cpp
blob: b3a11b225ccee13bfbf32655600a01a466dc6e5e (plain)
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
87
88
89
90
91
92
93
94
95
/*
 * Copyright (C) 2008-2014 The Communi Project
 *
 * This test is free, and not covered by the BSD license. There is no
 * restriction applied to their modification, redistribution, using and so on.
 * You can study them, modify them, use them in your own program - either
 * completely or partially.
 */

#include "tst_ircdata.h"
#include "tst_freenode.h"
#include "tst_ircnet.h"
#include "tst_euirc.h"

QList<QByteArray> tst_IrcData::keys()
{
    return QList<QByteArray>() << "freenode" << "ircnet" << "euirc";
}

QByteArray tst_IrcData::welcome(const QByteArray& key)
{
    static QHash<QByteArray, QByteArray> blobs;
    if (blobs.isEmpty()) {
        blobs.insert("freenode", freenode_welcome);
        blobs.insert("ircnet", ircnet_welcome);
        blobs.insert("euirc", euirc_welcome);
    }
    return blobs.value(key.isEmpty() ? keys().first() : key);
}

QByteArray tst_IrcData::join(const QByteArray& key)
{
    static QHash<QByteArray, QByteArray> blobs;
    if (blobs.isEmpty()) {
        blobs.insert("freenode", freenode_join);
        blobs.insert("ircnet", ircnet_join);
        blobs.insert("euirc", euirc_join);
    }
    return blobs.value(key.isEmpty() ? keys().first() : key);
}

QStringList tst_IrcData::names(const QByteArray& key)
{
    static QHash<QByteArray, QStringList> blobs;
    if (blobs.isEmpty()) {
        blobs.insert("freenode", QString::fromUtf8(freenode_names).split(" "));
        blobs.insert("ircnet", QString::fromUtf8(ircnet_names).split(" "));
        blobs.insert("euirc", QString::fromUtf8(euirc_names).split(" "));
    }
    return blobs.value(key.isEmpty() ? keys().first() : key);
}

QStringList tst_IrcData::admins(const QByteArray& key)
{
    static QHash<QByteArray, QStringList> blobs;
    if (blobs.isEmpty()) {
        blobs.insert("freenode", QString::fromUtf8(freenode_admins).split(" "));
        blobs.insert("ircnet", QString::fromUtf8(ircnet_admins).split(" "));
        blobs.insert("euirc", QString::fromUtf8(euirc_admins).split(" "));
    }
    return blobs.value(key.isEmpty() ? keys().first() : key);
}

QStringList tst_IrcData::ops(const QByteArray& key)
{
    static QHash<QByteArray, QStringList> blobs;
    if (blobs.isEmpty()) {
        blobs.insert("freenode", QString::fromUtf8(freenode_ops).split(" "));
        blobs.insert("ircnet", QString::fromUtf8(ircnet_ops).split(" "));
        blobs.insert("euirc", QString::fromUtf8(euirc_ops).split(" "));
    }
    return blobs.value(key.isEmpty() ? keys().first() : key);
}

QStringList tst_IrcData::halfops(const QByteArray& key)
{
    static QHash<QByteArray, QStringList> blobs;
    if (blobs.isEmpty()) {
        blobs.insert("freenode", QString::fromUtf8(freenode_halfops).split(" "));
        blobs.insert("ircnet", QString::fromUtf8(ircnet_halfops).split(" "));
        blobs.insert("euirc", QString::fromUtf8(euirc_halfops).split(" "));
    }
    return blobs.value(key.isEmpty() ? keys().first() : key);
}

QStringList tst_IrcData::voices(const QByteArray& key)
{
    static QHash<QByteArray, QStringList> blobs;
    if (blobs.isEmpty()) {
        blobs.insert("freenode", QString::fromUtf8(freenode_voices).split(" "));
        blobs.insert("ircnet", QString::fromUtf8(ircnet_voices).split(" "));
        blobs.insert("euirc", QString::fromUtf8(euirc_voices).split(" "));
    }
    return blobs.value(key.isEmpty() ? keys().first() : key);
}