
\documentclass{article}
\usepackage{lipsum}
\usepackage{titlesec}
\titleformat{\section}
{\normalfont\scshape}
{\thesection}
{1em}
{}
\titlespacing*{\section}
{0pt}
{2ex plus 1ex minus .2ex}
{1ex plus .2ex}
\makeatletter
\newenvironment{myquote}[1]{%
\small\par\addvspace{3ex}
\if@nobreak
% we're at the start of a section
% add the indent
\if@afterindent\else\hspace*{\parindent}\fi
% and instruct LaTeX to reset \@afterheading at the end
\def\reset@nobreakatend{\@afterheading}%
\else
\def\reset@nobreakatend{}%
\fi
\begin{minipage}{\dimexpr\linewidth -2\parindent\relax}%
\def\myquoteauthorname{#1}%
}{%
\par\vspace{1ex}
\noindent
\hspace*{0.25\linewidth}%
\rule{0.5\linewidth }{.4pt}
\par\addvspace{1ex}
\centering
\textsc{\myquoteauthorname}\par\vspace{3ex}
\end{minipage}
\par\nobreak\reset@nobreakatend}
\makeatother
\begin{document}
\begin{myquote}{---test}
\lipsum[1-4]
\end{myquote}
\begin{myquote}{---test-2}
\lipsum[3-4]
\end{myquote}
\end{document}
No MWE acima (o código generosamente oferecidopor @egreg) o segundo myquote
ambiente continua a transbordar na mesma página em vez de passar para a próxima página. Como é possível editar o myquote
ambiente para que ele seja interrompido e continue na próxima página. (É possível ter a opção de que se for quebrar, comece na próxima página.)