emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/phps-mode b31f817 292/405: Added all examples from PSR-


From: Stefan Monnier
Subject: [elpa] externals/phps-mode b31f817 292/405: Added all examples from PSR-2 as tests for indentation
Date: Sat, 13 Jul 2019 10:00:35 -0400 (EDT)

branch: externals/phps-mode
commit b31f817e5984b54539ce5d8eaeca0f61f14affa5
Author: Christian Johansson <address@hidden>
Commit: Christian Johansson <address@hidden>

    Added all examples from PSR-2 as tests for indentation
---
 phps-mode-test-functions.el | 76 +++++++++++++++++++++++++++++++++++++--------
 1 file changed, 63 insertions(+), 13 deletions(-)

diff --git a/phps-mode-test-functions.el b/phps-mode-test-functions.el
index 62513e6..0d9ada1 100644
--- a/phps-mode-test-functions.el
+++ b/phps-mode-test-functions.el
@@ -230,20 +230,70 @@
    (message "Indent: %s" (phps-mode-test-hash-to-list 
(phps-mode-functions-get-lines-indent)))
    (should (equal '((1 (0 0)) (2 (0 0)) (3 (0 0)) (4 (0 0)) (5 (0 0)) (6 (1 
0)) (7 (2 0)) (8 (2 0)) (9 (2 0)) (10 (1 0)) (11 (2 0)) (12 (1 0)) (13 (0 0))) 
(phps-mode-test-hash-to-list (phps-mode-functions-get-lines-indent)))))
 
-  ;; TODO 4.5. abstract, final, and static
-  ;; TODO 4.6. Method and Function Calls : Example 1
-  ;; TODO 4.6. Method and Function Calls : Example 2
-  ;; TODO 5.1. if, elseif, else
-  ;; TODO 5.2. switch, case
-  ;; TODO 5.3. while, do while : Example 1
-  ;; TODO 5.3. while, do while : Example 2
-  ;; TODO 5.4. for
-  ;; TODO 5.5. foreach
-  ;; TODO 5.6. try, catch
-  ;; TODO 6. Closures : Example 1
-  ;; TODO 6. Closures : Example 2
-  ;; TODO 6. Closures : Example 3
+  (phps-mode-test-with-buffer
+   "<?php\nnamespace Vendor\Package;\n\nabstract class ClassName\n{\n    
protected static $foo;\n\n    abstract protected function zim();\n\n    final 
public static function bar()\n    {\n        // method body\n    }\n}"
+   "PSR-2 ; 4.5. abstract, final, and static"
+   (should (equal '((1 (0 0)) (2 (0 0)) (3 (0 0)) (4 (0 0)) (5 (0 0)) (6 (1 
0)) (7 (1 0)) (8 (1 0)) (9 (1 0)) (10 (1 0)) (11 (1 0)) (12 (2 0)) (13 (1 0)) 
(14 (0 0))) (phps-mode-test-hash-to-list 
(phps-mode-functions-get-lines-indent)))))
+
+  (phps-mode-test-with-buffer
+   "<?php\nbar();\n$foo->bar($arg1);\nFoo::bar($arg2, $arg3);"
+   "PSR-2 : 4.6. Method and Function Calls : Example 1"
+   (should (equal '((1 (0 0)) (2 (0 0)) (3 (0 0)) (4 (0 0))) 
(phps-mode-test-hash-to-list (phps-mode-functions-get-lines-indent)))))
+
+  (phps-mode-test-with-buffer
+   "<?php\n$foo->bar(\n    $longArgument,\n    $longerArgument,\n    
$muchLongerArgument\n);"
+   "PSR-2 : 4.6. Method and Function Calls : Example 2"
+   (should (equal '((1 (0 0)) (2 (0 0)) (3 (1 0)) (4 (1 0)) (5 (1 0)) (6 (0 
0))) (phps-mode-test-hash-to-list (phps-mode-functions-get-lines-indent)))))
+
+  (phps-mode-test-with-buffer
+   "<?php\nif ($expr1) {\n    // if body\n} elseif ($expr2) {\n    // elseif 
body\n} else {\n    // else body;\n}"
+   "PSR-2 : 5.1. if, elseif, else"
+   (should (equal '((1 (0 0)) (2 (0 0)) (3 (1 0)) (4 (0 0)) (5 (1 0)) (6 (0 
0)) (7 (1 0)) (8 (0 0))) (phps-mode-test-hash-to-list 
(phps-mode-functions-get-lines-indent)))))
+
+  (phps-mode-test-with-buffer
+   "<?php\nswitch ($expr) {\n    case 0:\n        echo 'First case, with a 
break';\n        break;\n    case 1:\n        echo 'Second case, which falls 
through';\n        // no break\n    case 2:\n    case 3:\n    case 4:\n        
echo 'Third case, return instead of break';\n        return;\n    default:\n    
    echo 'Default case';\n        break;\n}"
+   "PSR-2 : 5.2. switch, case"
+   (should (equal '((1 (0 0)) (2 (0 0)) (3 (1 0)) (4 (2 0)) (5 (2 0)) (6 (1 
0)) (7 (2 0)) (8 (2 0)) (9 (1 0)) (10 (1 0)) (11 (1 0)) (12 (2 0)) (13 (2 0)) 
(14 (1 0)) (15 (2 0)) (16 (2 0)) (17 (0 0))) (phps-mode-test-hash-to-list 
(phps-mode-functions-get-lines-indent)))))
+
+  (phps-mode-test-with-buffer
+   "<?php\nwhile ($expr) {\n    // structure body\n}"
+   "PSR-2 : 5.3. while, do while : Example 1"
+   (should (equal '((1 (0 0)) (2 (0 0)) (3 (1 0)) (4 (0 0))) 
(phps-mode-test-hash-to-list (phps-mode-functions-get-lines-indent)))))
+
+  (phps-mode-test-with-buffer
+   "<?php\ndo {\n    // structure body;\n} while ($expr);"
+   "PSR-2 : 5.3. while, do while : Example 2"
+   (should (equal '((1 (0 0)) (2 (0 0)) (3 (1 0)) (4 (0 0))) 
(phps-mode-test-hash-to-list (phps-mode-functions-get-lines-indent)))))
+
+  (phps-mode-test-with-buffer
+   "<?php\nfor ($i = 0; $i < 10; $i++) {\n    // for body\n}"
+   "PSR-2 : 5.4. for"
+   (should (equal '((1 (0 0)) (2 (0 0)) (3 (1 0)) (4 (0 0))) 
(phps-mode-test-hash-to-list (phps-mode-functions-get-lines-indent)))))
   
+  (phps-mode-test-with-buffer
+   "<?php\nforeach ($iterable as $key => $value) {\n    // foreach body\n}"
+   "PSR-2 : 5.5. foreach"
+   (should (equal '((1 (0 0)) (2 (0 0)) (3 (1 0)) (4 (0 0))) 
(phps-mode-test-hash-to-list (phps-mode-functions-get-lines-indent)))))
+
+  (phps-mode-test-with-buffer
+   "<?php\ntry {\n    // try body\n} catch (FirstExceptionType $e) {\n    // 
catch body\n} catch (OtherExceptionType $e) {\n    // catch body\n}"
+   "PSR-2 : 5.6. try, catch"
+   (should (equal '((1 (0 0)) (2 (0 0)) (3 (1 0)) (4 (0 0)) (5 (1 0)) (6 (0 
0)) (7 (1 0)) (8 (0 0))) (phps-mode-test-hash-to-list 
(phps-mode-functions-get-lines-indent)))))
+
+  (phps-mode-test-with-buffer
+   "<?php\n$closureWithArgs = function ($arg1, $arg2) {\n    // 
body\n};\n\n$closureWithArgsAndVars = function ($arg1, $arg2) use ($var1, 
$var2) {\n    // body\n};"
+   "PSR-2 : 6. Closures : Example 1"
+   (should (equal '((1 (0 0)) (2 (0 0)) (3 (1 0)) (4 (0 0)) (5 (0 0)) (6 (0 
0)) (7 (1 0)) (8 (0 0))) (phps-mode-test-hash-to-list 
(phps-mode-functions-get-lines-indent)))))
+
+  (phps-mode-test-with-buffer
+   "<?php\n$longArgs_noVars = function (\n    $longArgument,\n    
$longerArgument,\n    $muchLongerArgument\n) {\n    // 
body\n};\n\n$noArgs_longVars = function () use (\n    $longVar1,\n    
$longerVar2,\n    $muchLongerVar3\n) {\n    // body\n};\n\n$longArgs_longVars = 
function (\n    $longArgument,\n    $longerArgument,\n    
$muchLongerArgument\n) use (\n    $longVar1,\n    $longerVar2,\n    
$muchLongerVar3\n) {\n    // body\n};\n\n$longArgs_shortVars = function (\n    
$longArgument,\n [...]
+   "PSR-2 : 6. Closures : Example 2"
+   (should (equal '((1 (0 0)) (2 (0 0)) (3 (1 0)) (4 (1 0)) (5 (1 0)) (6 (0 
0)) (7 (1 0)) (8 (0 0)) (9 (0 0)) (10 (0 0)) (11 (1 0)) (12 (1 0)) (13 (1 0)) 
(14 (0 0)) (15 (1 0)) (16 (0 0)) (17 (0 0)) (18 (0 0)) (19 (1 0)) (20 (1 0)) 
(21 (1 0)) (22 (0 0)) (23 (1 0)) (24 (1 0)) (25 (1 0)) (26 (0 0)) (27 (1 0)) 
(28 (0 0)) (29 (0 0)) (30 (0 0)) (31 (1 0)) (32 (1 0)) (33 (1 0)) (34 (0 0)) 
(35 (1 0)) (36 (0 0)) (37 (0 0)) (38 (0 0)) (39 (1 0)) (40 (1 0)) (41 (1 0)) 
(42 (0 0)) (43 (1 0)) (44 (0 0 [...]
+
+  (phps-mode-test-with-buffer
+   "<?php\n$foo->bar(\n    $arg1,\n    function ($arg2) use ($var1) {\n        
// body\n    },\n    $arg3\n);"
+   "PSR-2 : 6. Closures : Example 3"
+   (should (equal '((1 (0 0)) (2 (0 0)) (3 (1 0)) (4 (1 0)) (5 (2 0)) (6 (1 
0)) (7 (1 0)) (8 (0 0))) (phps-mode-test-hash-to-list 
(phps-mode-functions-get-lines-indent)))))  
 
   )
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]