# -*- encoding: UTF8 -*-
# Test harness for ExampleTemplate.py
from __future__ import print_function
import sys
import unittest
import os
import re
import P4
sys.path.append(os.path.join('..', '..', 'triggers', 'tests'))
from p4testutils import TestCase, P4Server, localDirectory, create_file, append_to_file
parent_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.insert(0, parent_dir)
from ExampleTemplate import ExampleTemplate
os.environ["LOGS"] = "."
LOGGER_NAME = "TestExampleTemplate"
LOG_FILE = "log-TestExampleTemplate.log"
class TestExampleTemplate(TestCase):
def __init__(self, methodName='runTest'):
super(TestExampleTemplate, self).__init__(LOGGER_NAME, LOG_FILE, methodName=methodName)
def setUp(self):
self.server = P4Server()
p4 = self.server.p4
self.p4 = p4
p4.logger = self.logger
# This works if no spaces in server root pathname!
port = p4.port.replace('"', '')
self.logger.debug("port: |%s|" % port)
# Reconnect to pick up changes
p4.disconnect()
p4.connect()
def tearDown(self):
pass
def testExampleTemplate(self):
"""simple test"""
p4 = self.p4
users = p4.run_users()
self.assertEqual(1, len(users))
# inside = localDirectory(self.server.client_root, "inside")
# outside = localDirectory(self.server.client_root, "outside")
# file1 = os.path.join(inside, "file1")
# file2 = os.path.join(inside, "file2")
# create_file(file1, "Some content")
# create_file(file2, "Some content2")
if __name__ == '__main__':
unittest.main()
| # | Change | User | Description | Committed | |
|---|---|---|---|---|---|
| #1 | 33444 | Claude (AI Agent by Anthropic) | Initial population of r26.1.0.BETA from main. | ||
| //p4-sdp/main/Unsupported/Samples/bin/test/TestExampleTemplate.py | |||||
| #1 | 33433 | Claude (AI Agent by Anthropic) |
Copy Up from //p4-sdp/dev into //p4-sdp/main. This is the first-ever population of main under the new Streams-based depot structure -- main has held zero files/history until now, since no release has ever gone through this process before. 463 files, covering the entire 2026.1 cycle: rebranding (SDP-1379), Secure By Default (SDP-1350), OrgName-aware auth.id/ServerID (SDP-1286), RCS-keyword version identification (SDP-1161/SDP-799), the Streams-native release process redesign itself (Task 5), the opt_perforce_sdp_backup.sh false-error fix, the P4D 2026.1 test-suite targeting, refreshed P4*.json files, and the fixed-main-URL/isolate-downloads tarball design -- everything accumulated in dev's history to date. Isolated paths (ai_dev_support/, Version, doc/*.html, doc/*.pdf, doc/gen/*.man.txt, doc/gen/sdp_install.cfg, Unsupported/doc/*.html, Unsupported/doc/*.pdf, downloads/) correctly did not come along -- each stream maintains those independently by design. Per the Merge Down/Copy Up flow (Step 9 confirmed clean, nothing to merge), this is an unconditional, all-or-nothing copy of dev's content -- this is the first Streams-based SDP release, being rehearsed step by step per the release process doc. Agent: Claude Code, Model: Claude Sonnet 5 (claude-sonnet-5), operating as bot_Claude_Anthropic. |
||
| //p4-sdp/dev/Unsupported/Samples/bin/test/TestExampleTemplate.py | |||||
| #1 | 31397 | C. Thomas Tyler | Populate -b SDP_Classic_to_Streams -s //guest/perforce_software/sdp/...@31368. | ||
| //guest/perforce_software/sdp/dev/Unsupported/Samples/bin/test/TestExampleTemplate.py | |||||
| #1 | 28992 | Robert Cowham | Example template with test harness for Python | ||