blob: db29a56a209b7b0277e02dc4b797c5ed8f129277 [file] [log] [blame]
/**
* Copyright (c) 2019 itemis AG (http://www.itemis.eu) and others.
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0.
*
* SPDX-License-Identifier: EPL-2.0
*/
package org.eclipse.xtext.xbase.tests.lib;
import java.util.Objects;
import org.eclipse.xtext.xbase.lib.ArrayExtensions;
import org.eclipse.xtext.xbase.lib.ObjectExtensions;
import org.eclipse.xtext.xbase.lib.Procedures.Procedure1;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
/**
* @author Mathias Rieder - Initial contribution and API
*/
@SuppressWarnings("all")
public class ArrayExtensionsByteTest {
private byte[] data;
private final byte _10 = ((byte) 10);
private final byte _20 = ((byte) 20);
private final byte _30 = ((byte) 30);
@Before
public void init() {
this.data = this.createData();
}
private byte[] createData() {
final byte[] array = new byte[3];
array[0] = this._10;
array[1] = this._20;
array[2] = this._30;
return array;
}
@Test
public void testSetGet__byte() {
Assert.assertEquals(this._10, this.data[0]);
Assert.assertEquals(this._20, this.data[1]);
Assert.assertEquals(this._30, this.data[2]);
}
@Test
public void testClone__byte() {
final byte[] clonedData = this.data.clone();
Assert.assertEquals(this._10, clonedData[0]);
Assert.assertEquals(this._20, clonedData[1]);
Assert.assertEquals(this._30, clonedData[2]);
}
@Test
public void testLength__byte() {
Assert.assertEquals(3, this.data.length);
}
@Test
public void testHashCode__byte() {
Assert.assertEquals(Objects.hashCode(this.data), this.data.hashCode());
}
@Test
public void testEquals__byte() {
Assert.assertTrue(this.data.equals(this.data));
Assert.assertFalse(this.data.equals(this.createData()));
Assert.assertFalse(this.data.equals(new Object[3]));
Assert.assertFalse(this.data.equals(null));
byte[] _createData = this.createData();
final Procedure1<byte[]> _function = (byte[] it) -> {
it[1] = ((byte) 0);
};
final byte[] newData = ObjectExtensions.<byte[]>operator_doubleArrow(_createData, _function);
Assert.assertFalse(this.data.equals(newData));
}
@Test
public void testContains__byte() {
Assert.assertTrue(ArrayExtensions.contains(this.data, ((byte) 10)));
Assert.assertTrue(ArrayExtensions.contains(this.data, ((byte) 20)));
Assert.assertTrue(ArrayExtensions.contains(this.data, ((byte) 30)));
Assert.assertFalse(ArrayExtensions.contains(this.data, ((byte) 40)));
}
}