Merge lp://qastaging/~compiz-team/compiz/compiz.split_gsettings_rw_funcs into lp://qastaging/compiz/0.9.8

Proposed by Sam Spilsbury
Status: Superseded
Proposed branch: lp://qastaging/~compiz-team/compiz/compiz.split_gsettings_rw_funcs
Merge into: lp://qastaging/compiz/0.9.8
Prerequisite: lp://qastaging/~compiz-team/compiz/compiz.ccs_backend_conformance_test
Diff against target: 6281 lines (+4126/-1139)
31 files modified
compizconfig/gconf/src/gconf.c (+2/-2)
compizconfig/gsettings/gsettings_backend_shared/CMakeLists.txt (+15/-1)
compizconfig/gsettings/gsettings_backend_shared/ccs_gsettings_interface.c (+65/-0)
compizconfig/gsettings/gsettings_backend_shared/ccs_gsettings_interface.h (+59/-0)
compizconfig/gsettings/gsettings_backend_shared/ccs_gsettings_interface_wrapper.c (+260/-0)
compizconfig/gsettings/gsettings_backend_shared/ccs_gsettings_interface_wrapper.h (+21/-0)
compizconfig/gsettings/gsettings_backend_shared/gsettings_util.c (+935/-10)
compizconfig/gsettings/gsettings_backend_shared/gsettings_util.h (+242/-4)
compizconfig/gsettings/src/gconf-integration.c (+55/-42)
compizconfig/gsettings/src/gsettings.c (+336/-666)
compizconfig/gsettings/src/gsettings.h (+31/-12)
compizconfig/gsettings/tests/CMakeLists.txt (+29/-2)
compizconfig/gsettings/tests/ccs_gsettings_backend_mock.cpp (+61/-0)
compizconfig/gsettings/tests/ccs_gsettings_backend_mock.h (+176/-0)
compizconfig/gsettings/tests/ccs_gsettings_wrapper_mock.cpp (+52/-0)
compizconfig/gsettings/tests/ccs_gsettings_wrapper_mock.h (+113/-0)
compizconfig/gsettings/tests/gsettings-mock-schemas-config.h.in (+7/-0)
compizconfig/gsettings/tests/gsettings_mocks.cpp (+0/-200)
compizconfig/gsettings/tests/gsettings_mocks.h (+0/-45)
compizconfig/gsettings/tests/org.compiz.mock.gschema.xml (+53/-0)
compizconfig/gsettings/tests/test_gsettings_tests.cpp (+1195/-45)
compizconfig/gsettings/tests/test_gsettings_tests.h (+43/-2)
compizconfig/gsettings/tests/test_gsettings_wrapper.cpp (+249/-0)
compizconfig/libcompizconfig/include/ccs-defs.h (+18/-0)
compizconfig/libcompizconfig/include/ccs-object.h (+11/-0)
compizconfig/libcompizconfig/include/ccs.h (+0/-19)
compizconfig/libcompizconfig/src/main.c (+0/-11)
compizconfig/libcompizconfig/tests/CMakeLists.txt (+1/-1)
compizconfig/libcompizconfig/tests/compizconfig_test_ccs_object.cpp (+1/-77)
compizconfig/mocks/libcompizconfig/compizconfig_ccs_setting_mock.h (+5/-0)
compizconfig/tests/compizconfig_ccs_mocked_allocator.h (+91/-0)
To merge this branch: bzr merge lp://qastaging/~compiz-team/compiz/compiz.split_gsettings_rw_funcs
Reviewer Review Type Date Requested Status
Compiz Maintainers Pending
Review via email: mp+114580@code.qastaging.launchpad.net

This proposal has been superseded by a proposal from 2012-08-07.

Description of the change

Split out the read and write functions to and from variants so that we can re-use them in the tests

Next: lp:~compiz-team/compiz/compiz.gsettings_conformance_test

To post a comment you must log in.
3336. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3337. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3338. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3339. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3340. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3341. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3342. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3343. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3344. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3345. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3346. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3347. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3348. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3349. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3350. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3351. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3352. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3353. By Sam Spilsbury

Moves a bunch of bugfixes and tidy-ups from test_gsettings_conformance
to split_gsettings_rw_funcs

1) gsettings_backend_shared is now a SHARED library for now
   in order to avoid duplicated symbol issues when dynamically loading
   the backend and then running it in a test fixture with the same
   staticaly linked library
2) refactored out findSettingAndPluginToUpdateFromPath, as we
   need to be able to test it independently
3) refactored out updateSettingWithGSettingsKeyName as a wrapper
   around findSetitngAndPluingToUpdateFromPath
4) made the key member of getVariantAtKey const
5) fixes a pretty nasty leak in readListValue - we need to provide
   the parent CCSSetting object rather than the CCSSettingType as
   ccsGetValueListFrom*Array needs it in order to set the parent
   member on the variables - if that isn't done it doesn't
   have any way of quering the actual setting info and freeing
   any auxilary data we might have allocated, and (stupidly) bails
   out by not freeing anyting at all.
6) Made a wrapper writeVariantToKey which wraps g_settings_set_value
7) Introduced private CCSGSettingsBackendInterface with the following
   methods
   * - getContext -> get the currently used context by the backend
   * - connectToChangedSignal -> connect to the valueChanged signal
       for a particular GObject
   * - getSettingsObjectForPluginWithPath -> retreives the GSettings
       object that we created for a particular plugin at a path
       for context
   * - registerGConfClient -> opens a global GConfClient
   * - unregisterGConfClient -> closes GConfClient

   Note that most of these methods are needed to remove particular
   side effects that are undesirable during testing, as they, for example
   might need a running dbus server or worse, X Server.

   Also we don't want GLib callbacks indeterminately messing up our
   expectations.

8) Provide a CCSBackend * to readGConfIntegratedOption and
   writeGConfIntegratedOption so that we can dynamically register
   the client there
9) Fix a nasty case where we would attempt to read a float value
   right after reading a string value because of a missing break statement
10) Fixes read list variants not actually being unreff'd
11) Fixes a number of other read keys not related to settings also
    not being unreff'd
12) Use g_list_free_full to free the settingsList

3354. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3355. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3356. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3357. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3358. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3359. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3360. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3361. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3362. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3363. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3364. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3365. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3366. By Sam Spilsbury

Merge

3367. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3368. By Sam Spilsbury

Merge

3369. By Sam Spilsbury

Move global data to a private struct

3370. By Sam Spilsbury

Also free it

3371. By Sam Spilsbury

Set private in the right place

3372. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3373. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3374. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3375. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3376. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3377. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3378. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3379. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3380. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3381. By Sam Spilsbury

Refactor out readBoolListValue

3382. By Sam Spilsbury

Refactor out readIntListValue

3383. By Sam Spilsbury

Refactor out the other read*ListValue funcs

3384. By Sam Spilsbury

Added missing break statement

3385. By Sam Spilsbury

Refactor out list writing functions too

3386. By Sam Spilsbury

Interface seams for :
+ ccsGSettingsBackendUnregisterGConfClientDefault,
+ ccsGSettingsBackendGetExistingProfilesDefault,
+ ccsGSettingsBackendSetExistingProfilesDefault,
+ ccsGSettingsBackendSetCurrentProfileDefault

3387. By Sam Spilsbury

Use those seams

3388. By Sam Spilsbury

Put updateCurrentProfileName in gsettings_util.c

3389. By Sam Spilsbury

Added a GMock stub file and move mock_gsettings to wrap_gsettigns

3390. By Sam Spilsbury

Added stub mock

3391. By Sam Spilsbury

Mock implementation of CCSGSettingsBackend *

3392. By Sam Spilsbury

Added a simple (but incomplete test for updateCurrentProfileName

3393. By Sam Spilsbury

Also match the value

3394. By Sam Spilsbury

Added a test for handling of calling updateCurrentProfile with a known profile

3395. By Sam Spilsbury

Refactor out insertStringIntoVariantIfNew

3396. By Sam Spilsbury

Rename variables in insertStringIntoVariantIfNew

3397. By Sam Spilsbury

refactor out unsetAllChangedPluginKeysInProfile

3398. By Sam Spilsbury

Fix weird indent

3399. By Sam Spilsbury

Use the interface seams and make:

+gboolean
+insertStringIntoVariantIfMatchesPredicate (GVariant **variant,
+ const char *string,
+ ComparisonPredicate insert,
+ ComparisonPredicate append);

public

3400. By Sam Spilsbury

Make deleteProfile use the link seams

3401. By Sam Spilsbury

Kill the dependency on priv in deleteProfile. Also add the other interface
functions to the mock as they were missing

3402. By Sam Spilsbury

Split out updateProfile and deleteProfile

3403. By Sam Spilsbury

Introduce enough seams such that CCSGSettingsTestIndependent.TestDeleteProfileExistingProfile
fails without segfaulting

3404. By Sam Spilsbury

Make the profile deletion test pass

3405. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3406. By Sam Spilsbury

Refactor to remove

 gboolean
-insertStringIntoVariantIfMatchesPredicate (GVariant **variant,
- const char *string,
- ComparisonPredicate insert,
- ComparisonPredicate append);

3407. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3408. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3409. By Sam Spilsbury

Match some of the passed profile names too

3410. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3411. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3412. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3413. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3414. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3415. By Sam Spilsbury

Merge

3416. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3417. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3418. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3419. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3420. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3421. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3422. By Sam Spilsbury

Move the backend info to the util lib

3423. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3424. By Sam Spilsbury

Remove dead voidcmp0

3425. By Sam Spilsbury

plugins-with-set-values doesn't exist

3426. By Sam Spilsbury

ClearPluginsWithSetKeys should operate on the current profile settings

3427. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3428. By Sam Spilsbury

s/free/g_object_unref

3429. By Sam Spilsbury

Test coverage for providing huge keys to TestTranslateKeyForGSettings

3430. By Sam Spilsbury

Cover the case where a decompose path is wrong

3431. By Sam Spilsbury

Always expect unknown types are invalid

3432. By Sam Spilsbury

Generic tests for readList*

3433. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3434. By Sam Spilsbury

Remove duplication

3435. By Sam Spilsbury

Test for bad allocation too

3436. By Sam Spilsbury

Test through the list value read dispatch too

3437. By Sam Spilsbury

Test what happens when we read invalid list types

3438. By Sam Spilsbury

Make sure the other profile sticks around too

3439. By Sam Spilsbury

Tests for UpdateCurrentProfileDefault

3440. By Sam Spilsbury

Handle the NULL and empty string cases, fix a crash

3441. By Sam Spilsbury

Added missing files, stubs etc

3442. By Sam Spilsbury

Bootstrapped wrapper tests

3443. By Sam Spilsbury

Added the mock gschema too

3444. By Sam Spilsbury

Don't add tests subdirectory

3445. By Sam Spilsbury

Wrote passing allocation interface for the gsettings wrapper

3446. By Sam Spilsbury

Don't lose memory

3447. By Sam Spilsbury

Failing test for GetGSettingsWrapper, added other boilerplate that was missing

3448. By Sam Spilsbury

Make that test pass

3449. By Sam Spilsbury

Refactored the testing classes so that we automatically get settings and
wrapper

3450. By Sam Spilsbury

Failing test TestGSettingsWrapperWithMemoryBackendEnvGoodAllocatorAutoInit.TestSetValueOnWrapper

3451. By Sam Spilsbury

Make that test pass

3452. By Sam Spilsbury

Failing test TestGSettingsWrapperWithMemoryBackendEnvGoodAllocatorAutoInit.TestGetValueOnWrapper

3453. By Sam Spilsbury

Make it pass

3454. By Sam Spilsbury

Failing test TestGSettingsWrapperWithMemoryBackendEnvGoodAllocatorAutoInit.TestResetKeyOnWrappe

3455. By Sam Spilsbury

Make the test pass

3456. By Sam Spilsbury

Failing test TestGSettingsWrapperWithMemoryBackendEnvGoodAllocatorAutoInit.TestListKeysOnWrapper
(updated API too)

3457. By Sam Spilsbury

Make that test pass

3458. By Sam Spilsbury

Fix weird unref behaviour in g_settings_reset

3459. By Sam Spilsbury

Move CCSREF_OBJ definition to ccs-object.h

3460. By Sam Spilsbury

Converted everything over to use the wrapper interface, some tests are disabled
as they don't compile, added failing tests to areas where we had to expand the
wrapper interface

3461. By Sam Spilsbury

Failing test TestGSettingsWrapperWithMemoryBackendEnvGoodAllocatorAutoInit.TestGetSchemaName

3462. By Sam Spilsbury

Make it pass

3463. By Sam Spilsbury

Segfaulting test TestGSettingsWrapperWithMemoryBackendEnvGoodAllocatorAutoInit, TestGetPath

3464. By Sam Spilsbury

Make it pass

3465. By Sam Spilsbury

Failing test TestGSettingsWrapperWithMemoryBackendEnvGoodAllocatorAutoInit.TestConnectToChangedSignal

3466. By Sam Spilsbury

Make it pass

3467. By Sam Spilsbury

Remove dbg message

3468. By Sam Spilsbury

Provide the right pointer

3469. By Sam Spilsbury

Not **

3470. By Sam Spilsbury

Added mocks for GSettingsWrapper and re-enable the find wrapper tests

3471. By Sam Spilsbury

Nuke CCSGSettingsWrapGSettings from orbit

3472. By Sam Spilsbury

Ref the objects before we give them to clients

3473. By Sam Spilsbury

Test fixture for CCSGSettingsTestFindSettingAndPluginToUpdateFromPath

3474. By Sam Spilsbury

Comprehensive test coverage for FindSettingAndPluginToUpdateFromPath
  and some cleanup, fix leaks etc

3475. By Sam Spilsbury

Rename and add a testcase for failing to find a key on the update function

3476. By Sam Spilsbury

Test cases for getVariantAtKey

3477. By Sam Spilsbury

Moved some code that should be common out

3478. By Sam Spilsbury

Some very messy looking tests for resetOptionToDefault and makeSettingPath

3479. By Sam Spilsbury

A very oversized test for ccsGSettingsBackendUnsetAllChangedPluginKeysInProfileDefault

3480. By Sam Spilsbury

Fix missing unexpected mock function call

3481. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3482. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3483. By Sam Spilsbury

Added testable AddProfile method to CCSGSettingsBackend, some tests failing

3484. By Sam Spilsbury

SetValue consumes the reference, no need to g_variant_unref

3485. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3486. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3487. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3488. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3489. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3490. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3491. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3492. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3493. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3494. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3495. By Sam Spilsbury

Initialize the string properly and reference it upon return. Fixes a leak

3496. By Sam Spilsbury

We aren't calling set_value with plugins, so we need to unref it

3497. By Sam Spilsbury

Update tests to reflect change in interface

3498. By Sam Spilsbury

Nuke duped function

3499. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3500. By Sam Spilsbury

Merged compiz.ccs_backend_conformance_test into compiz.split_gsettings_rw_funcs.

3501. By Sam Spilsbury

Fix some memory leaks in the gsettings tests

Unmerged revisions

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.

Subscribers

People subscribed via source and target branches