diff --git a/plugins/yaml/src/org/jetbrains/yaml/schema/YamlGenericValueAdapter.java b/plugins/yaml/src/org/jetbrains/yaml/schema/YamlGenericValueAdapter.java
index d7b13c413833..cfb8341e4e23 100644
--- a/plugins/yaml/src/org/jetbrains/yaml/schema/YamlGenericValueAdapter.java
+++ b/plugins/yaml/src/org/jetbrains/yaml/schema/YamlGenericValueAdapter.java
@@ -145,7 +145,7 @@ public class YamlGenericValueAdapter implements JsonValueAdapter {
private static boolean isFloat(@NotNull String s) {
if (INFS.contains(trimSign(s)) || NANS.contains(s)) return true;
if (hasTag(s, "float")) return true;
- return Pattern.matches("[-+]?[1-9](\\.[0-9]*[1-9])?([eE][-+]?[1-9][0-9]*)?", s);
+ return Pattern.matches("[-+]?(\\.[0-9]+|[0-9]+(\\.[0-9]*)?)([eE][-+]?[0-9]+)?", s);
}
@NotNull
diff --git a/plugins/yaml/testSrc/org/jetbrains/yaml/schema/YamlByJsonSchemaHighlightingTest.java b/plugins/yaml/testSrc/org/jetbrains/yaml/schema/YamlByJsonSchemaHighlightingTest.java
index 3c47234d86d0..5f5a11693743 100644
--- a/plugins/yaml/testSrc/org/jetbrains/yaml/schema/YamlByJsonSchemaHighlightingTest.java
+++ b/plugins/yaml/testSrc/org/jetbrains/yaml/schema/YamlByJsonSchemaHighlightingTest.java
@@ -796,10 +796,17 @@ public class YamlByJsonSchemaHighlightingTest extends JsonSchemaHighlightingTest
public void testTravisPythonVersion() throws Exception {
@Language("JSON") String schema = FileUtil.loadFile(new File(getTestDataPath() + "/travis.schema.json"));
doTest(schema, "python: 3.5"); // validates as 'number'
- doTest(schema, "python: 3.50"); // validates as 'string'
+ doTest(schema, "python: 3.50"); // validates as 'number'
+ doTest(schema, "python: 3.50a"); // validates as 'string'
doTest(schema, "python: null");
}
+ public void testTravisNode() throws Exception {
+ @Language("JSON") String schema = FileUtil.loadFile(new File(getTestDataPath() + "/travis.schema.json"));
+ doTest(schema, "node_js: \n" +
+ " - 2.10");
+ }
+
public void testExpNumberNotation() throws Exception {
doTest("{\n" +
" \"properties\": {\n" +