//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test void testPutIfAbsent() internal virtual void TestPutIfAbsent() { PrimitiveLongIntKeyValueArray map = new PrimitiveLongIntKeyValueArray(); assertThat(map.PutIfAbsent(1, 100), equalTo(true)); assertThat(map.PutIfAbsent(2, 200), equalTo(true)); assertThat(map.PutIfAbsent(3, 300), equalTo(true)); assertThat(map.Size(), equalTo(3)); assertThat(map.Keys(), equalTo(new long[] { 1, 2, 3 })); assertThat(map.PutIfAbsent(2, 2000), equalTo(false)); assertThat(map.PutIfAbsent(3, 3000), equalTo(false)); assertThat(map.PutIfAbsent(4, 4000), equalTo(true)); assertThat(map.Size(), equalTo(4)); assertThat(map.Keys(), equalTo(new long[] { 1, 2, 3, 4 })); assertThat(map.GetOrDefault(2, DEFAULT_VALUE), equalTo(200)); assertThat(map.GetOrDefault(3, DEFAULT_VALUE), equalTo(300)); assertThat(map.GetOrDefault(4, DEFAULT_VALUE), equalTo(4000)); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test void testKeys() internal virtual void TestKeys() { PrimitiveLongIntKeyValueArray map = new PrimitiveLongIntKeyValueArray(); map.PutIfAbsent(1, 100); map.PutIfAbsent(2, 200); map.PutIfAbsent(3, 300); map.PutIfAbsent(2, 200); map.PutIfAbsent(3, 300); map.PutIfAbsent(8, 800); map.PutIfAbsent(7, 700); map.PutIfAbsent(6, 600); map.PutIfAbsent(5, 500); assertThat(map.Size(), equalTo(7)); assertThat(map.Keys(), equalTo(new long[] { 1, 2, 3, 8, 7, 6, 5 })); }