summaryrefslogtreecommitdiffstats
path: root/third_party/python/gyp/test/conditions
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
commit36d22d82aa202bb199967e9512281e9a53db42c9 (patch)
tree105e8c98ddea1c1e4784a60a5a6410fa416be2de /third_party/python/gyp/test/conditions
parentInitial commit. (diff)
downloadfirefox-esr-upstream.tar.xz
firefox-esr-upstream.zip
Adding upstream version 115.7.0esr.upstream/115.7.0esrupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'third_party/python/gyp/test/conditions')
-rw-r--r--third_party/python/gyp/test/conditions/elseif/elseif.gyp43
-rw-r--r--third_party/python/gyp/test/conditions/elseif/elseif_bad1.gyp20
-rw-r--r--third_party/python/gyp/test/conditions/elseif/elseif_bad2.gyp22
-rw-r--r--third_party/python/gyp/test/conditions/elseif/elseif_bad3.gyp23
-rw-r--r--third_party/python/gyp/test/conditions/elseif/elseif_conditions.gypi15
-rw-r--r--third_party/python/gyp/test/conditions/elseif/gyptest_elseif.py33
-rw-r--r--third_party/python/gyp/test/conditions/elseif/program.cc10
7 files changed, 166 insertions, 0 deletions
diff --git a/third_party/python/gyp/test/conditions/elseif/elseif.gyp b/third_party/python/gyp/test/conditions/elseif/elseif.gyp
new file mode 100644
index 0000000000..6367ff7d7a
--- /dev/null
+++ b/third_party/python/gyp/test/conditions/elseif/elseif.gyp
@@ -0,0 +1,43 @@
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+{
+ 'targets': [
+ {
+ 'variables': { 'test_var': 0 },
+ 'target_name': 'program0',
+ 'type': 'executable',
+ 'sources': [ 'program.cc' ],
+ 'includes': [ 'elseif_conditions.gypi' ],
+ },
+ {
+ 'variables': { 'test_var': 1 },
+ 'target_name': 'program1',
+ 'type': 'executable',
+ 'sources': [ 'program.cc' ],
+ 'includes': [ 'elseif_conditions.gypi' ],
+ },
+ {
+ 'variables': { 'test_var': 2 },
+ 'target_name': 'program2',
+ 'type': 'executable',
+ 'sources': [ 'program.cc' ],
+ 'includes': [ 'elseif_conditions.gypi' ],
+ },
+ {
+ 'variables': { 'test_var': 3 },
+ 'target_name': 'program3',
+ 'type': 'executable',
+ 'sources': [ 'program.cc' ],
+ 'includes': [ 'elseif_conditions.gypi' ],
+ },
+ {
+ 'variables': { 'test_var': 4 },
+ 'target_name': 'program4',
+ 'type': 'executable',
+ 'sources': [ 'program.cc' ],
+ 'includes': [ 'elseif_conditions.gypi' ],
+ },
+ ],
+}
diff --git a/third_party/python/gyp/test/conditions/elseif/elseif_bad1.gyp b/third_party/python/gyp/test/conditions/elseif/elseif_bad1.gyp
new file mode 100644
index 0000000000..35c8455cca
--- /dev/null
+++ b/third_party/python/gyp/test/conditions/elseif/elseif_bad1.gyp
@@ -0,0 +1,20 @@
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# Trigger an error because of two consecutive string conditions.
+
+{
+ 'targets': [
+ {
+ 'variables': { 'test_var': 0 },
+ 'target_name': 'program',
+ 'type': 'executable',
+ 'sources': [ 'program.cc' ],
+ 'conditions': [
+ ['test_var==0', 'test_var==1', {
+ }],
+ ],
+ },
+ ],
+}
diff --git a/third_party/python/gyp/test/conditions/elseif/elseif_bad2.gyp b/third_party/python/gyp/test/conditions/elseif/elseif_bad2.gyp
new file mode 100644
index 0000000000..b529f292c0
--- /dev/null
+++ b/third_party/python/gyp/test/conditions/elseif/elseif_bad2.gyp
@@ -0,0 +1,22 @@
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# Trigger an error because of two consecutive string conditions, even if the
+# conditions are not actually evaluated.
+
+{
+ 'targets': [
+ {
+ 'variables': { 'test_var': 0 },
+ 'target_name': 'program',
+ 'type': 'executable',
+ 'sources': [ 'program.cc' ],
+ 'conditions': [
+ ['test_var==0', {
+ }, 'test_var==1', 'test_var==2', {
+ }],
+ ],
+ },
+ ],
+}
diff --git a/third_party/python/gyp/test/conditions/elseif/elseif_bad3.gyp b/third_party/python/gyp/test/conditions/elseif/elseif_bad3.gyp
new file mode 100644
index 0000000000..126e186053
--- /dev/null
+++ b/third_party/python/gyp/test/conditions/elseif/elseif_bad3.gyp
@@ -0,0 +1,23 @@
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# Trigger an error because there are unexpected trailing items in a condition.
+
+{
+ 'targets': [
+ {
+ 'variables': { 'test_var': 0 },
+ 'target_name': 'program',
+ 'type': 'executable',
+ 'sources': [ 'program.cc' ],
+ 'conditions': [
+ ['test_var==0' {
+ }, 'test_var==1', {
+ }, {
+ }, 'test_var==2', {
+ }],
+ ],
+ },
+ ],
+}
diff --git a/third_party/python/gyp/test/conditions/elseif/elseif_conditions.gypi b/third_party/python/gyp/test/conditions/elseif/elseif_conditions.gypi
new file mode 100644
index 0000000000..4310ccc031
--- /dev/null
+++ b/third_party/python/gyp/test/conditions/elseif/elseif_conditions.gypi
@@ -0,0 +1,15 @@
+{
+ 'conditions': [
+ ['test_var==0', {
+ 'defines': ['FOO="first_if"'],
+ }, 'test_var==1', {
+ 'defines': ['FOO="first_else_if"'],
+ }, 'test_var==2', {
+ 'defines': ['FOO="second_else_if"'],
+ }, 'test_var==3', {
+ 'defines': ['FOO="third_else_if"'],
+ }, {
+ 'defines': ['FOO="last_else"'],
+ }],
+ ],
+}
diff --git a/third_party/python/gyp/test/conditions/elseif/gyptest_elseif.py b/third_party/python/gyp/test/conditions/elseif/gyptest_elseif.py
new file mode 100644
index 0000000000..9d030cf3fe
--- /dev/null
+++ b/third_party/python/gyp/test/conditions/elseif/gyptest_elseif.py
@@ -0,0 +1,33 @@
+#!/usr/bin/env python
+
+# Copyright (c) 2014 Google Inc. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+"""
+Verify that "else-if" conditions work.
+"""
+
+import TestGyp
+
+test = TestGyp.TestGyp()
+
+test.run_gyp('elseif.gyp')
+test.build('elseif.gyp', test.ALL)
+test.run_built_executable(
+ 'program0', stdout='first_if\n')
+test.run_built_executable(
+ 'program1', stdout='first_else_if\n')
+test.run_built_executable(
+ 'program2', stdout='second_else_if\n')
+test.run_built_executable(
+ 'program3', stdout='third_else_if\n')
+test.run_built_executable(
+ 'program4', stdout='last_else\n')
+
+# Verify that bad condition blocks fail at gyp time.
+test.run_gyp('elseif_bad1.gyp', status=1, stderr=None)
+test.run_gyp('elseif_bad2.gyp', status=1, stderr=None)
+test.run_gyp('elseif_bad3.gyp', status=1, stderr=None)
+
+test.pass_test()
diff --git a/third_party/python/gyp/test/conditions/elseif/program.cc b/third_party/python/gyp/test/conditions/elseif/program.cc
new file mode 100644
index 0000000000..147fe2f75e
--- /dev/null
+++ b/third_party/python/gyp/test/conditions/elseif/program.cc
@@ -0,0 +1,10 @@
+// Copyright (c) 2014 Google Inc. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include <stdio.h>
+
+int main() {
+ printf("%s\n", FOO);
+ return 0;
+}