File: test_targets.py

package info (click to toggle)
swiftlang 6.0.3-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,519,992 kB
  • sloc: cpp: 9,107,863; ansic: 2,040,022; asm: 1,135,751; python: 296,500; objc: 82,456; f90: 60,502; lisp: 34,951; pascal: 19,946; sh: 18,133; perl: 7,482; ml: 4,937; javascript: 4,117; makefile: 3,840; awk: 3,535; xml: 914; fortran: 619; cs: 573; ruby: 573
file content (38 lines) | stat: -rw-r--r-- 1,427 bytes parent folder | download
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
# test_targets.py - Unit tests for swift_build_support.targets -*- python -*-
#
# This source file is part of the Swift.org open source project
#
# Copyright (c) 2014 - 2017 Apple Inc. and the Swift project authors
# Licensed under Apache License v2.0 with Runtime Library Exception
#
# See https://swift.org/LICENSE.txt for license information
# See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors

import unittest

from swift_build_support.targets import StdlibDeploymentTarget


class HostTargetTestCase(unittest.TestCase):
    def test_is_not_none_on_this_platform(self):
        self.assertIsNotNone(StdlibDeploymentTarget.host_target())


class PlatformTargetsTestCase(unittest.TestCase):
    def test_platform_contains(self):
        """
        Checks that Platform.contains(target_name)
        matches all of its targets' names and rejects non-matching names.
        """
        # Pick a few platforms with lots of targets
        for platform in [StdlibDeploymentTarget.Linux,
                         StdlibDeploymentTarget.iOS,
                         StdlibDeploymentTarget.iOSSimulator]:
            for target in platform.targets:
                self.assertTrue(platform.contains(target.name))
            self.assertFalse(platform.contains("fakeCPU-MSDOS"))
            self.assertFalse(platform.contains("singleTransistor-fakeOS"))


if __name__ == '__main__':
    unittest.main()