Skip to content

Conversation

@alexandernorth
Copy link
Contributor

This PR addresses the following:

  • adds a default value for syncing to avoid panics if the value is set <= 0
  • fixes case where a NETCONF replace action on a leaflist would result in dropping non-key elements from the parent and also fixes the ordering of the elements
  • incoming leaflist values were previously treated as strings causing equality checks to fail and commits to be sent to the device, leaflist values are now converted to the correct type in the tree

@alexandernorth
Copy link
Contributor Author

go test -cover ./...

        github.com/sdcio/data-server            coverage: 0.0% of statements
        github.com/sdcio/data-server/client             coverage: 0.0% of statements
        github.com/sdcio/data-server/client/cmd         coverage: 0.0% of statements
        github.com/sdcio/data-server/mocks/mockcacheclient              coverage: 0.0% of statements
        github.com/sdcio/data-server/mocks/mocknetconf          coverage: 0.0% of statements
        github.com/sdcio/data-server/mocks/mockschema           coverage: 0.0% of statements
        github.com/sdcio/data-server/mocks/mockschemaclientbound                coverage: 0.0% of statements
        github.com/sdcio/data-server/mocks/mocktarget           coverage: 0.0% of statements
        github.com/sdcio/data-server/mocks/mocktreeentry                coverage: 0.0% of statements
        github.com/sdcio/data-server/pkg/cache          coverage: 0.0% of statements
        github.com/sdcio/data-server/pkg/config         coverage: 0.0% of statements
ok      github.com/sdcio/data-server/pkg/datastore      (cached)        coverage: 0.0% of statements
        github.com/sdcio/data-server/pkg/datastore/clients/schema               coverage: 0.0% of statements
ok      github.com/sdcio/data-server/pkg/datastore/target       (cached)        coverage: 7.3% of statements
ok      github.com/sdcio/data-server/pkg/datastore/target/netconf       (cached)        coverage: 67.4% of statements
        github.com/sdcio/data-server/pkg/datastore/target/netconf/driver/scrapligo              coverage: 0.0% of statements
        github.com/sdcio/data-server/pkg/datastore/target/netconf/types         coverage: 0.0% of statements
        github.com/sdcio/data-server/pkg/datastore/types                coverage: 0.0% of statements
?       github.com/sdcio/data-server/pkg/dslog  [no test files]
        github.com/sdcio/data-server/pkg/schema         coverage: 0.0% of statements
        github.com/sdcio/data-server/pkg/server         coverage: 0.0% of statements
ok      github.com/sdcio/data-server/pkg/tree   (cached)        coverage: 80.0% of statements
?       github.com/sdcio/data-server/pkg/tree/importer  [no test files]
ok      github.com/sdcio/data-server/pkg/tree/importer/json     (cached)        coverage: 46.2% of statements
ok      github.com/sdcio/data-server/pkg/tree/importer/proto    (cached)        coverage: 85.7% of statements
ok      github.com/sdcio/data-server/pkg/tree/importer/xml      (cached)        coverage: 93.3% of statements
        github.com/sdcio/data-server/pkg/tree/tree_persist              coverage: 0.0% of statements
        github.com/sdcio/data-server/pkg/tree/types             coverage: 0.0% of statements
ok      github.com/sdcio/data-server/pkg/utils  0.419s  coverage: 12.6% of statements
        github.com/sdcio/data-server/pkg/utils/testhelper               coverage: 0.0% of statements
        github.com/sdcio/data-server/tests/sdcioygot            coverage: 0.0% of statements

@codecov
Copy link

codecov bot commented Jul 22, 2025

Codecov Report

Attention: Patch coverage is 45.33333% with 41 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
pkg/config/datastore.go 0.00% 14 Missing ⚠️
pkg/tree/xml.go 45.83% 12 Missing and 1 partial ⚠️
...kg/datastore/target/netconf/xml2SchemapbAdapter.go 53.84% 9 Missing and 3 partials ⚠️
pkg/datastore/transaction_rpc.go 0.00% 1 Missing ⚠️
pkg/utils/value.go 90.00% 0 Missing and 1 partial ⚠️

📢 Thoughts on this report? Let us know!

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@alexandernorth
Copy link
Contributor Author

go test -cover ./...

        github.com/sdcio/data-server            coverage: 0.0% of statements
        github.com/sdcio/data-server/client             coverage: 0.0% of statements
        github.com/sdcio/data-server/client/cmd         coverage: 0.0% of statements
        github.com/sdcio/data-server/mocks/mockcacheclient              coverage: 0.0% of statements
        github.com/sdcio/data-server/mocks/mocknetconf          coverage: 0.0% of statements
        github.com/sdcio/data-server/mocks/mockschema           coverage: 0.0% of statements
        github.com/sdcio/data-server/mocks/mockschemaclientbound                coverage: 0.0% of statements
        github.com/sdcio/data-server/mocks/mocktarget           coverage: 0.0% of statements
        github.com/sdcio/data-server/mocks/mocktreeentry                coverage: 0.0% of statements
        github.com/sdcio/data-server/pkg/cache          coverage: 0.0% of statements
        github.com/sdcio/data-server/pkg/config         coverage: 0.0% of statements
ok      github.com/sdcio/data-server/pkg/datastore      (cached)        coverage: 0.0% of statements
        github.com/sdcio/data-server/pkg/datastore/clients/schema               coverage: 0.0% of statements
ok      github.com/sdcio/data-server/pkg/datastore/target       (cached)        coverage: 7.3% of statements
ok      github.com/sdcio/data-server/pkg/datastore/target/netconf       0.721s  coverage: 67.8% of statements
        github.com/sdcio/data-server/pkg/datastore/target/netconf/driver/scrapligo              coverage: 0.0% of statements
        github.com/sdcio/data-server/pkg/datastore/target/netconf/types         coverage: 0.0% of statements
        github.com/sdcio/data-server/pkg/datastore/types                coverage: 0.0% of statements
?       github.com/sdcio/data-server/pkg/dslog  [no test files]
        github.com/sdcio/data-server/pkg/schema         coverage: 0.0% of statements
        github.com/sdcio/data-server/pkg/server         coverage: 0.0% of statements
ok      github.com/sdcio/data-server/pkg/tree   (cached)        coverage: 80.0% of statements
?       github.com/sdcio/data-server/pkg/tree/importer  [no test files]
ok      github.com/sdcio/data-server/pkg/tree/importer/json     (cached)        coverage: 46.2% of statements
ok      github.com/sdcio/data-server/pkg/tree/importer/proto    (cached)        coverage: 85.7% of statements
ok      github.com/sdcio/data-server/pkg/tree/importer/xml      (cached)        coverage: 93.3% of statements
        github.com/sdcio/data-server/pkg/tree/tree_persist              coverage: 0.0% of statements
        github.com/sdcio/data-server/pkg/tree/types             coverage: 0.0% of statements
ok      github.com/sdcio/data-server/pkg/utils  (cached)        coverage: 18.8% of statements
        github.com/sdcio/data-server/pkg/utils/testhelper               coverage: 0.0% of statements
        github.com/sdcio/data-server/tests/sdcioygot            coverage: 0.0% of statements

Copy link
Collaborator

@steiler steiler left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

Copy link
Contributor

@hansthienpondt hansthienpondt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@alexandernorth alexandernorth merged commit eeb6b0b into main Jul 28, 2025
5 checks passed
@alexandernorth alexandernorth deleted the fix/netconf-replace-key-ordering branch July 28, 2025 08:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants