You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by pa...@apache.org on 2018/02/12 01:59:18 UTC
[3/3] groovy git commit: addendum to pr#661 move the examples in
question into a test, so they will stay correct
addendum to pr#661 move the examples in question into a test, so they will stay correct
Project: http://git-wip-us.apache.org/repos/asf/groovy/repo
Commit: http://git-wip-us.apache.org/repos/asf/groovy/commit/934b29d0
Tree: http://git-wip-us.apache.org/repos/asf/groovy/tree/934b29d0
Diff: http://git-wip-us.apache.org/repos/asf/groovy/diff/934b29d0
Branch: refs/heads/GROOVY_2_4_X
Commit: 934b29d035637e4cb8690998105f043f64f445b3
Parents: 6411ca7
Author: paulk <pa...@asert.com.au>
Authored: Mon Feb 12 11:55:53 2018 +1000
Committer: paulk <pa...@asert.com.au>
Committed: Mon Feb 12 11:59:04 2018 +1000
----------------------------------------------------------------------
src/spec/doc/style-guide.adoc | 35 +-----------------
src/spec/test/StyleGuideTest.groovy | 61 ++++++++++++++++++++++++++++++++
2 files changed, 62 insertions(+), 34 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/groovy/blob/934b29d0/src/spec/doc/style-guide.adoc
----------------------------------------------------------------------
diff --git a/src/spec/doc/style-guide.adoc b/src/spec/doc/style-guide.adoc
index baef245..eea447d 100644
--- a/src/spec/doc/style-guide.adoc
+++ b/src/spec/doc/style-guide.adoc
@@ -465,40 +465,7 @@ Here are some examples of those native constructs:
[source,groovy]
----
-def list = [1, 4, 6, 9]
-
-// by default, keys are Strings, no need to quote them
-// you can wrap keys with () like [(variableStateAcronym): stateName] to insert a variable or object as a key.
-def map = [CA: 'California', MI: 'Michigan']
-
-// ranges can be inclusive and exclusive
-def range = 10..20 // inclusive
-assert range.size() == 11
-// use brackets if you need to call a method on a range definition
-assert (10..<20).size() == 10 // exclusive
-
-def pattern = ~/fo*/
-
-// equivalent to add()
-list << 5
-
-// call contains()
-assert 4 in list
-assert 5 in list
-assert 15 in range
-
-// subscript notation
-assert list[1] == 4
-
-// add a new key value pair
-map << [WA: 'Washington']
-// subscript notation
-assert map['CA'] == 'California'
-// property notation
-assert map.WA == 'Washington'
-
-// matches() strings against patterns
-assert 'foo' ==~ pattern
+include::{projectdir}/src/spec/test/StyleGuideTest.groovy[tags=data_structures,indent=0]
----
== The Groovy Development Kit
http://git-wip-us.apache.org/repos/asf/groovy/blob/934b29d0/src/spec/test/StyleGuideTest.groovy
----------------------------------------------------------------------
diff --git a/src/spec/test/StyleGuideTest.groovy b/src/spec/test/StyleGuideTest.groovy
new file mode 100644
index 0000000..9dd9dd2
--- /dev/null
+++ b/src/spec/test/StyleGuideTest.groovy
@@ -0,0 +1,61 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+import gls.CompilableTestSupport
+
+class StyleGuideTest extends CompilableTestSupport {
+
+ void testDataStructures() {
+ // tag::data_structures[]
+ def list = [1, 4, 6, 9]
+
+ // by default, keys are Strings, no need to quote them
+ // you can wrap keys with () like [(variableStateAcronym): stateName] to insert a variable or object as a key.
+ def map = [CA: 'California', MI: 'Michigan']
+
+ // ranges can be inclusive and exclusive
+ def range = 10..20 // inclusive
+ assert range.size() == 11
+ // use brackets if you need to call a method on a range definition
+ assert (10..<20).size() == 10 // exclusive
+
+ def pattern = ~/fo*/
+
+ // equivalent to add()
+ list << 5
+
+ // call contains()
+ assert 4 in list
+ assert 5 in list
+ assert 15 in range
+
+ // subscript notation
+ assert list[1] == 4
+
+ // add a new key value pair
+ map << [WA: 'Washington']
+ // subscript notation
+ assert map['CA'] == 'California'
+ // property notation
+ assert map.WA == 'Washington'
+
+ // matches() strings against patterns
+ assert 'foo' ==~ pattern
+ // end::data_structures[]
+ }
+}