Indent forks and loops for activity syntax. Test notes
This commit is contained in:
parent
a0231e0774
commit
cc8b184b10
|
@ -587,7 +587,8 @@ or it is followed by line end.")
|
||||||
(defvar plantuml-indent-regexp-legend-start "^\s*\\(?:legend\\|legend\s+\\(?:bottom\\|top\\)\\|legend\s+\\(?:center\\|left\\|right\\)\\|legend\s+\\(?:bottom\\|top\\)\s+\\(?:center\\|left\\|right\\)\\)\s*\\('.*\\)?$")
|
(defvar plantuml-indent-regexp-legend-start "^\s*\\(?:legend\\|legend\s+\\(?:bottom\\|top\\)\\|legend\s+\\(?:center\\|left\\|right\\)\\|legend\s+\\(?:bottom\\|top\\)\s+\\(?:center\\|left\\|right\\)\\)\s*\\('.*\\)?$")
|
||||||
(defvar plantuml-indent-regexp-oldif-start "^.*if\s+\".*\"\s+then\s*\\('.*\\)?$" "used in current activity diagram, sometimes already mentioned as deprecated")
|
(defvar plantuml-indent-regexp-oldif-start "^.*if\s+\".*\"\s+then\s*\\('.*\\)?$" "used in current activity diagram, sometimes already mentioned as deprecated")
|
||||||
(defvar plantuml-indent-regexp-newif-start "^\s*\\(?:else\\)?if\s+(.*)\s+then\s*.*$")
|
(defvar plantuml-indent-regexp-newif-start "^\s*\\(?:else\\)?if\s+(.*)\s+then\s*.*$")
|
||||||
(defvar plantuml-indent-regexp-repeat-start "^\s*repeat\s*$")
|
(defvar plantuml-indent-regexp-loop-start "^\s*\\(?:repeat\s*\\|while\s+(.*).*\\)$")
|
||||||
|
(defvar plantuml-indent-regexp-fork-start "^\s*fork\\(?:\s+again\\)?\s*$")
|
||||||
(defvar plantuml-indent-regexp-macro-start "^\s*!definelong.*$")
|
(defvar plantuml-indent-regexp-macro-start "^\s*!definelong.*$")
|
||||||
(defvar plantuml-indent-regexp-user-control-start "^.*'.*\s*PLANTUML_MODE_INDENT_INCREASE\s*.*$")
|
(defvar plantuml-indent-regexp-user-control-start "^.*'.*\s*PLANTUML_MODE_INDENT_INCREASE\s*.*$")
|
||||||
(defvar plantuml-indent-regexp-start (list plantuml-indent-regexp-block-start
|
(defvar plantuml-indent-regexp-start (list plantuml-indent-regexp-block-start
|
||||||
|
@ -598,7 +599,8 @@ or it is followed by line end.")
|
||||||
plantuml-indent-regexp-legend-start
|
plantuml-indent-regexp-legend-start
|
||||||
plantuml-indent-regexp-note-start
|
plantuml-indent-regexp-note-start
|
||||||
plantuml-indent-regexp-newif-start
|
plantuml-indent-regexp-newif-start
|
||||||
plantuml-indent-regexp-repeat-start
|
plantuml-indent-regexp-loop-start
|
||||||
|
plantuml-indent-regexp-fork-start
|
||||||
plantuml-indent-regexp-title-start
|
plantuml-indent-regexp-title-start
|
||||||
plantuml-indent-regexp-header-start
|
plantuml-indent-regexp-header-start
|
||||||
plantuml-indent-regexp-footer-start
|
plantuml-indent-regexp-footer-start
|
||||||
|
@ -617,7 +619,8 @@ or it is followed by line end.")
|
||||||
(defvar plantuml-indent-regexp-legend-end "^\s*endlegend\s*\\('.*\\)?$")
|
(defvar plantuml-indent-regexp-legend-end "^\s*endlegend\s*\\('.*\\)?$")
|
||||||
(defvar plantuml-indent-regexp-oldif-end "^\s*\\(endif\\|else\\)\s*\\('.*\\)?$")
|
(defvar plantuml-indent-regexp-oldif-end "^\s*\\(endif\\|else\\)\s*\\('.*\\)?$")
|
||||||
(defvar plantuml-indent-regexp-newif-end "^\s*\\(endif\\|elseif\\|else\\)\s*.*$")
|
(defvar plantuml-indent-regexp-newif-end "^\s*\\(endif\\|elseif\\|else\\)\s*.*$")
|
||||||
(defvar plantuml-indent-regexp-repeat-end "^\s*\\(repeat\s*while\\)\s*.*$")
|
(defvar plantuml-indent-regexp-loop-end "^\s*\\(repeat\s*while\\|endwhile\\)\s*.*$")
|
||||||
|
(defvar plantuml-indent-regexp-fork-end "^\s*\\(fork\s+again\\|end\s+fork\\)\s*$")
|
||||||
(defvar plantuml-indent-regexp-macro-end "^\s*!enddefinelong\s*\\('.*\\)?$")
|
(defvar plantuml-indent-regexp-macro-end "^\s*!enddefinelong\s*\\('.*\\)?$")
|
||||||
(defvar plantuml-indent-regexp-user-control-end "^.*'.*\s*PLANTUML_MODE_INDENT_DECREASE\s*.*$")
|
(defvar plantuml-indent-regexp-user-control-end "^.*'.*\s*PLANTUML_MODE_INDENT_DECREASE\s*.*$")
|
||||||
(defvar plantuml-indent-regexp-end (list plantuml-indent-regexp-block-end
|
(defvar plantuml-indent-regexp-end (list plantuml-indent-regexp-block-end
|
||||||
|
@ -628,7 +631,8 @@ or it is followed by line end.")
|
||||||
plantuml-indent-regexp-legend-end
|
plantuml-indent-regexp-legend-end
|
||||||
plantuml-indent-regexp-note-end
|
plantuml-indent-regexp-note-end
|
||||||
plantuml-indent-regexp-newif-end
|
plantuml-indent-regexp-newif-end
|
||||||
plantuml-indent-regexp-repeat-end
|
plantuml-indent-regexp-loop-end
|
||||||
|
plantuml-indent-regexp-fork-end
|
||||||
plantuml-indent-regexp-title-end
|
plantuml-indent-regexp-title-end
|
||||||
plantuml-indent-regexp-header-end
|
plantuml-indent-regexp-header-end
|
||||||
plantuml-indent-regexp-footer-end
|
plantuml-indent-regexp-footer-end
|
||||||
|
|
|
@ -100,6 +100,130 @@ stop
|
||||||
@enduml"))
|
@enduml"))
|
||||||
|
|
||||||
|
|
||||||
|
(ert-deftest plantuml-test-indentation/activity-new/while-loop ()
|
||||||
|
"Test correct indentation of plantuml activity-new while loop
|
||||||
|
These code examples are taken from www.plantuml.com"
|
||||||
|
(plantuml-test-indent-block
|
||||||
|
"@startuml
|
||||||
|
|
||||||
|
start
|
||||||
|
|
||||||
|
while (data available?)
|
||||||
|
:read data;
|
||||||
|
:generate diagrams;
|
||||||
|
endwhile
|
||||||
|
|
||||||
|
stop
|
||||||
|
|
||||||
|
@enduml"
|
||||||
|
|
||||||
|
"@startuml
|
||||||
|
|
||||||
|
start
|
||||||
|
|
||||||
|
while (data available?)
|
||||||
|
:read data;
|
||||||
|
:generate diagrams;
|
||||||
|
endwhile
|
||||||
|
|
||||||
|
stop
|
||||||
|
|
||||||
|
@enduml")
|
||||||
|
|
||||||
|
(plantuml-test-indent-block
|
||||||
|
"@startuml
|
||||||
|
while (check filesize ?) is (not empty)
|
||||||
|
:read file;
|
||||||
|
endwhile (empty)
|
||||||
|
:close file;
|
||||||
|
@enduml"
|
||||||
|
|
||||||
|
"@startuml
|
||||||
|
while (check filesize ?) is (not empty)
|
||||||
|
:read file;
|
||||||
|
endwhile (empty)
|
||||||
|
:close file;
|
||||||
|
@enduml"))
|
||||||
|
|
||||||
|
(ert-deftest plantuml-test-indentation/activity-new/fork ()
|
||||||
|
"Test correct indentation of plantuml activity-new forks
|
||||||
|
These code examples are taken from www.plantuml.com"
|
||||||
|
(plantuml-test-indent-block
|
||||||
|
"@startuml
|
||||||
|
|
||||||
|
start
|
||||||
|
|
||||||
|
if (multiprocessor?) then (yes)
|
||||||
|
fork
|
||||||
|
:Treatment 1;
|
||||||
|
fork again
|
||||||
|
:Treatment 2;
|
||||||
|
end fork
|
||||||
|
else (monoproc)
|
||||||
|
:Treatment 1;
|
||||||
|
:Treatment 2;
|
||||||
|
endif
|
||||||
|
|
||||||
|
@enduml"
|
||||||
|
"@startuml
|
||||||
|
|
||||||
|
start
|
||||||
|
|
||||||
|
if (multiprocessor?) then (yes)
|
||||||
|
fork
|
||||||
|
:Treatment 1;
|
||||||
|
fork again
|
||||||
|
:Treatment 2;
|
||||||
|
end fork
|
||||||
|
else (monoproc)
|
||||||
|
:Treatment 1;
|
||||||
|
:Treatment 2;
|
||||||
|
endif
|
||||||
|
|
||||||
|
@enduml"))
|
||||||
|
|
||||||
|
(ert-deftest plantuml-test-indentation/activity-new/notes ()
|
||||||
|
"Test correct indentation of plantuml activity-new notes
|
||||||
|
These code examples are taken from www.plantuml.com"
|
||||||
|
(plantuml-test-indent-block
|
||||||
|
"@startuml
|
||||||
|
|
||||||
|
start
|
||||||
|
:foo1;
|
||||||
|
floating note left: This is a note
|
||||||
|
:foo2;
|
||||||
|
note right
|
||||||
|
This note is on several
|
||||||
|
//lines// and can
|
||||||
|
contain <b>HTML</b>
|
||||||
|
====
|
||||||
|
* Calling the method \"foo()\" is prohibited
|
||||||
|
end note
|
||||||
|
stop
|
||||||
|
|
||||||
|
@enduml"
|
||||||
|
|
||||||
|
"@startuml
|
||||||
|
|
||||||
|
start
|
||||||
|
:foo1;
|
||||||
|
floating note left: This is a note
|
||||||
|
:foo2;
|
||||||
|
note right
|
||||||
|
This note is on several
|
||||||
|
//lines// and can
|
||||||
|
contain <b>HTML</b>
|
||||||
|
====
|
||||||
|
* Calling the method \"foo()\" is prohibited
|
||||||
|
end note
|
||||||
|
stop
|
||||||
|
|
||||||
|
@enduml"))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
(provide 'plantuml-indentation-activity-new-test)
|
(provide 'plantuml-indentation-activity-new-test)
|
||||||
|
|
||||||
;;; plantuml-indentation-activity-old-test.el ends here
|
;;; plantuml-indentation-activity-old-test.el ends here
|
||||||
|
|
Loading…
Reference in New Issue