File: rule-static-pattern.t

package info (click to toggle)
libmakefile-dom-perl 0.004-1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 616 kB
  • ctags: 535
  • sloc: perl: 6,552; makefile: 2
file content (74 lines) | stat: -rw-r--r-- 1,851 bytes parent folder | download | duplicates (5)
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
use t::GmakeDOM;

plan tests => blocks() * 2;

run_tests;

__DATA__

=== TEST 1: static pattern rules with ";" command
--- src

foo.o bar.o: %.o: %.c ; echo blah

%.c: ; echo $@

--- dom
MDOM::Document::Gmake
  MDOM::Rule::StaticPattern
    MDOM::Token::Bare           'foo.o'
    MDOM::Token::Whitespace     ' '
    MDOM::Token::Bare           'bar.o'
    MDOM::Token::Separator      ':'
    MDOM::Token::Whitespace     ' '
    MDOM::Token::Bare           '%.o'
    MDOM::Token::Separator      ':'
    MDOM::Token::Whitespace     ' '
    MDOM::Token::Bare           '%.c'
    MDOM::Token::Whitespace     ' '
    MDOM::Command
      MDOM::Token::Separator    ';'
      MDOM::Token::Whitespace   ' '
      MDOM::Token::Bare         'echo blah'
      MDOM::Token::Whitespace   '\n'
  MDOM::Token::Whitespace       '\n'
  MDOM::Rule::Simple
    MDOM::Token::Bare           '%.c'
    MDOM::Token::Separator      ':'
    MDOM::Token::Whitespace     ' '
    MDOM::Command
      MDOM::Token::Separator    ';'
      MDOM::Token::Whitespace   ' '
      MDOM::Token::Bare         'echo '
      MDOM::Token::Interpolation    '$@'
      MDOM::Token::Whitespace       '\n'



=== TEST 2: static pattern rules without ";" commands
--- src

foo.o bar.o: %.o: %.c
	@echo blah

--- dom
MDOM::Document::Gmake
  MDOM::Rule::StaticPattern
    MDOM::Token::Bare          'foo.o'
    MDOM::Token::Whitespace    ' '
    MDOM::Token::Bare          'bar.o'
    MDOM::Token::Separator     ':'
    MDOM::Token::Whitespace    ' '
    MDOM::Token::Bare          '%.o'
    MDOM::Token::Separator     ':'
    MDOM::Token::Whitespace    ' '
    MDOM::Token::Bare          '%.c'
    MDOM::Token::Whitespace    '\n'
  MDOM::Command
    MDOM::Token::Separator     '\t'
    MDOM::Token::Modifier      '@'
    MDOM::Token::Bare          'echo blah'
    MDOM::Token::Whitespace    '\n'