summaryrefslogtreecommitdiffstats
path: root/llvm/test/tools/llvm-rc/parser.test
diff options
context:
space:
mode:
authorMarek Sokolowski <mnbvmar@gmail.com>2017-09-28 22:41:38 +0000
committerMarek Sokolowski <mnbvmar@gmail.com>2017-09-28 22:41:38 +0000
commitfb74cb1edfa64424fb5204d10a16892f972435ed (patch)
tree7d957908f643f7220954015652c2509e3a963683 /llvm/test/tools/llvm-rc/parser.test
parent3b87336a0c4e7974c007d489926e5e1bcf722a75 (diff)
downloadbcm5719-llvm-fb74cb1edfa64424fb5204d10a16892f972435ed.tar.gz
bcm5719-llvm-fb74cb1edfa64424fb5204d10a16892f972435ed.zip
[llvm-rc] Add VERSIONINFO parsing ability. [6/8]
This extends the set of llvm-rc parser's available resources by another one, VERSIONINFO. Ref: msdn.microsoft.com/en-us/library/windows/desktop/aa381058.aspx Thanks to Nico Weber for his original work in this area. Differential Revision: https://reviews.llvm.org/D37021 llvm-svn: 314468
Diffstat (limited to 'llvm/test/tools/llvm-rc/parser.test')
-rw-r--r--llvm/test/tools/llvm-rc/parser.test58
1 files changed, 58 insertions, 0 deletions
diff --git a/llvm/test/tools/llvm-rc/parser.test b/llvm/test/tools/llvm-rc/parser.test
index bc7f20325d6..1f11a853df2 100644
--- a/llvm/test/tools/llvm-rc/parser.test
+++ b/llvm/test/tools/llvm-rc/parser.test
@@ -64,6 +64,34 @@
; PGOOD-NEXT: Control (5): EDITTEXT, title: , loc: (1, 2), size: [4, 7], style: 8
; PGOOD-NEXT: Dialog (25): loc: (1, 2), size: [3, 4], help ID: 0
; PGOOD-NEXT: DialogEx (26): loc: (1, 2), size: [3, 4], help ID: 0
+; PGOOD-NEXT: VersionInfo (1):
+; PGOOD-NEXT: Fixed: FILEVERSION: 1 2 3 4
+; PGOOD-NEXT: Fixed: PRODUCTVERSION: 5 6 7 8
+; PGOOD-NEXT: Fixed: FILEFLAGSMASK: 50
+; PGOOD-NEXT: Fixed: FILEFLAGS: 555
+; PGOOD-NEXT: Fixed: FILEOS: 110
+; PGOOD-NEXT: Fixed: FILETYPE: 555555
+; PGOOD-NEXT: Fixed: FILESUBTYPE: 14
+; PGOOD-NEXT: Start of block (name: )
+; PGOOD-NEXT: Start of block (name: "StringFileInfo")
+; PGOOD-NEXT: Start of block (name: "040904E4")
+; PGOOD-NEXT: "CompanyName" => "a"
+; PGOOD-NEXT: "FileDescription" => "b"
+; PGOOD-NEXT: "FileVersion" => "c"
+; PGOOD-NEXT: "InternalName" => "d"
+; PGOOD-NEXT: "LegalCopyright" => "e"
+; PGOOD-NEXT: "LegalTrademarks1" => "f"
+; PGOOD-NEXT: "LegalTrademarks2" => "g"
+; PGOOD-NEXT: "OriginalFilename" => L"h"
+; PGOOD-NEXT: "ProductName" => "ii" 2 3
+; PGOOD-NEXT: "ProductVersion" =>
+; PGOOD-NEXT: End of block
+; PGOOD-NEXT: End of block
+; PGOOD-NEXT: Start of block (name: "VarFileInfo")
+; PGOOD-NEXT: "Translation" => 1033 1252
+; PGOOD-NEXT: End of block
+; PGOOD-NEXT: End of block
+
; RUN: not llvm-rc /V %p/Inputs/parser-stringtable-no-string.rc 2>&1 | FileCheck %s --check-prefix PSTRINGTABLE1
@@ -184,3 +212,33 @@
; RUN: not llvm-rc /V %p/Inputs/parser-dialog-unnecessary-string.rc 2>&1 | FileCheck %s --check-prefix PDIALOG5
; PDIALOG5: llvm-rc: Error parsing file: expected integer, got "This shouldn't be here"
+
+
+; RUN: not llvm-rc /V %p/Inputs/parser-versioninfo-wrong-fixed.rc 2>&1 | FileCheck %s --check-prefix PVERSIONINFO1
+
+; PVERSIONINFO1: llvm-rc: Error parsing file: expected fixed VERSIONINFO statement type, got WEIRDFIXED
+
+
+; RUN: not llvm-rc /V %p/Inputs/parser-versioninfo-named-main-block.rc 2>&1 | FileCheck %s --check-prefix PVERSIONINFO2
+
+; PVERSIONINFO2: llvm-rc: Error parsing file: expected fixed VERSIONINFO statement type, got BLOCK
+
+
+; RUN: not llvm-rc /V %p/Inputs/parser-versioninfo-unnamed-inner-block.rc 2>&1 | FileCheck %s --check-prefix PVERSIONINFO3
+
+; PVERSIONINFO3: llvm-rc: Error parsing file: expected string, got {
+
+
+; RUN: not llvm-rc /V %p/Inputs/parser-versioninfo-unnamed-value.rc 2>&1 | FileCheck %s --check-prefix PVERSIONINFO4
+
+; PVERSIONINFO4: llvm-rc: Error parsing file: expected string, got END
+
+
+; RUN: not llvm-rc /V %p/Inputs/parser-versioninfo-bad-type.rc 2>&1 | FileCheck %s --check-prefix PVERSIONINFO5
+
+; PVERSIONINFO5: llvm-rc: Error parsing file: expected BLOCK or VALUE, got INCORRECT
+
+
+; RUN: not llvm-rc /V %p/Inputs/parser-versioninfo-repeated-fixed.rc 2>&1 | FileCheck %s --check-prefix PVERSIONINFO6
+
+; PVERSIONINFO6: llvm-rc: Error parsing file: expected yet unread fixed VERSIONINFO statement type, got FILEVERSION
OpenPOWER on IntegriCloud