summaryrefslogtreecommitdiff
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* macros: add NM_BACKPORT_SYMBOL()Dan Winship2015-06-261-3/+1
| | | | | | | | | | | Add a macro to insert the necessary compiler/linker magic to add a copy of an existing symbol to an older version. Also, update check-exports.sh to be able to check for such symbols by listed them commented-out in the appropriate section. [thaller@redhat.com: patch modified] Related: https://bugzilla.gnome.org/show_bug.cgi?id=742993
* valgrind: rework run-test-valgrind.sh script not to print unrelated messageThomas Haller2015-06-041-17/+29
| | | | | | | If the valgrind logfile is empty, don't log an error message with the location of the logfile. Also, if the test didn't fail due to memleaks, log a different message.
* tests: delete the valgrind logs if they're emptyLubomir Rintel2015-06-041-0/+3
|
* tests: don't limit the valgrind tracebacks to 12 framesLubomir Rintel2015-06-041-0/+1
| | | | The glib tracebacks are typically longer.
* tests: avoid calling GLib.IOChannel.unix_new()Lubomir Rintel2015-06-021-1/+1
| | | | | The Ubuntu 12.04 introspection data don't contain it. However, the default constructor works just well and even looks a bit more Python-y.
* test: fix running valgrind tests with NMTST_NO_VALGRINDThomas Haller2015-05-261-1/+1
| | | | Fixes: 6463ce5dd9ffc1aae3ca9ddc4dac4e25fd815237
* tests: be a bit more helpful when valgrind tests failLubomir Rintel2015-05-261-1/+13
|
* tests: use the TAP formatterLubomir Rintel2015-05-261-2/+2
| | | | The test results in standard format are easily integrated into CI systems.
* tests: always spawn private d-busLubomir Rintel2015-05-261-5/+3
| | | | Parallel test runs would not be possible without this.
* tests: allow running tests without valgrind by setting NMTST_NO_VALGRINDThomas Haller2015-02-091-0/+5
| | | | | | | When configuring with --with-valgrind, tests will be invoked via valgrind. That significantly slows down the tests. Allow user to set the environment variable NMTST_NO_VALGRIND to invoke tests directly, even when valgrind was enabled at configure time.
* tests: fail valgrind script if log file is non-emptyth/memleaksThomas Haller2015-02-091-0/+5
|
* libnm/tests: enable valgrind for libnm testsThomas Haller2015-02-091-0/+8
|
* tests: fix valgrind script to handle exit value 77 (skip)Thomas Haller2015-02-061-1/+1
|
* libnm/tests: fix GetAccessPoints() in test-networkmanager-service.py for ↵Thomas Haller2015-01-051-5/+1
| | | | | | | hidden APs There was a bug checking for "if a.ssid():". Refactor the whole line to use a list comprehension.
* libnm/tests: cleanup handling object paths in test-networkmanager-service.pyThomas Haller2015-01-051-9/+9
|
* libnm/tests: fix handling ByteArray in test-networkmanager-service.py for ↵Thomas Haller2015-01-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | Python 3 In Python 3, dbus.ByteArray() must be created using a byte string, while strings obtained via DBUS are unicode strings. This was wrong in WifiAp.__get_props() which broke the test test_wifi_ap_added_removed(). File "/usr/lib/python3.3/site-packages/dbus/service.py", line 707, in _message_cb retval = candidate_method(self, *args, **keywords) File "./NetworkManager/tools/test-networkmanager-service.py", line 102, in GetAll return self._get_dbus_properties(iface) File "./NetworkManager/tools/test-networkmanager-service.py", line 96, in _get_dbus_properties return self.__dbus_ifaces[iface]() File "./NetworkManager/tools/test-networkmanager-service.py", line 315, in __get_props props[PP_SSID] = dbus.ByteArray(self.ssid) TypeError: string argument without an encoding https://bugzilla.gnome.org/show_bug.cgi?id=739448
* build: fix check-exports.sh for ppc64 archThomas Haller2014-12-191-1/+1
| | | | | | | | On ppc64, `nm` reports the exported symbols as 'D' instead of 'T'. This caused `make check` to fail. "D" The symbol is in the initialized data section. "T" The symbol is in the text (code) section.
* build: adjust tools/check-exports.shThomas Haller2014-12-051-13/+44
| | | | | | Now that the version scripts might have different sections, the previous check-exports.sh script no longer works.
* test,examples: fix scripts to avoid 'has_key' for Python 3Thomas Haller2014-10-311-6/+6
| | | | | | 'has_key' on Dictionaries is removed from Python3 in favor of 'in'. Signed-off-by: Thomas Haller <thaller@redhat.com>
* libnm-core, settings: move NMSettingsError to nm-errorsDan Winship2014-10-221-0/+11
| | | | | | | | | Move the definition of NMSettingsError to nm-errors, register it with D-Bus, and verify in the tests that it maps correctly. Remove a few unused error codes, simplify a few others, and rename GENERAL to FAILED and HOSTNAME_INVALID to INVALID_HOSTNAME, for consistency.
* libnm-core, libnm, devices: merge client and daemon NMDeviceErrorDan Winship2014-10-221-0/+9
| | | | | | | | | | | | | | Merge libnm's NMDeviceError and the daemon's NMDeviceError into a single enum (in nm-errors.h). Register the domain with D-Bus, and add a test that the client side decodes it correctly. The daemon's NM_DEVICE_ERROR_CONNECTION_INVALID gets absorbed into libnm's NM_DEVICE_ERROR_INVALID_CONNECTION, and NM_DEVICE_ERROR_UNSUPPORTED_DEVICE_TYPE gets dropped, since it was only returned from one place, which is now using NM_DEVICE_ERROR_FAILED, since (a) it ought to be a "can't happen", and (b) the only caller of that function just logs error->message and then frees the error without ever looking at the code.
* libnm-core, core: register NMConnectionError with D-BusDan Winship2014-10-221-0/+22
| | | | | | Register NMConnectionError with D-Bus on both sides, so that, eg, connection validation failures in the daemon will translate to the correct error codes in the client.
* libnm: add an object-creation-failed testDan Winship2014-10-191-1/+7
|
* tools: add a bit of support for VLANs to test-networkmanager-service.pyDan Winship2014-10-191-6/+40
|
* tools: add a bit more activation support to test-networkmanager-service.pyDan Winship2014-10-191-3/+89
| | | | | Now test-networkmanager-service.py can create ActiveConnections, though they don't actually finish activating.
* tools: fix test-networkmanager-service Settings.ConnectionsDan Winship2014-09-181-2/+5
| | | | The test settings service wasn't exporting a Connections property.
* libnm: add test-secret-agentDan Winship2014-09-091-2/+90
| | | | | | Implement some basic secret agent functionality in test-networkmanager-service.py, and add test-secret-agent to test that NMSecretAgent works as expected.
* libnm-glib/test: fix test failure for test-remote-settings-clientThomas Haller2014-08-081-1/+1
| | | | | | | | | Due to behavioral change of test-networkmanager-service.py, the test /remote_settings/remove_connection fails (test_remove_connection() at test-remote-settings-client.c:318). Fixes: 66a34803293e1012d7a1728d503dd64a1d906366 Signed-off-by: Thomas Haller <thaller@redhat.com>
* libnm: add a test for connection-deleted-while-being-createdDan Winship2014-08-071-0/+17
| | | | | | | Since NMRemoteSettings doesn't announce new connections until it has fetched their properties, it's possible that a connection could get deleted while we're waiting for it to be created. NMRemoteSettings has code to deal with this, so add a test to make sure that it works.
* libnm-glib: make test-networkmanager-service.py automatically exit with its ↵Dan Winship2014-08-011-1/+8
| | | | | | | | | | | | | | | | | | | parent test-nm-client.c and test-remote-settings-client.c were using their own assertion macros so they could kill the test service on assertion failure. Except that some new code didn't get the memo and used the g_assert* macros. Not to mention that sometimes the tests would crash outside of an assertion macro. We can make test-networkmanager-service.py notice that its parent has crashed by opening a pipe between them and taking advantage of the fact that the pipe will be automatically closed if the parent crashes. So then test-networkmanager-service.py just has to watch for that, and exit if the pipe closes. Then that lets us drop the test_assert* macros and just use g_assert* instead.
* tools: move libnm-glib's fake NM service implementations hereDan Winship2014-07-302-0/+888
| | | | | | | | | | Move libnm-glib's test-fake-nm.py and test-remote-settings-service.py to tools/, merge them together into a single program, and fix a few bugs (notably some missing signal emissions in the Settings service). Although they are currently only used by libnm-glib's tests, they are generic enough that they could be used by other code in the future (and in particular, they will be used by libnm's tests as well).
* tools: move debug-helper.py from test/ to tools/Dan Winship2014-07-302-0/+62
|
* tools: dist everythingDan Winship2014-07-301-1/+3
| | | | | Dist run-test-valgrind.sh and test-sudo-wrapper.sh, since they may be of use to people building from tarballs as well.
* tools: remove generate-settings-spec, which is no longer usedDan Winship2014-06-192-481/+1
|
* nmtst: add nmtst_reexec_sudo() functionThomas Haller2014-06-051-0/+29
| | | | | | | | Interpret environment variable NMTST_DEBUG which allows to specify 'sudo-cmd=CMD'. If the test program calls nmtst_reexec_sudo(), it will `exec CMD "$0" "$@"`. Signed-off-by: Thomas Haller <thaller@redhat.com>
* all: g_type_init() has been deprecated in GLib 2.35.0Jiří Klimeš2014-05-271-0/+2
| | | | | g_type_init() deprecation: https://bugzilla.gnome.org/show_bug.cgi?id=686161
* libnm-util, libnm-glib: add versioned deprecation/availability macrosDan Winship2014-02-131-0/+1
| | | | | | | | | | | | | | | | Add versioned NM_DEPRECATED_IN_* and NM_AVAILABLE_IN_* macros, and tag new/deprecated functions accordingly. (All currently-deprecated functions are assumed to have been deprecated in 0.9.10.) Add NM_VERSION_MIN_REQUIRED and NM_VERSION_MAX_ALLOWED macros which can be set to determine which versions will cause warnings. With the current settings, external consumers of the libnm-util/libnm-glib APIs will have MIN_REQUIRED and MAX_ALLOWED both set to NM_VERSION_0_9_8 by default, meaning they will get warnings about functions added in 0.9.10. NM internally sets NM_VERSION_MAX_ALLOWED to NM_VERSION_NEXT_STABLE to ensure that it is always allowed to use all APIs.
* tools: enhance description for the nm-settings manual pageJiří Klimeš2013-11-281-13/+28
|
* tools: add team, team-port and dcb settings into generate-settings-spec.cJiří Klimeš2013-11-281-6/+12
|
* build: switch from $(INCLUDES) to $(AM_CPPFLAGS) to make automake happyDan Winship2013-08-221-6/+4
| | | | | | | | | | | | | Unfortunately, $(AM_CPPFLAGS) gets overridden by per-target _CPPFLAGS variables, which $(INCLUDES) did not, so this requires some additional changes. In most places, I have just gotten rid of the per-target _CPPFLAGS variables; in directories with a single target, the per-target variable is unnecessary, and in directories with multiple targets, the per-target variable is often undesirable, since it forces some files to be compiled twice, even though there ends up being no difference between the two files.
* valgrind: print absolute pathPavel Šimerda2013-07-301-1/+1
| | | | | Relative paths in makefiles have different anchor than the current shell directory.
* build: use a helper script for all valgrind testsPavel Šimerda2013-07-261-0/+26
|
* man: fix distcheckDan Winship2013-05-022-6/+0
| | | | | Also, we can get rid of tools/manpages-docbook.xsl and just specify the canonical URL directly.
* all: use G_VALUE_INIT to initialize GValue variablesJiří Klimeš2013-03-251-1/+1
| | | | | It makes the initializations more explicit. G_VALUE_INIT is available since glib 2.30, and NM now require glib >= 2.32
* build: remove glib-mkenumsDan Winship2013-02-262-571/+0
| | | | | This was imported to get a bugfix in glib 2.31.5; since we require 2.32 now, we can use the system glib-mkenums.
* build: manpages-docbook.xsl should be DIST-edDan Williams2013-02-051-1/+5
|
* man: generate nm-settings.5 manual page (bgo #673520)Jiří Klimeš2013-02-051-0/+5
| | | | | We only generate the page when configured "--with-docs", because we need xsl stylesheets that are pulled in by gtk-doc.
* tools: move generate-settings-spec to toolsJiří Klimeš2013-02-052-1/+459
|
* tools: simplify symbol visiblity check scriptDan Williams2012-07-231-1/+1
| | | | Using nm is way simpler, and actually less error-prone.
* Use glib-mkenums to generate enum typesDan Winship2012-02-152-1/+571
| | | | | | | | | | | | | | | | | | | Rather than generating enum classes by hand (and complaining in each file that "this should really be standard"), use glib-mkenums. Unfortunately, we need a very new version of glib-mkenums in order to deal with NM's naming conventions and to fix a few other bugs, so just import that into the source tree temporarily. Also, to simplify the use of glib-mkenums, import Makefile.glib from https://bugzilla.gnome.org/654395. To avoid having to run glib-mkenums for every subdirectory of src/, add a new "generated" directory, and put the generated enums files there. Finally, use Makefile.glib for marshallers too, and generate separate ones for libnm-glib and NetworkManager.