OLD | NEW |
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
155 } | 155 } |
156 | 156 |
157 | 157 |
158 TEST(SNPrintF) { | 158 TEST(SNPrintF) { |
159 // Make sure that strings that are truncated because of too small | 159 // Make sure that strings that are truncated because of too small |
160 // buffers are zero-terminated anyway. | 160 // buffers are zero-terminated anyway. |
161 const char* s = "the quick lazy .... oh forget it!"; | 161 const char* s = "the quick lazy .... oh forget it!"; |
162 int length = strlen(s); | 162 int length = strlen(s); |
163 for (int i = 1; i < length * 2; i++) { | 163 for (int i = 1; i < length * 2; i++) { |
164 static const char kMarker = static_cast<char>(42); | 164 static const char kMarker = static_cast<char>(42); |
165 char* buffer = NewArray<char>(i + 1); | 165 Vector<char> buffer = Vector<char>::New(i + 1); |
166 buffer[i] = kMarker; | 166 buffer[i] = kMarker; |
167 int n = OS::SNPrintF(buffer, i, "%s", s); | 167 int n = OS::SNPrintF(Vector<char>(buffer.start(), i), "%s", s); |
168 CHECK(n <= i); | 168 CHECK(n <= i); |
169 CHECK(n == length || n == -1); | 169 CHECK(n == length || n == -1); |
170 CHECK_EQ(0, strncmp(buffer, s, i - 1)); | 170 CHECK_EQ(0, strncmp(buffer.start(), s, i - 1)); |
171 CHECK_EQ(kMarker, buffer[i]); | 171 CHECK_EQ(kMarker, buffer[i]); |
172 if (i <= length) { | 172 if (i <= length) { |
173 CHECK_EQ(i - 1, strlen(buffer)); | 173 CHECK_EQ(i - 1, strlen(buffer.start())); |
174 } else { | 174 } else { |
175 CHECK_EQ(length, strlen(buffer)); | 175 CHECK_EQ(length, strlen(buffer.start())); |
176 } | 176 } |
177 } | 177 } |
178 } | 178 } |
OLD | NEW |