1 // Copyright 2023 Google LLC 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 // 15 //////////////////////////////////////////////////////////////////////////////// 16 17 package com.google.crypto.tink.aead; 18 19 import static com.google.common.truth.Truth.assertThat; 20 21 import org.junit.Test; 22 import org.junit.runner.RunWith; 23 import org.junit.runners.JUnit4; 24 25 @RunWith(JUnit4.class) 26 public final class LegacyKmsAeadParametersTest { 27 @Test testCreateValue()28 public void testCreateValue() throws Exception { 29 LegacyKmsAeadParameters parameters = LegacyKmsAeadParameters.create("someArbitrarykeyUri223"); 30 assertThat(parameters.keyUri()).isEqualTo("someArbitrarykeyUri223"); 31 assertThat(parameters.variant()).isEqualTo(LegacyKmsAeadParameters.Variant.NO_PREFIX); 32 assertThat(parameters.hasIdRequirement()).isFalse(); 33 } 34 35 @Test testCreateNoPrefixValue()36 public void testCreateNoPrefixValue() throws Exception { 37 LegacyKmsAeadParameters parametersNoPrefix = 38 LegacyKmsAeadParameters.create("keyUri", LegacyKmsAeadParameters.Variant.NO_PREFIX); 39 assertThat(parametersNoPrefix.keyUri()).isEqualTo("keyUri"); 40 assertThat(parametersNoPrefix.variant()).isEqualTo(LegacyKmsAeadParameters.Variant.NO_PREFIX); 41 assertThat(parametersNoPrefix.hasIdRequirement()).isFalse(); 42 } 43 44 @Test testCreateTinkValue()45 public void testCreateTinkValue() throws Exception { 46 LegacyKmsAeadParameters parametersTink = 47 LegacyKmsAeadParameters.create("keyUri2", LegacyKmsAeadParameters.Variant.TINK); 48 assertThat(parametersTink.keyUri()).isEqualTo("keyUri2"); 49 assertThat(parametersTink.variant()).isEqualTo(LegacyKmsAeadParameters.Variant.TINK); 50 assertThat(parametersTink.hasIdRequirement()).isTrue(); 51 } 52 53 @Test testEqualsAndHashCode()54 public void testEqualsAndHashCode() throws Exception { 55 LegacyKmsAeadParameters parameters1 = LegacyKmsAeadParameters.create("keyUri1"); 56 LegacyKmsAeadParameters parameters1Copy = LegacyKmsAeadParameters.create("keyUri1"); 57 LegacyKmsAeadParameters parameters2 = LegacyKmsAeadParameters.create("keyUri2"); 58 LegacyKmsAeadParameters parameters1Tink = 59 LegacyKmsAeadParameters.create("keyUri1", LegacyKmsAeadParameters.Variant.TINK); 60 61 assertThat(parameters1).isEqualTo(parameters1Copy); 62 assertThat(parameters1).isNotEqualTo(parameters2); 63 assertThat(parameters1).isNotEqualTo(parameters1Tink); 64 65 assertThat(parameters1.hashCode()).isEqualTo(parameters1Copy.hashCode()); 66 assertThat(parameters1.hashCode()).isNotEqualTo(parameters2.hashCode()); 67 assertThat(parameters1.hashCode()).isNotEqualTo(parameters1Tink.hashCode()); 68 } 69 } 70