summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2023-07-28Add 'direct' keyword to descendants option to query direct children (ep1)Rudrangi Anupriya13-48/+61
-added 'direct' keyword also to Fetch Descendants Option along with 'all' and 'none' to Query direct child. -added unit tests to test direct keyword Issue-ID:CPS-1784 Change-Id: Iab7f59fbeebb03703626132c6d5c2afde0e5ab4d Signed-off-by: Rudrangi Anupriya <ra00745022@techmahindra.com>
2023-07-27Merge "Improve 32K limit tests"Toine Siebelink1-20/+56
2023-07-27Merge "Add write performance tests"Toine Siebelink1-0/+83
2023-07-27Update RTD (CPS-1515: Spike: Support Multiple CM-Handles for NCMP Get Operation)sourabh_sourabh8-151/+514
- Added information about data operation NCMP endpoint and kafka event details. - Re-structured "CPS-Events" and "Modeling" page. Issue-ID:CPS-1785 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech> Change-Id: I2b077ccd7ccd6144a8f9f2183d927f922075f532 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
2023-07-27Improve 32K limit testsdanielhanrahan1-20/+56
Some operations were previously limited to 32,768 parameters, such as getDataNodesForMultipleXpaths. After this limit was lifted, the tests only verified that database exceptions were not thrown. This commit improves the tests by verifying that the operations return or delete the expected data. - Create 33,000 data nodes - Verify that getDataNodesForMultipleXpaths returns 33,000 nodes - Verify than deleteDataNodes deletes 33,000 nodes Issue-ID: CPS-1811 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I7029ea0cf1d4e95c5ca814ca62c222fc5b9ddc7e
2023-07-27Merge "Allow getDataNodes to read whole lists(ep 1)"Sourabh Sourabh6-53/+102
2023-07-27Allow getDataNodes to read whole lists(ep 1)danielhanrahan6-53/+102
- getDataNodes can now retrieve list data nodes. Issue-ID: CPS-1696 Signed-off-by: arpitsingh <as00745003@techmahindra.com> Change-Id: I320a368d6cb73599d3f7c13fe9b8ab7d0cc69470
2023-07-27Merge "Subscription Creation: NCMP to Client CloudEvent transformation"Luke Gleeson36-670/+893
2023-07-27Merge "Performance test of reading non-existing datanodes"Toine Siebelink2-3/+19
2023-07-27Add write performance testsdanielhanrahan1-0/+83
- Add perf test for openroadm (linear time) - Add perf test for bookstore (exponential time!) Issue-ID: CPS-1811 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I9c1772a9e9684707f2dbb32b2c361ec248fb1c60
2023-07-26Performance test of reading non-existing datanodesdanielhanrahan2-3/+19
Issue-ID: CPS-1811 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I183129bb5b0a2d620b87e9b36f3113fe8e169798
2023-07-26Performance test of deleting non-existing datanodesdanielhanrahan1-2/+18
Issue-ID: CPS-1811 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: Ifae635f45d8ec1990452ade958253972fde68415
2023-07-26Subscription Creation: NCMP to Client CloudEvent transformationhalil.cakal36-670/+893
- Delete legacy avc subscription event and event outcome schemas - Change subscription response and outcome sample json file contents - Change ncmp event response code to support avc subscriptions - Add mapper that maps cloud event to subscription event response - Add mapper that maps subscription event outcome to cloud event - Change subscription event response consumer to consume CloudEvents - Change time out task to support response event instead client id and name - Change subscription event response mapper to support Cloud Event - Change subscription outcome mapper to group subscription responses as per details and status - Change subscription status to have fromString functionality - Change all unit tests to support new functionalities - Add cps exceptions for cloud event and outcome type - Add details field in yang model - Change data node helper to supoort details field - Consolidate final subscription response codes - Fix code smells reported by SonarLint Issue-ID: CPS-1739 Change-Id: I5eadeb8ef40d3d7befb762b5a8d2139fe3c85d7e Signed-off-by: halil.cakal <halil.cakal@est.tech>
2023-07-26Some performance tests are skipped due to filenamedanielhanrahan2-2/+2
CPS POM is setup so that only files ending in 'Spec' or 'Test' are run as tests, and files ending in 'PerfTest' will only run in the 'include-performance' profile. The 32K limit tests are currently being skipped always, as they do not end in 'Spec', 'Test', or 'PerfTest'. This commit renames them to PerfTest. Issue-ID: CPS-1811 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I75a4ae92edf324213f734503c23dedb2b31fd007
2023-07-25Update dmi-stub details in test-deregistration scriptdanielhanrahan1-2/+2
dmi-plugin-stub was renamed to dmi-plugin-demo-and-csit-stub, and port changed to 8092. Issue-ID: CPS-1560 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I3005087ace35aa131df720ed04c642d2d72f1255
2023-07-24Fix code coverage reportingToineSiebelink7-37/+35
- Fixed (partly duplicated) exclusion list: all exlusings now in PARENT pom only (this means module reports and aggregate report use same exclusion - Set common minimum to 100% (3 modules now achieve this :-) ) - Added./clean cm-parsre test to get too 10% in that module too - Increased module specif minima to actual coverge today Issue-ID: CPS-475 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: Ic155f963bfd472e11481fcab6ee8ca227903d9ae
2023-07-21Prepare for next CPS-NCMP releaseegernug24-24/+53
Issue-ID: CPS-1797 Signed-off-by: egernug <gerard.nugent@est.tech> Change-Id: Ib2b840b6b37131f16afd879720658d2e45387d6a
2023-07-21Container for release 3.3.5egernug1-0/+8
Issue-ID: CPS-1797 Signed-off-by: egernug <gerard.nugent@est.tech> Change-Id: Id8bcefe615947a7ec160275bf7a3326e80a0f2f3
2023-07-21Maven stage yaml for 3.3.5egernug1-0/+4
Issue-ID: CPS-1797 Signed-off-by: egernug <gerard.nugent@est.tech> Change-Id: I99232dde07a4ad92fd124265214bc760a032de12
2023-07-21Increase timeout for PollingConditionsegernug1-2/+2
Test failing due to timing issues. Increasing timeout to rectify. Issue-ID: CPS-475 Signed-off-by: egernug <gerard.nugent@est.tech> Change-Id: I89b512809922470f10940fcdd739f057b8f9c80e
2023-07-20Merge "Refactor ncmp request handlers (fix async issue)"Sourabh Sourabh9-245/+371
2023-07-20Merge "Apostrophe handling in CpsPathParser"Toine Siebelink15-34/+143
2023-07-20Refactor ncmp request handlers (fix async issue)ToineSiebelink9-245/+371
- simplified request handlers (sub)classes (no more need for default interface) - fix issue with async execution of data operation requests (wasn't really async) - removed redundant (unreachable) check in production code - Improved code coverage (branches) ncmp request handlers added UNIT test - removed MVC test scenarios now covered by appropriate unit level tests - applied Spock Polling Condition for verifying async call Issue-ID: CPS-475 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: Ibe601c709de65080fa8898f2419fdbd92c5ba27d
2023-07-20Merge "Persisting a list element to a parent list (ep2)"Luke Gleeson8-4/+150
2023-07-20Apostrophe handling in CpsPathParserdanielhanrahan15-34/+143
Apostrophe is not currently handled correctly, and having apostrophe in the xpath will lead to various errors. For example, normalizing this xpath works: /path[@name="I'm quoted"] -> /path[@name='I\'m quoted'] However the resulting xpath will throw a PathParsingException if parsed! (Thus path normalization is not idempotent.) - Use '' for escaping apostrophe in single quoted leaf value, to comply with XPath standard (and use "" for escaping in "). - Use Liquibase to make existing data comply with new rules. - Leaf values in data leaves are now unescaped, e.g. "I'm quoted" - Quoting is now consistent for leaf/text/contains conditions. Issue-ID: CPS-1769 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: Iafc287f738254d7f99706c6bc548091c0ecd5aa0
2023-07-20Merge "Allow duplicate leaf names in Cps Path leaf condition"Toine Siebelink9-238/+201
2023-07-19Prepare for next CPS-NCMP releaseegernug25-26/+53
Issue-ID: CPS-1791 Signed-off-by: egernug <gerard.nugent@est.tech> Change-Id: Ide0fcdfa41656e25395ac8478da1bb489fd8663e
2023-07-19Container yaml for releaseegernug1-0/+8
Issue-ID: CPS-1793 Signed-off-by: egernug <gerard.nugent@est.tech> Change-Id: If7ac05d814da42b12c66704afcb153f4af72f3e5
2023-07-18Maven stage yamlegernug1-0/+4
Issue-ID: CPS-1793 Signed-off-by: egernug <gerard.nugent@est.tech> Change-Id: Ie553550137038e4086f049beca76506df48e2a21
2023-07-18Update release notes for release 3.3.4egernug1-0/+1
Issue-ID: CPS-1792 Signed-off-by: egernug <gerard.nugent@est.tech> Change-Id: I3f278d3e89dbc1a757f603ac312686d83612eec8
2023-07-18Persisting a list element to a parent list (ep2)Rudrangi Anupriya8-4/+150
Post List Element does not allow for create List Element, only appends onto existing node as children -Add a check in saveListElements to see if the parent xpath is a root path ("/").If root node store list element as top node. Else add passed list element to parent xpath node. -Add test for scenario for above -Add test scenario Saving list element data fragment under Root node -Add Integration Tests Add and Delete top-level list (element) data nodes with root node -Update bookstore model with TopLevelList datanode Issue-ID: CPS-1586 Change-Id: Iaa7f59fbeebb03703626132c6d5c2afde0e7ab4b Signed-off-by: Rudrangi Anupriya <ra00745022@techmahindra.com>
2023-07-17Allow duplicate leaf names in Cps Path leaf conditiondanielhanrahan9-238/+201
Presently, a query using the same leaf name twice will fail: //books[@price > 10 and @price < 20] It is caused by storing data leaves in a Map. This is fixed by storing data leaves in a List<DataLeaf>. Issue-ID: CPS-1779 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: Ie6990ea5e622cf37e986b720a0a07fb69ce4f03b
2023-07-17Improved code coverage for CpsDataServiceImplToineSiebelink3-46/+38
- Added (extended) test to cover missed scenarios - Removed unnecesarry null check from Production code - Improved error messages in production code - Removed duplicate test - Cleaned up existign test somewhat (labels and aligment) Issue-ID: CPS-475 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: I9761ad6d4777a6bcfee4cbe1b876dd39fa218fc8
2023-07-14Merge "Improved code coverage for NetworkCmProxyDataServiceImpl"Luke Gleeson3-41/+37
2023-07-14Merge "Upgrade to Java 17"Sourabh Sourabh4-6/+13
2023-07-13Improved code coverage for NetworkCmProxyDataServiceImplToineSiebelink3-41/+37
- Production code had catch block that is no longer needed - Cleaned up some test somewhat (close to the new tests) Issue-ID: CPS-475 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: Iaa409e752a496bf088a58ccd422fe3d850442b59
2023-07-13[CSIT] Testing DataOperations Request with positive Scenarioraviteja.karumuri5-2/+96
# Sending CMHandle with ready state to the NCMP then it forwarded to DMI to complete the read operation once done with success it produces a message to the client topic' Issue-ID: CPS-1560 Signed-off-by: raviteja.karumuri <raviteja.karumuri@est.tech> Change-Id: I0af68fdf97bf0a5063361ae08475dee38dbe7b8e
2023-07-13Introduced a dmi rest demo csit stubsourabh_sourabh23-50/+694
- Introduced a new response code 0 for data operational success response. - Created a new dmi plugin rest stub for demo and performance testing. - Removed dmi plugin stub of wiremocked. - Updated parent pom to add newely created demo stub. - updated docker compose to add neww demo stub with profile for CSIT, demo and performance testing. - Removed target id list from unsupported operation/datastore from REST response. Issue-ID: CPS-1560 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech> Change-Id: Ie8198366df820e7d4b8b6e8a85ff9cdb0fce7435 Signed-off-by: sourabh_sourabh <sourabh.sourabh@est.tech>
2023-07-13Fix handling of special characters in prefix namesdanielhanrahan4-18/+20
This fixes issues with special characters like square brackets - Make PrefixResolver use CpsPathParser instead of regex - Make DataMapUtils use CpsPathParser instead of String parsing Issue-ID: CPS-1758 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I6dd66eee398a46a69c0229059195f5096ab6fdec
2023-07-13Merge "Improved code coverage for record filter strategies"Sourabh Sourabh1-0/+41
2023-07-13Upgrade to Java 17egernug4-6/+13
Upgrade CPS component to Java 17 Issue-ID:CPS-1767 Signed-off-by: egernug <gerard.nugent@est.tech> Change-Id: Ide1e75205851e025371b4822ee161f71f04a6af1
2023-07-12Improved code coverage for record filter strategiesToineSiebelink1-0/+41
(the semi-integration test dont cover all scenarios) Issue-ID: CPS-475 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: I717946cddec315a1e69ca8d104b07f91691c1b63
2023-07-12Improved code coverage for Data Sync WatchdogToineSiebelink1-22/+32
- also cleaned up existing test (c&p errors in descriptions) Issue-ID: CPS-475 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: I20ed98faf0e05e2eb3b2aeaa92bed7dc73cbb358
2023-07-12Improved code coverage (branches) for sync watchdogToineSiebelink2-13/+50
- had to refactor prod. code slightly to make it testable - added a batch size check although the task is a simple iteration there is overhead in creating a paralel task Issue-ID: CPS-475 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: I0db7ba3a15f4edc469a5af1ddc6fd76922b16809
2023-07-11Combine alreadyDefinedException classesdanielhanrahan12-108/+64
Issue-ID: CPS-1774 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I52ff9074a9f8188e8635a811b0d2713a97cb4b10
2023-07-10NCMP fails to start if /subscription-registry already existsdanielhanrahan2-2/+4
cpsDataService only throws AlreadyDefinedException, not AlreadyDefinedExceptionBatch. This causes NcmpStartupException to be thrown during startup, if /subscription-registry exists. Issue-ID: CPS-1783 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I5667d891f855ef47ca2475891f9216be102932ed
2023-07-10Handle special characters in CpsPath queries (CPS-1760 #2)danielhanrahan5-49/+48
This fixes issues with special characters for CPS-500, CPS-1756, CPS-1758, and CPS-1760. It also improves query performance. - use SQL LIKE instead of regex in Cps Path queries Issue-ID: CPS-1763 Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech> Change-Id: I5c179882bfba71d3b009c60059e9073f46227e7d
2023-07-10Merge "Subscription Creation: NCMP to DMI CloudEvent transformation"Priyank Maheshwari14-144/+473
2023-07-10Merge "Escape SQL LIKE wildcards in queries (CPS-1760 #1)"Toine Siebelink5-5/+86
2023-07-07Subscription Creation: NCMP to DMI CloudEvent transformationhalil.cakal14-144/+473
- Add mapper to convert client event into ncmp event - Add sample json object of ncmp version - Change subscription event consumer to consume CloudEvents - Change subscription event forwarder to publish CloudEvents - Change test producer config to support CloudEvents - Change sample subscription event json to comply with new schema - Add more test for missing branches - Change packages of the mappers into relevant directory Issue-ID: CPS-1737 Change-Id: I8c9e6e7bf713a8fb530a0586dfb2bce796a462f5 Signed-off-by: halil.cakal <halil.cakal@est.tech>