Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(35)

Side by Side Diff: chrome/browser/extensions/api/serial/serial_port_enumerator_unittest.cc

Issue 158063002: Use udev for serial device enumeration on Linux (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: -___- Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "base/strings/string_util.h"
6 #include "chrome/browser/extensions/api/serial/serial_port_enumerator.h"
7 #include "chrome/common/extensions/extension_test_util.h"
8 #include "testing/gtest/include/gtest/gtest.h"
9
10 TEST(SerialPortEnumeratorTest, ValidPortNamePatterns) {
11 #if defined(OS_WIN)
12 // TODO(miket): implement
13 #else
14 const extensions::SerialPortEnumerator::StringSet port_patterns(
15 extensions::SerialPortEnumerator::GenerateValidPatterns());
16
17 const char *kValidNames[] = {
18 "/dev/867serial5309",
19 "/dev/tty.usbmodem999999",
20 "/dev/ttyACM0",
21 "/dev/xxxxxmodemxxxxxxxxxx",
22 "/dev/tty.SLAB_something",
23 "/dev/cu.SLAB_anything",
24 };
25
26 for (size_t i = 0; i < arraysize(kValidNames); ++i) {
27 std::set<std::string>::const_iterator j = port_patterns.begin();
28 for (; j != port_patterns.end(); ++j) {
29 if (MatchPattern(kValidNames[i], *j)) {
30 break;
31 }
32 }
33 EXPECT_TRUE(j != port_patterns.end()) << kValidNames[i] <<
34 " should have matched at least one pattern";
35 }
36 #endif
37 }
38
39 TEST(SerialPortEnumeratorTest, InvalidPortNamePatterns) {
40 #if defined(OS_WIN)
41 #else
42 const extensions::SerialPortEnumerator::StringSet port_patterns(
43 extensions::SerialPortEnumerator::GenerateValidPatterns());
44
45 const char *kInvalidNames[] = {
46 "",
47 ".",
48 "..",
49 "//COM0",
50 "/dev/../home/you/your_secrets",
51 "/dev/cdrom",
52 "/dev/laserbeam",
53 "/home/you/your_secrets",
54 "/proc/cpuinfo",
55 "COM0",
56 "\\\\COM0",
57 "modem",
58 "serial",
59 "tty",
60 };
61
62 for (size_t i = 0; i < arraysize(kInvalidNames); ++i) {
63 std::set<std::string>::const_iterator j = port_patterns.begin();
64 for (; j != port_patterns.end(); ++j)
65 EXPECT_FALSE(MatchPattern(kInvalidNames[i], *j)) <<
66 kInvalidNames[i] << " should not have matched " << *j;
67 }
68 #endif
69 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698