package com.googlecode.gwt.test.jso; import com.google.gwt.core.client.JavaScriptObject; import com.google.gwt.core.client.JsArrayBoolean; import com.googlecode.gwt.test.GwtTestTest; import org.junit.Before; import org.junit.Test; import static org.assertj.core.api.Assertions.assertThat; public class JsArrayBooleanTest extends GwtTestTest { private JsArrayBoolean jsArrayBoolean; @Before public void beforeJsArrayIntegerTest() { // Given jsArrayBoolean = JavaScriptObject.createArray().cast(); assertThat(jsArrayBoolean.length()).isEqualTo(0); // When jsArrayBoolean.set(4, true); // Then assertThat(jsArrayBoolean.length()).isEqualTo(5); assertThat(jsArrayBoolean.get(3)).isFalse(); assertThat(jsArrayBoolean.get(4)).isTrue(); } @Test public void join() { // When String join = jsArrayBoolean.join(); // Then assertThat(join).isEqualTo(",,,,true"); } @Test public void join_AfterResize() { // Given jsArrayBoolean.setLength(3); // When String join = jsArrayBoolean.join(); // Then assertThat(jsArrayBoolean.length()).isEqualTo(3); assertThat(join).isEqualTo(",,"); } @Test public void push() { // When jsArrayBoolean.push(false); // Then assertThat(jsArrayBoolean.length()).isEqualTo(6); assertThat(jsArrayBoolean.join()).isEqualTo(",,,,true,false"); assertThat(jsArrayBoolean.get(jsArrayBoolean.length() - 1)).isFalse(); } @Test public void shift() { // Given jsArrayBoolean.set(0, true); // When boolean shift = jsArrayBoolean.shift(); // Then assertThat(shift).isTrue(); assertThat(jsArrayBoolean.length()).isEqualTo(4); assertThat(jsArrayBoolean.join()).isEqualTo(",,,true"); } @Test public void unboundedGet_Returns0() { // When boolean unbounded = jsArrayBoolean.get(100); // Then assertThat(unbounded).isFalse(); } @Test public void unshift() { // When jsArrayBoolean.unshift(true); // Then assertThat(jsArrayBoolean.length()).isEqualTo(6); assertThat(jsArrayBoolean.join()).isEqualTo("true,,,,,true"); } }