summaryrefslogtreecommitdiff
path: root/t/rotors.t
diff options
context:
space:
mode:
authordakkar <dakkar@thenautilus.net>2011-08-29 19:16:26 +0100
committerdakkar <dakkar@thenautilus.net>2011-08-29 19:16:26 +0100
commit2b28ab91084f37a5e9014737d0df694587fe60cf (patch)
tree5aa4089d4b3589584d1b6e945184a2fad51b62e6 /t/rotors.t
parentfull-machine and tests (diff)
downloadEnigmatic-2b28ab91084f37a5e9014737d0df694587fe60cf.tar.gz
Enigmatic-2b28ab91084f37a5e9014737d0df694587fe60cf.tar.bz2
Enigmatic-2b28ab91084f37a5e9014737d0df694587fe60cf.zip
fixed rotor ring settings
and removed debug prints
Diffstat (limited to 't/rotors.t')
-rw-r--r--t/rotors.t31
1 files changed, 11 insertions, 20 deletions
diff --git a/t/rotors.t b/t/rotors.t
index 4676a55..27b6eba 100644
--- a/t/rotors.t
+++ b/t/rotors.t
@@ -19,26 +19,6 @@ subtest 'scramble rotor' => sub {
Test::Enigmatic::test_static_map($r,\@out,'shuffle');
};
-subtest 'identity rotor, non-default ring setting' => sub {
- my @out = (('B'..'Z'),'A');
-
- my $r = Enigmatic::Rotor->new(
- wiring => ['A'..'Z']->join,
- ring_setting => 1,
- );
- Test::Enigmatic::test_static_map($r,\@out,'ring=1');
-};
-
-subtest 'identity rotor, moved ring setting' => sub {
- my @out = (('B'..'Z'),'A');
-
- my $r = Enigmatic::Rotor->new(
- wiring => ['A'..'Z']->join,
- );
- $r->ring_setting(1);
- Test::Enigmatic::test_static_map($r,\@out,'ring moved to 1');
-};
-
subtest 'constraints' => sub {
my @bad_params = (
'ABCD',
@@ -107,4 +87,15 @@ subtest 'rotor box' => sub {
});
};
+subtest 'ring-setting on real rotor' => sub {
+ my $r = Enigmatic::RotorBox->new->get('I');
+ $r->ring_setting(1);
+
+ my $out = 'EKMFLGDQVZNTOWYHXUSPAIBRCJ'->split(qr//);
+ $out->unshift($out->pop);
+ $out->each_value(sub{$_[0] =~ tr[A-Z][B-ZA]});
+
+ Test::Enigmatic::test_static_map($r,$out,'ring I moved to 1');
+};
+
done_testing();