libpurple/tests/meson.build

Mon, 12 May 2025 20:25:16 -0500

author
Gary Kramlich <grim@reaperworld.com>
date
Mon, 12 May 2025 20:25:16 -0500
changeset 43246
0e9bbe9b4da8
parent 43175
41ad34b9de13
child 43292
03fe500d5aa5
permissions
-rw-r--r--

Handle formatting in server messages

Testing Done:
Used the default motd on my local ergo server to verify that formatting was working.

Reviewed at https://reviews.imfreedom.org/r/3991/

38534
28747a3cea35 Switch GnuTLS/NSS for Nettle in Meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38492
diff changeset
1 PROGS = [
43055
917386321169 Add Purple.Account:protocol
Gary Kramlich <grim@reaperworld.com>
parents: 43053
diff changeset
2 'account',
39974
cea80de2f5ac Add some unit tests around purple_account_option_copy
Gary Kramlich <grim@reaperworld.com>
parents: 39484
diff changeset
3 'account_option',
41181
e859c41d8996 Create the PurpleAccountManager API
Gary Kramlich <grim@reaperworld.com>
parents: 41176
diff changeset
4 'account_manager',
43144
627ee13c5dee Add a Purple.Attachment:inline property and other cleanups
Gary Kramlich <grim@reaperworld.com>
parents: 43076
diff changeset
5 'attachment',
43145
dff7cdade009 Implement Purple.Attachments
Gary Kramlich <grim@reaperworld.com>
parents: 43144
diff changeset
6 'attachments',
41514
a96768bacb59 Create PurpleAuthorizationRequest and use it for notifications.
Gary Kramlich <grim@reaperworld.com>
parents: 41493
diff changeset
7 'authorization_request',
42915
c6ca43acffbb Add Purple.Badge
Gary Kramlich <grim@reaperworld.com>
parents: 42890
diff changeset
8 'badge',
43076
6b0210915ee3 Create PurpleBadgeManager
Gary Kramlich <grim@reaperworld.com>
parents: 43057
diff changeset
9 'badge_manager',
42918
6cb60e125051 Implement Purple.Badges
Gary Kramlich <grim@reaperworld.com>
parents: 42915
diff changeset
10 'badges',
42326
3fc3dd614b4e Create PurpleChannelJoinDetails to replace the components for join chats
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
11 'channel_join_details',
39975
f691f3812205 Add some unit tests for the circular buffer.. they're not great, was just trying to test somethings
Gary Kramlich <grim@reaperworld.com>
parents: 39484
diff changeset
12 'circular_buffer',
42645
3844b333df53 Create PurpleCreateConversationDetails
Gary Kramlich <grim@reaperworld.com>
parents: 42582
diff changeset
13 'create_conversation_details',
42964
f0edc907e018 Implement Purple.Command
Gary Kramlich <grim@reaperworld.com>
parents: 42936
diff changeset
14 'command',
43057
2c801eae5449 Add commands for say and action
Gary Kramlich <grim@reaperworld.com>
parents: 43055
diff changeset
15 'commands',
43053
f2f944ac775c Implement Purple.CommandManager
Gary Kramlich <grim@reaperworld.com>
parents: 43051
diff changeset
16 'command_manager',
41739
f589ceec0172 Create the new PurpleContact
Gary Kramlich <grim@reaperworld.com>
parents: 41736
diff changeset
17 'contact',
41948
6d844d2faff1 Split PurpleContactInfo out of PurpleContact
Gary Kramlich <grim@reaperworld.com>
parents: 41888
diff changeset
18 'contact_info',
41754
abf413211063 Create the new PurpleContactManager
Gary Kramlich <grim@reaperworld.com>
parents: 41749
diff changeset
19 'contact_manager',
42114
d3fe2b899c89 Add membership management to PurpleConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42080
diff changeset
20 'conversation',
42273
884be7e66e1f Add some minor unit tests to PurpleConversationManager
Gary Kramlich <grim@reaperworld.com>
parents: 42266
diff changeset
21 'conversation_manager',
42080
df47db24cee6 Add PurpleConversationMember to link a PurpleContactInfo to a PurpleConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42078
diff changeset
22 'conversation_member',
42890
c2b7b3b9c351 Break out Purple.Conversation:members to its own class
Gary Kramlich <grim@reaperworld.com>
parents: 42844
diff changeset
23 'conversation_members',
41809
94c31400486a Don't use the default credential manager while unit testing aside from the default manager tests
Gary Kramlich <grim@reaperworld.com>
parents: 41804
diff changeset
24 'credential_manager',
40548
42556c49e1e2 Add PurpleCredentialProvider as the first piece to replace the existing keyring api.
Gary Kramlich <grim@reaperworld.com>
parents: 40351
diff changeset
25 'credential_provider',
42330
a2fa1d2d2452 Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents: 42326
diff changeset
26 'file_transfer',
42560
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents: 42538
diff changeset
27 'file_transfer_manager',
41090
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41040
diff changeset
28 'history_adapter',
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41040
diff changeset
29 'history_manager',
42383
e8302a55fddb Create PurpleIdleManager for managing idle states
Gary Kramlich <grim@reaperworld.com>
parents: 42375
diff changeset
30 'idle_manager',
38534
28747a3cea35 Switch GnuTLS/NSS for Nettle in Meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38492
diff changeset
31 'image',
40351
79cbdc5c5989 Add some unit tests for key value pairs
Gary Kramlich <grim@reaperworld.com>
parents: 39979
diff changeset
32 'keyvaluepair',
40564
2c5b4dc2e86a Pull the purple_markup_* api out of util.[ch] to purplemarkup.[ch]. No code was changed just moved it from one file to the other.
Gary Kramlich <grim@reaperworld.com>
parents: 40548
diff changeset
33 'markup',
41403
0186ae21071f Add purple_menu_populate_dynamic_targets to dynamically update GMenu's
Gary Kramlich <grim@reaperworld.com>
parents: 41243
diff changeset
34 'menu',
42078
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42060
diff changeset
35 'message',
42844
74d2c95237e2 Add PurpleMessages
Gary Kramlich <grim@reaperworld.com>
parents: 42835
diff changeset
36 'messages',
41433
d563b345a096 Phase 1 of the Notifications API
Gary Kramlich <grim@reaperworld.com>
parents: 41403
diff changeset
37 'notification',
42922
46b64a8cbec4 Create Purple.NotificationAddContact
Gary Kramlich <grim@reaperworld.com>
parents: 42918
diff changeset
38 'notification_add_contact',
42835
3144fbeba349 Rename AuthorizationRequestNotification to NotificationAuthorizationRequest
Gary Kramlich <grim@reaperworld.com>
parents: 42814
diff changeset
39 'notification_authorization_request',
42936
022c7b7102d9 Add Purple.NotificationLink
Gary Kramlich <grim@reaperworld.com>
parents: 42922
diff changeset
40 'notification_link',
41433
d563b345a096 Phase 1 of the Notifications API
Gary Kramlich <grim@reaperworld.com>
parents: 41403
diff changeset
41 'notification_manager',
41749
c22448f50d5d Create PurplePerson.
Gary Kramlich <grim@reaperworld.com>
parents: 41739
diff changeset
42 'person',
42051
18adb1710a54 Add read-only properties for primitive and message to PurplePresence
Gary Kramlich <grim@reaperworld.com>
parents: 42008
diff changeset
43 'presence',
42384
835faf0ddcb6 Implement PurplePresenceManager
Gary Kramlich <grim@reaperworld.com>
parents: 42383
diff changeset
44 'presence_manager',
41884
36684da1e60d Add async function to PurpleProtocol for testing whether or not connections are possible
Gary Kramlich <grim@reaperworld.com>
parents: 41809
diff changeset
45 'protocol',
42293
8888e6d1e9a8 Create the PurpleProtocolContacts interface
Gary Kramlich <grim@reaperworld.com>
parents: 42273
diff changeset
46 'protocol_contacts',
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42293
diff changeset
47 'protocol_conversation',
42375
8e61249e9b10 Implement ProtocolFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents: 42330
diff changeset
48 'protocol_file_transfer',
43051
44174781eb68 Clean up Purple.ProtocolManager and add some basic unit tests
Gary Kramlich <grim@reaperworld.com>
parents: 42964
diff changeset
49 'protocol_manager',
42243
4659a7247aa7 Add PurpleProtocolRoster for managing server side rosters
Gary Kramlich <grim@reaperworld.com>
parents: 42207
diff changeset
50 'protocol_roster',
41242
0343173db2f6 added basic tests for path based functions
ivanhoe <107501-ivanhoe@users.noreply.gitlab.com>
parents: 41181
diff changeset
51 'purplepath',
42148
4c7b2771461a Add PurpleRequestField.is_filled vfunc, and a filled property
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42114
diff changeset
52 'request_field',
42152
2bcdf415a79d Add PurpleRequest{Group,Page}:valid properties
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42148
diff changeset
53 'request_group',
2bcdf415a79d Add PurpleRequest{Group,Page}:valid properties
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42148
diff changeset
54 'request_page',
42207
7c16e3b1cce8 Create PurpleSavedPresence for saving the users presences
Gary Kramlich <grim@reaperworld.com>
parents: 42152
diff changeset
55 'saved_presence',
42060
d55b605fdafb Add purple_strmatches and move purple_person_matches and purple_contact_info_matches to it
Gary Kramlich <grim@reaperworld.com>
parents: 42051
diff changeset
56 'str',
41736
d78c0951ea2c Create the PurpleTags object for handling tags
Gary Kramlich <grim@reaperworld.com>
parents: 41734
diff changeset
57 'tags',
38534
28747a3cea35 Switch GnuTLS/NSS for Nettle in Meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38492
diff changeset
58 'util',
41040
4be2eda9548a Create PurpleWhiteboardManager for managing whiteboards
Gary Kramlich <grim@reaperworld.com>
parents: 41034
diff changeset
59 'whiteboard_manager',
4be2eda9548a Create PurpleWhiteboardManager for managing whiteboards
Gary Kramlich <grim@reaperworld.com>
parents: 41034
diff changeset
60 'xmlnode',
38534
28747a3cea35 Switch GnuTLS/NSS for Nettle in Meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38492
diff changeset
61 ]
38831
d260f3b61831 The start of a ui for unit testing
Gary Kramlich <grim@reaperworld.com>
parents: 38830
diff changeset
62
38832
7ad7854d8e60 Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents: 38831
diff changeset
63 test_ui = static_library(
7ad7854d8e60 Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents: 38831
diff changeset
64 'test-ui',
7ad7854d8e60 Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents: 38831
diff changeset
65 'test_ui.c',
7ad7854d8e60 Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents: 38831
diff changeset
66 'test_ui.h',
7ad7854d8e60 Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents: 38831
diff changeset
67 c_args: [
41107
1570d8844e9a Enable structured logging in libpurple
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41090
diff changeset
68 '-DTEST_DATA_DIR="@0@/data"'.format(meson.current_source_dir()),
1570d8844e9a Enable structured logging in libpurple
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41090
diff changeset
69 '-DG_LOG_USE_STRUCTURED',
1570d8844e9a Enable structured logging in libpurple
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41090
diff changeset
70 '-DG_LOG_DOMAIN="Purple-TestUI"',
38832
7ad7854d8e60 Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents: 38831
diff changeset
71 ],
39354
db17ba548304 libpurple: Drop DBus API bindings
Mike Ruprecht <cmaiku@gmail.com>
parents: 39166
diff changeset
72 dependencies: [libpurple_dep, glib]
38832
7ad7854d8e60 Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents: 38831
diff changeset
73 )
7ad7854d8e60 Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents: 38831
diff changeset
74
41493
06dcfb1cc1b2 Set XDG_CONFIG_DIR for all unittests so they can run in a silo
Gary Kramlich <grim@reaperworld.com>
parents: 41433
diff changeset
75 testenv.set('XDG_CONFIG_HOME', meson.current_build_dir() / 'config')
42814
59e6529a1e78 Mutliple cleanups to Purple.Message
Gary Kramlich <grim@reaperworld.com>
parents: 42754
diff changeset
76 testenv.set('G_ENABLE_DIAGNOSTIC', '1')
41493
06dcfb1cc1b2 Set XDG_CONFIG_DIR for all unittests so they can run in a silo
Gary Kramlich <grim@reaperworld.com>
parents: 41433
diff changeset
77
38534
28747a3cea35 Switch GnuTLS/NSS for Nettle in Meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38492
diff changeset
78 foreach prog : PROGS
41888
9db0b73c8fab Take advantage of f-strings in Meson
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41884
diff changeset
79 e = executable(f'test_@prog@', f'test_@prog@.c',
38848
22e32372b906 Fix a few typos and cleanup some whitespace
Gary Kramlich <grim@reaperworld.com>
parents: 38832
diff changeset
80 c_args : [
42384
835faf0ddcb6 Implement PurplePresenceManager
Gary Kramlich <grim@reaperworld.com>
parents: 42383
diff changeset
81 '-DTEST_DATA_DIR="@0@/data"'.format(meson.current_source_dir()),
835faf0ddcb6 Implement PurplePresenceManager
Gary Kramlich <grim@reaperworld.com>
parents: 42383
diff changeset
82 '-DTEST_CACHE_DIR="@0@/cache"'.format(meson.current_build_dir()),
38848
22e32372b906 Fix a few typos and cleanup some whitespace
Gary Kramlich <grim@reaperworld.com>
parents: 38832
diff changeset
83 ],
39354
db17ba548304 libpurple: Drop DBus API bindings
Mike Ruprecht <cmaiku@gmail.com>
parents: 39166
diff changeset
84 dependencies : [libpurple_dep, glib],
38832
7ad7854d8e60 Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents: 38831
diff changeset
85 link_with: test_ui,
7ad7854d8e60 Create a very basic ui for testing
Gary Kramlich <grim@reaperworld.com>
parents: 38831
diff changeset
86 )
41493
06dcfb1cc1b2 Set XDG_CONFIG_DIR for all unittests so they can run in a silo
Gary Kramlich <grim@reaperworld.com>
parents: 41433
diff changeset
87 test(prog, e,
06dcfb1cc1b2 Set XDG_CONFIG_DIR for all unittests so they can run in a silo
Gary Kramlich <grim@reaperworld.com>
parents: 41433
diff changeset
88 env: testenv,
06dcfb1cc1b2 Set XDG_CONFIG_DIR for all unittests so they can run in a silo
Gary Kramlich <grim@reaperworld.com>
parents: 41433
diff changeset
89 )
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
90 endforeach
41734
a708bd1edc77 Clean up setting handling for the credential manager and make its unit tests don't mess up the others
Gary Kramlich <grim@reaperworld.com>
parents: 41683
diff changeset
91
42008
ae3fa963c1b3 Add animation support to PurpleAvatar
Gary Kramlich <grim@reaperworld.com>
parents: 41966
diff changeset
92 subdir('avatar')

mercurial