%% Generated by lilypond-book
%% Options: [exampleindent=10.16\mm,indent=0\mm,line-width=160\mm,paper-height=845.047\pt,paper-width=597.508\pt,papersize='(cons (* 597.508 pt) (* 845.047 pt))]
\include "lilypond-book-preamble.ly"


% ****************************************************************
% Start cut-&-pastable-section
% ****************************************************************

#(ly:set-option 'eps-box-padding 3.000000)



\paper {
  #(set-paper-size '(cons (* 597.508 pt) (* 845.047 pt)))
  indent = 0\mm
  line-width = 160\mm
  % offset the left padding, also add 1mm as lilypond creates cropped
  % images with a little space on the right
  line-width = #(- line-width (* mm  3.000000) (* mm 1))
}

\layout {
  
}




% ****************************************************************
% ly snippet:
% ****************************************************************
\sourcefilename "/lilypond-2.25.35/input/regression/polymetric-time-warning-measure-length-scaled.ly"
\sourcefileline 0
\version "2.25.32"

\header {
  texidoc = "A warning is issued when simultaneous @code{\\time} and
@code{\\polymetric \\time} commands require different measure lengths.  In this
case, both the @code{Score} and @code{Staff} time signatures are 4/4, but the
@code{Staff} meter is scaled by a factor of 5/4."
}

#(ly:set-option 'warning-as-error #t)

\score {
  \layout {}
  \midi {}
  %% Related test cases check that there is no dependence on the order in which
  %% \time and \polymetric \time appear in the source.  This test is simpler
  %% because it focuses narrowly on proving sensitivity to \scaleDurations.
  \new Staff {
    \applyContext #(lambda (context)
                    (ly:expect-warning
                     (ly:translate-cpp-warning-scheme
                      "conflicting measure length: %s") 5/4)
                    (ly:expect-warning
                     (ly:translate-cpp-warning-scheme
                      "measure length in Timing context: %s") 1))

    \scaleDurations 5/4 {
      \context Staff \polymetric \time 4/4

      \contextPropertyCheck Score.beamExceptions
      #'((end . ((1/8 . (4 4))
                 (1/12 . (3 3 3 3)))))
      \contextPropertyCheck Score.beatBase #1/4
      \contextPropertyCheck Score.beatStructure #'(1 1 1 1)
      \contextPropertyCheck Score.measureLength 1
      \contextPropertyCheck Score.meterScalingFactor \default
      \contextPropertyCheck Score.submeasureStructure #'(4)
      \contextPropertyCheck Score.timeSignature 4/4

      %% notwithstanding the warning, the settings take effect
      \contextPropertyCheck Staff.beamExceptions
      #'((end . ((1/8 . (4 4))
                 (1/12 . (3 3 3 3)))))
      \contextPropertyCheck Staff.beatBase #1/4
      \contextPropertyCheck Staff.beatStructure #'(1 1 1 1)
      \contextPropertyCheck Staff.measureLength \default
      \contextPropertyCheck Staff.meterScalingFactor #5/4
      \contextPropertyCheck Staff.submeasureStructure #'(4)
      \contextPropertyCheck Staff.timeSignature 4/4

      \repeat unfold 4 r4
    }

    \applyContext #(lambda (context) (ly:check-expected-warnings))
  }
}



% ****************************************************************
% end ly snippet
% ****************************************************************
