new validation impl., use bindings in create offer controller, profiler added, use caching for FXML loader

This commit is contained in:
Manfred Karrer 2014-08-10 23:59:18 +02:00
parent 83203554e9
commit 1bc0dbfa31
45 changed files with 1084 additions and 414 deletions

View file

@ -2,7 +2,8 @@ package io.bitsquare;
import io.bitsquare.btc.BtcValidatorTest;
import io.bitsquare.gui.util.BitSquareConverterTest;
import io.bitsquare.gui.util.BitSquareValidatorTest;
import io.bitsquare.gui.util.BitSquareNumberValidatorTest;
import io.bitsquare.gui.util.FiatValidatorTest;
import io.bitsquare.msg.P2PNodeTest;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
@ -11,8 +12,10 @@ import org.junit.runners.Suite;
@Suite.SuiteClasses({
BtcValidatorTest.class,
BitSquareConverterTest.class,
BitSquareValidatorTest.class,
P2PNodeTest.class
BitSquareNumberValidatorTest.class,
P2PNodeTest.class,
FiatValidatorTest.class,
BtcValidatorTest.class
})
public class BitSquareTestSuite

View file

@ -11,19 +11,19 @@ public class BitSquareConverterTest
public void testStringToDouble()
{
assertEquals(1, BitSquareConverter.stringToDouble("1"), 0);
assertEquals(0.1, BitSquareConverter.stringToDouble("0.1"), 0);
assertEquals(0.1, BitSquareConverter.stringToDouble("0,1"), 0);
assertEquals(1, BitSquareConverter.stringToDouble("1.0"), 0);
assertEquals(1, BitSquareConverter.stringToDouble("1,0"), 0);
assertEquals(1, BitSquareFormatter.parseToDouble("1"), 0);
assertEquals(0.1, BitSquareFormatter.parseToDouble("0.1"), 0);
assertEquals(0.1, BitSquareFormatter.parseToDouble("0,1"), 0);
assertEquals(1, BitSquareFormatter.parseToDouble("1.0"), 0);
assertEquals(1, BitSquareFormatter.parseToDouble("1,0"), 0);
assertEquals(0, BitSquareConverter.stringToDouble("1,000.2"), 0);
assertEquals(0, BitSquareConverter.stringToDouble("1,000.2"), 0);
assertEquals(0, BitSquareConverter.stringToDouble(null), 0);
assertEquals(0, BitSquareConverter.stringToDouble(""), 0);
assertEquals(0, BitSquareConverter.stringToDouble(""), 0);
assertEquals(0, BitSquareConverter.stringToDouble("."), 0);
assertEquals(0, BitSquareConverter.stringToDouble(","), 0);
assertEquals(0, BitSquareConverter.stringToDouble("a"), 0);
assertEquals(0, BitSquareFormatter.parseToDouble("1,000.2"), 0);
assertEquals(0, BitSquareFormatter.parseToDouble("1,000.2"), 0);
assertEquals(0, BitSquareFormatter.parseToDouble(null), 0);
assertEquals(0, BitSquareFormatter.parseToDouble(""), 0);
assertEquals(0, BitSquareFormatter.parseToDouble(""), 0);
assertEquals(0, BitSquareFormatter.parseToDouble("."), 0);
assertEquals(0, BitSquareFormatter.parseToDouble(","), 0);
assertEquals(0, BitSquareFormatter.parseToDouble("a"), 0);
}
}

View file

@ -5,7 +5,7 @@ import org.junit.Test;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
public class BitSquareValidatorTest
public class BitSquareNumberValidatorTest
{
@Test
public void testValidateStringAsDouble()

View file

@ -0,0 +1,35 @@
package io.bitsquare.gui.util;
import com.google.bitcoin.core.Coin;
import com.google.bitcoin.core.NetworkParameters;
import org.junit.Test;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
public class BtcValidatorTest
{
@Test
public void testValidate()
{
BtcValidator validator = new BtcValidator();
NumberValidator.ValidationResult validationResult;
// invalid cases
validationResult = validator.validate("0.000000011");// minBtc is "0.00000001"
assertFalse(validationResult.isValid);
validationResult = validator.validate("21000001"); //maxBtc is "21000000"
assertFalse(validationResult.isValid);
// valid cases
String minBtc = Coin.SATOSHI.toPlainString(); // "0.00000001"
validationResult = validator.validate(minBtc);
assertTrue(validationResult.isValid);
String maxBtc = Coin.valueOf(NetworkParameters.MAX_MONEY.longValue()).toPlainString(); //"21000000"
validationResult = validator.validate(maxBtc);
assertTrue(validationResult.isValid);
}
}

View file

@ -0,0 +1,88 @@
package io.bitsquare.gui.util;
import org.junit.Test;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
public class FiatValidatorTest
{
@Test
public void testValidate()
{
FiatValidator validator = new FiatValidator();
NumberValidator.ValidationResult validationResult;
// invalid cases
validationResult = validator.validate(null);
assertFalse(validationResult.isValid);
validationResult = validator.validate("");
assertFalse(validationResult.isValid);
validationResult = validator.validate("0");
assertFalse(validationResult.isValid);
validationResult = validator.validate("-1");
assertFalse(validationResult.isValid);
validationResult = validator.validate("a");
assertFalse(validationResult.isValid);
validationResult = validator.validate("2a");
assertFalse(validationResult.isValid);
validationResult = validator.validate("a2");
assertFalse(validationResult.isValid);
// at the moment we dont support thousand separators, can be added later
validationResult = validator.validate("1,100.1");
assertFalse(validationResult.isValid);
// at the moment we dont support thousand separators, can be added later
validationResult = validator.validate("1.100,1");
assertFalse(validationResult.isValid);
validationResult = validator.validate("1.100.1");
assertFalse(validationResult.isValid);
validationResult = validator.validate("1,100,1");
assertFalse(validationResult.isValid);
validationResult = validator.validate(String.valueOf(FiatValidator.MIN_FIAT_VALUE - 0.0000001));
assertFalse(validationResult.isValid);
validationResult = validator.validate(String.valueOf(FiatValidator.MAX_FIAT_VALUE + 0.0000001));
assertFalse(validationResult.isValid);
validationResult = validator.validate(String.valueOf(Double.MIN_VALUE));
assertFalse(validationResult.isValid);
validationResult = validator.validate(String.valueOf(Double.MAX_VALUE));
assertFalse(validationResult.isValid);
// valid cases
validationResult = validator.validate("1");
assertTrue(validationResult.isValid);
validationResult = validator.validate("0,1");
assertTrue(validationResult.isValid);
validationResult = validator.validate("0.1");
assertTrue(validationResult.isValid);
validationResult = validator.validate(",1");
assertTrue(validationResult.isValid);
validationResult = validator.validate(".1");
assertTrue(validationResult.isValid);
validationResult = validator.validate(String.valueOf(FiatValidator.MIN_FIAT_VALUE));
assertTrue(validationResult.isValid);
validationResult = validator.validate(String.valueOf(FiatValidator.MAX_FIAT_VALUE));
assertTrue(validationResult.isValid);
}
}