Class UTableToTest
In: Tests.rb
Parent: Test::Unit::TestCase

Diese Klasse testet die Klasse UTable

Methods

Public Instance methods

Es werden für alle 4 Automaten die Übergangstafeln erstellt.

Die Methode testet die Methode getnamehs.

  1. Es wird geprüft, ob für den LR(0)-Automaten von grammar1 9 Zustandsnamen vergeben werden.
  2. Es wird geprüft, ob für den LR(0)-Automaten von grammar2 8 Zustandsnamen vergeben werden.
  3. Es wird geprüft, ob bei den sortieren Schlüssesln an 4. Stelle "K5" steht.
  4. Es wird geprüft, ob für die Schlüssel des LR(0)-Automaten von grammar2 die Namen "K1" - "K8" vergeben werden.
  5. Es wird geprüft, ob bei sortierten Übergängen, der letzte des LR(0)-Automaten von grammar2 die Form "{ [T -> id .] }" hat.

Die Methode testet die Methode getsymbole.

  1. Es werden zwei Testarrays mit den Symbolen der Grammatiken und dem #-Symbol angelegt.
  2. Es wird geprüft, ob die Methode dieselben Werte liefert, wie die in den Testarrays erwarteten.
  3. Es wird das Symbol "S" und das Symbol "id" neu angelegt.
  4. Es wird geprüft, ob das Symbol "S" dem 2. Schlüssel des sortierten Symbolhashes des LR(0)-Automaten von grammar1 entspricht.
  5. Es wird geprüft, ob das Symbol "id" dem letzten Schlüssel des sortieren Symbolhashes des LR(0)-Automaten von grammar2 entspricht.

Die Methode testet die Methode gettabelle.

  1. Es wird geprüft, ob der LR(0)-Automat von grammar1 9 Zustände hat.
  2. Es wird geprüft, ob der LR(0)-Automat von grammar2 8 Zustände hat.
  3. Es wird geprüft, ob für den Zustand K8 des LR(0)-Automaten von grammar1 keine Übergänge definiert sind.

Diese Testmethode gibt die 4 erstellten Übergangstafeln aus.

[Validate]