isNUllKey check for PfReferenceTimestamp key is always returning false as the parent class is
validating the child object in its method which has additional parameters (timestamp).
Fixing the issue by validating only the fields of parent class.
Issue-ID: POLICY-3069
Signed-off-by: zrrmmua <ramesh.murugan.iyer@est.tech>
Change-Id: Ie22d09552c9d0cedb7535bda359df0d70e1ebe77
/*-
* ============LICENSE_START=======================================================
/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
+ * Copyright (C) 2019,2021 Nordix Foundation.
* Modifications Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* Modifications Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
@Override
public boolean isNullKey() {
@Override
public boolean isNullKey() {
- return this.equals(PfReferenceKey.getNullKey());
+ return (PfReferenceKey.NULL_KEY_NAME.equals(this.getParentKeyName()) && PfReferenceKey.NULL_KEY_VERSION
+ .equals(this.getParentKeyVersion()) && PfReferenceKey.NULL_KEY_NAME.equals(this.getParentLocalName())
+ && PfReferenceKey.NULL_KEY_NAME.equals(this.getLocalName()));
assertThatThrownBy(() -> new PfReferenceTimestampKey(new PfConceptKey(), null, null))
.hasMessage("parameter \"localName\" is null");
assertThatThrownBy(() -> new PfReferenceTimestampKey(new PfConceptKey(), null, null))
.hasMessage("parameter \"localName\" is null");
+ assertTrue(new PfReferenceTimestampKey().isNullKey());
+ assertFalse(new PfReferenceTimestampKey("ParentKeyName", VERSION001, PfKey.NULL_KEY_NAME,
+ LOCAL_NAME, Instant.EPOCH).isNullKey());
+
String id = "NULL:0.0.0:NULL:NULL:" + timeStamp;
assertThat(new PfReferenceTimestampKey(id).getTimeStamp().getTime()).isEqualTo(timeStamp);
String id = "NULL:0.0.0:NULL:NULL:" + timeStamp;
assertThat(new PfReferenceTimestampKey(id).getTimeStamp().getTime()).isEqualTo(timeStamp);