Changeset 11793 for branches/HeuristicLab.Problems.GrammaticalOptimization/HeuristicLab.Problems.GrammaticalOptimization.Test/TestSequence.cs
- Timestamp:
- 01/18/15 18:24:58 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HeuristicLab.Problems.GrammaticalOptimization/HeuristicLab.Problems.GrammaticalOptimization.Test/TestSequence.cs
r11730 r11793 49 49 var nt = s.FirstNonTerminal; 50 50 Assert.Fail(); 51 } 52 catch (IndexOutOfRangeException e) { 51 } catch (IndexOutOfRangeException e) { 53 52 } 54 53 } … … 201 200 s.ReplaceAt(0, 4, t); 202 201 Assert.Fail(); 203 } 204 catch (ArgumentException) { } 202 } catch (ArgumentException) { } 205 203 206 204 s.ReplaceAt(0, 2, t); // should work … … 209 207 s.ReplaceAt(0, 3, t); 210 208 Assert.Fail(); 211 } 212 catch (ArgumentException) { } 209 } catch (ArgumentException) { } 213 210 214 211 try { 215 212 s.ReplaceAt(1, 2, t); 216 213 Assert.Fail(); 217 } 218 catch (ArgumentException) { } 214 } catch (ArgumentException) { } 219 215 220 216 s.ReplaceAt(1, 1, new Sequence("A")); // should work … … 223 219 s.ReplaceAt(-1, 2, t); 224 220 Assert.Fail(); 225 } 226 catch (ArgumentException) { } 221 } catch (ArgumentException) { } 227 222 228 223 } … … 267 262 Assert.AreEqual("AA", sub.ToString()); 268 263 } 264 { 265 var s = new Sequence("aaaAA"); 266 var sub = s.Subsequence(2, 3); 267 268 Assert.AreEqual(1, sub.FirstNonTerminalIndex); 269 Assert.AreEqual("aAA", sub.ToString()); 270 } 271 } 272 273 [TestMethod] 274 public void TestReadonlySequence() { 275 CultureInfo.DefaultThreadCurrentCulture = CultureInfo.InvariantCulture; 276 { 277 var s = new ReadonlySequence("AAaaaAA"); 278 var sub = s.Subsequence(0, 7); 279 280 Assert.AreEqual(0, sub.FirstNonTerminalIndex); 281 Assert.AreEqual("AAaaaAA", sub.ToString()); 282 } 283 { 284 var s = new ReadonlySequence("AAaaaAA"); 285 var sub = s.Subsequence(0, 3); 286 287 Assert.AreEqual(0, sub.FirstNonTerminalIndex); 288 Assert.AreEqual("AAa", sub.ToString()); 289 290 sub = sub.Subsequence(1, 2); 291 Assert.AreEqual(0, sub.FirstNonTerminalIndex); 292 Assert.AreEqual("Aa", sub.ToString()); 293 } 294 { 295 var s = new ReadonlySequence("AAaaaAA"); 296 var sub = s.Subsequence(2, 3); 297 298 Assert.AreEqual(-1, sub.FirstNonTerminalIndex); 299 Assert.AreEqual("aaa", sub.ToString()); 300 } 301 { 302 var s = new ReadonlySequence("AAaaaAA"); 303 var sub = s.Subsequence(2, 4); 304 305 Assert.AreEqual(3, sub.FirstNonTerminalIndex); 306 Assert.AreEqual("aaaA", sub.ToString()); 307 } 308 { 309 var s = new ReadonlySequence("AAaaaAA"); 310 var sub = s.Subsequence(5, 2); 311 312 Assert.AreEqual(0, sub.FirstNonTerminalIndex); 313 Assert.AreEqual("AA", sub.ToString()); 314 } 315 { 316 var s = new ReadonlySequence("aaaAA"); 317 var sub = s.Subsequence(2, 3); 318 319 Assert.AreEqual(1, sub.FirstNonTerminalIndex); 320 Assert.AreEqual("aAA", sub.ToString()); 321 } 322 269 323 } 270 324 }
Note: See TracChangeset
for help on using the changeset viewer.