unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
blob 219d5292ca540bc0cae7dc36619c9d6ecfee3429 2591 bytes (raw)
name: test/lisp/progmodes/cperl-mode-resources/cperl-indent-region.pl 	 # note: path name is non-authoritative(*)

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
 
#!/usr/bin/env perl
use strict;
use warnings;
use 5.020;

# This file contains test input and expected output for the tests in
# cperl-mode-tests.el, cperl-test-indent-region.  The code is
# syntactically valid, but doesn't make much sense.

# (Bug#11733) https://debbugs.gnu.org/cgi/bugreport.cgi?bug=11733
# -------- sub \n brace: input --------
sub foo
  {
  }

sub bar
  {
  }
# -------- sub \n brace: expected output --------
sub foo
{
}

sub bar
{
}
# -------- sub \n brace: end --------

# -------- map \n brace: input --------
{
my %hash = map
{
$_ = 1
}
@_;
}
# -------- map \n brace: expected output --------
{
  my %hash = map
    {
      $_ = 1
    }
    @_;
}
# -------- map \n brace: end --------

# -------- if \n brace: input --------
if (1 == @_)
  {
    say "one argument";
  } else {
    say "No arguments, or plenty";
  }
# -------- if \n brace: expected output --------
if (1 == @_) {
  say "one argument";
} else {
  say "No arguments, or plenty";
}
# -------- if \n brace: end --------

# -------- simple sub: input --------
sub middle {
  my ($left,$right) = @_;
  return  0.5 * ($left + $right);
}
$this_should_be_justified = 'left';
# -------- simple sub: expected output --------
sub middle {
  my ($left,$right) = @_;
  return  0.5 * ($left + $right);
}
$this_should_be_justified = 'left';
# -------- simple sub: end --------

# ------- hash reference: input --------
my $result = { ok => 'true' }
  if ($this_should_be_indented == 'cperl-continued-statement-offset');
# ------- hash reference: expected output --------
my $result = { ok => 'true' }
  if ($this_should_be_indented == 'cperl-continued-statement-offset');
# ------- hash reference: end --------

# The following syntax was introduced in Perl v5.14:
# ------- package BLOCK: input --------
package Puck {
our $cperl_indent_level = 4;
}
our $good_indentation = 0;
# ------- package BLOCK: expected output --------
package Puck {
  our $cperl_indent_level = 4;
}
our $good_indentation = 0;
# ------- package BLOCK: end --------

# as of Perl 5.18, subroutines can be lexical
# -------- simple sub: input --------
package Pick 1.23 {
  my sub middle {
    my ($left,$right) = @_;
    return  0.5 * ($left + $right);
    $this_should_be_indented =
      $cperl_indent_level;
  }
}
$this_should_be_justified = 'left';
# -------- simple sub: expected output --------
package Pick 1.23 {
  my sub middle {
    my ($left,$right) = @_;
    return  0.5 * ($left + $right);
    $this_should_be_indented =
      $cperl_indent_level;
  }
}
$this_should_be_justified = 'left';
# -------- simple sub: end --------

debug log:

solving 219d5292ca ...
found 219d5292ca in https://yhetil.org/emacs-bugs/87im68uwld.fsf@hajtower/

applying [1/1] https://yhetil.org/emacs-bugs/87im68uwld.fsf@hajtower/
diff --git a/test/lisp/progmodes/cperl-mode-resources/cperl-indent-region.pl b/test/lisp/progmodes/cperl-mode-resources/cperl-indent-region.pl
new file mode 100644
index 0000000000..219d5292ca

Checking patch test/lisp/progmodes/cperl-mode-resources/cperl-indent-region.pl...
Applied patch test/lisp/progmodes/cperl-mode-resources/cperl-indent-region.pl cleanly.

index at:
100644 219d5292ca540bc0cae7dc36619c9d6ecfee3429	test/lisp/progmodes/cperl-mode-resources/cperl-indent-region.pl

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).