// Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

// Library tag to allow Dartium to run the tests.
library sha256_test;

import "package:test/test.dart";
import "package:crypto/crypto.dart";

part 'sha256_long_test_vectors.dart';
part 'sha256_short_test_vectors.dart';

void main() {
  test('expected values', _testExpectedValues);
  test('invalid use', _testInvalidUse);
  test('repeated digest', _testRepeatedDigest);
  test('long inputs',
      () => _testStandardVectors(sha256_long_inputs, sha256_long_mds));
  test('short inputs',
      () => _testStandardVectors(sha256_short_inputs, sha256_short_mds));
}

void _testExpectedValues() {
  var expectedValues = const [
    'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855',
    '6e340b9cffb37a989ca544e6bb780a2c78901d3fb33738768511a30617afa01d',
    'b413f47d13ee2fe6c845b2ee141af81de858df4ec549a58b7970bb96645bc8d2',
    'ae4b3280e56e2faf83f414a6e3dabe9d5fbe18976544c05fed121accb85b53fc',
    '054edec1d0211f624fed0cbca9d4f9400b0e491c43742af2c5b0abebf0c990d8',
    '08bb5e5d6eaac1049ede0893d30ed022b1a4d9b5b48db414871f51c9cb35283d',
    '17e88db187afd62c16e5debf3e6527cd006bc012bc90b51a810cd80c2d511f43',
    '57355ac3303c148f11aef7cb179456b9232cde33a818dfda2c2fcb9325749a6b',
    '8a851ff82ee7048ad09ec3847f1ddf44944104d2cbd17ef4e3db22c6785a0d45',
    'f8348e0b1df00833cbbbd08f07abdecc10c0efb78829d7828c62a7f36d0cc549',
    '1f825aa2f0020ef7cf91dfa30da4668d791c5d4824fc8e41354b89ec05795ab3',
    '78a6273103d17c39a0b6126e226cec70e33337f4bc6a38067401b54a33e78ead',
    'fff3a9bcdd37363d703c1c4f9512533686157868f0d4f16a0f02d0f1da24f9a2',
    '86eba947d50c2c01570fe1bb5ca552958dabbdbb59b0657f0f26e21ff011e5c7',
    'ab107f1bd632d3c3f5c724a99d024f7faa033f33c07696384b604bfe78ac352d',
    '7071fc3188fde7e7e500d4768f1784bede1a22e991648dcab9dc3219acff1d4c',
    'be45cb2605bf36bebde684841a28f0fd43c69850a3dce5fedba69928ee3a8991',
    '3e5718fea51a8f3f5baca61c77afab473c1810f8b9db330273b4011ce92c787e',
    '7a096cc12702bcfa647ee070d4f3ba4c2d1d715b484b55b825d0edba6545803b',
    '5f9a753613d87b8a17302373c4aee56faa310d3b24b6ae1862d673aa22e1790f',
    'e7aebf577f60412f0312d442c70a1fa6148c090bf5bab404caec29482ae779e8',
    '75aee9dcc9fbe7ddc9394f5bc5d38d9f5ad361f0520f7ceab59616e38f5950b5',
    '22cb4df00cddd6067ad5cfa2bba9857f21a06843e1a6e39ad1a68cb9a45ab8b7',
    'f6a954a68555187d88cd9a026940d15ab2a7e24c7517d21ceeb028e93c96f318',
    '1d64add2a6388367c9bc2d1f1b384b069a6ef382cdaaa89771dd103e28613a25',
    'b729ce724d9a48d3884dbfcbee1d3793d922b29fa9d639e7290af4978263772b',
    'b858da80d8a57dc546905fd147612ebddd3c9188620405d058f9ee5ab1e6bc52',
    'd78750726155a89c9131d0ecf2704b973b8710865bf9e831845de4f2dcbc19da',
    'dc27f8e8ee2d08a2bccbb2dbd6c8e07ffba194101fc3458c34ded55f72c0971a',
    'd09bea65dff48928a14b79741de3274b646f55ac898b71a66fa3eae2d9facd77',
    'f2192584b67da35dfc26f743e5f53bb0376046f899dc6dabd5e7b541ae86c32f',
    '4f23c2ca8c5c962e50cd31e221bfb6d0adca19111dca8e0c62598ff146dd19c4',
    '630dcd2966c4336691125448bbb25b4ff412a49c732db2c8abc1b8581bd710dd',
    '5d8fcfefa9aeeb711fb8ed1e4b7d5c8a9bafa46e8e76e68aa18adce5a10df6ab',
    '14cdbf171499f86bd18b262243d669067efbdbb5431a48289cf02f2b5448b3d4',
    'f12dd12340cb84e4d0d9958d62be7c59bb8f7243a7420fd043177ac542a26aaa',
    '5d7e2d9b1dcbc85e7c890036a2cf2f9fe7b66554f2df08cec6aa9c0a25c99c21',
    'f4d285f47a1e4959a445ea6528e5df3efab041fa15aad94db1e2600b3f395518',
    'a2fd0e15d72c9d18f383e40016f9ddc706673c54252084285aaa47a812552577',
    '4aba23aea5e2a91b7807cf3026cdd10a1c38533ce55332683d4ccb88456e0703',
    '5faa4eec3611556812c2d74b437c8c49add3f910f10063d801441f7d75cd5e3b',
    '753629a6117f5a25d338dff10f4dd3d07e63eecc2eaf8eabe773f6399706fe67',
    '40a1ed73b46030c8d7e88682078c5ab1ae5a2e524e066e8c8743c484de0e21e5',
    'c033843682818c475e187d260d5e2edf0469862dfa3bb0c116f6816a29edbf60',
    '17619ec4250ef65f083e2314ef30af796b6f1198d0fddfbb0f272930bf9bb991',
    'a8e960c769a9508d098451e3d74dd5a2ac6c861eb0341ae94e9fc273597278c9',
    '8ebfeb2e3a159e9f39ad7cc040e6678dade70d4f59a67d529fa76af301ab2946',
    'ef8a7781a95c32fa02ebf511eda3dc6e273be59cb0f9e20a4f84d54f41427791',
    '4dbdc2b2b62cb00749785bc84202236dbc3777d74660611b8e58812f0cfde6c3',
    '7509fe148e2c426ed16c990f22fe8116905c82c561756e723f63223ace0e147e',
    'a622e13829e488422ee72a5fc92cb11d25c3d0f185a1384b8138df5074c983bf',
    '3309847cee454b4f99dcfe8fdc5511a7ba168ce0b6e5684ef73f9030d009b8b5',
    'c4c6540a15fc140a784056fe6d9e13566fb614ecb2d9ac0331e264c386442acd',
    '90962cc12ae9cdae32d7c33c4b93194b11fac835942ee41b98770c6141c66795',
    '675f28acc0b90a72d1c3a570fe83ac565555db358cf01826dc8eefb2bf7ca0f3',
    '463eb28e72f82e0a96c0a4cc53690c571281131f672aa229e0d45ae59b598b59',
    'da2ae4d6b36748f2a318f23e7ab1dfdf45acdc9d049bd80e59de82a60895f562',
    '2fe741af801cc238602ac0ec6a7b0c3a8a87c7fc7d7f02a3fe03d1c12eac4d8f',
    'e03b18640c635b338a92b82cce4ff072f9f1aba9ac5261ee1340f592f35c0499',
    'bd2de8f5dd15c73f68dfd26a614080c2e323b2b51b1b5ed9d7933e535d223bda',
    '0ddde28e40838ef6f9853e887f597d6adb5f40eb35d5763c52e1e64d8ba3bfff',
    '4b5c2783c91ceccb7c839213bcbb6a902d7fe8c2ec866877a51f433ea17f3e85',
    'c89da82cbcd76ddf220e4e9091019b9866ffda72bee30de1effe6c99701a2221',
    '29af2686fd53374a36b0846694cc342177e428d1647515f078784d69cdb9e488',
    'fdeab9acf3710362bd2658cdc9a29e8f9c757fcf9811603a8c447cd1d9151108',
    '4bfd2c8b6f1eec7a2afeb48b934ee4b2694182027e6d0fc075074f2fabb31781',
    'b6dfd259f6e0d07deb658a88148f8253f9bbbb74ddd6db3edbe159a56bc35073',
    '8fa5913b62847d42bb4b464e00a72c612d2ab0df2af0b9a96af8d323fa509077',
    '7ded979c0153ebb9ef28a15a314d0b27b41c4f8eed700b54974b48eb3ecaf91c',
    '1cf3aa651dcf35dbfe296e770ad7ebc4e00bcccd0224db296183dc952d0008c9',
    '5767d69a906d4860db9079eb7e90ab4a543e5cb032fce846554aef6ceb600e1d',
    '8189e3d54767d51e8d1942659a9e2905f9ec3ae72860c16a66e75b8cc9bd2087',
    '107de2bc788e11029f7851f8e1b0b5afb4e34379c709fc840689ebd3d1f51b5b',
    '169f6f093a9be82febe1a6a4471425697ec25d5040b472c5b1822aeea2625988',
    '2087ebd358ae3ea2a092fc19c2dfee57c5f0860296bc7b057c14e1227c5cb9d1',
    '182ab56f7739e43cee0b9ba1e92c4b2a81b088705516a5243910159744f21be9',
    '081f6c68899a48a1be455a55416104921d2fe4bdae696f4b72f9d9626a47915e',
    '5ce02376cc256861b78f87e34783814ba1aec6d09ab500d579ed8ee95c8afcc8',
    'b93e407404e3e95f20fd647365e0e7f46afabe9af1ff083af996135e00d54009',
    'e81fa832b37be8ed8f79da29987aa4d61310dcb14b2859dedf8fb1daa2541fd3',
    'c56705fea5b110b8dc63688533ced21167e628017387c885423b835a55edd5ef',
    'c2226285d08a245a17058ed2d24ad095b714f608ae364fddf119e0a7df890540',
    'f9c270da8793221a6809ac685fdd4f5387e0fe1ee6aaf01c74f1e0a719621614',
    'e69befd6ef7f685c36e343ac1702d87ad6a0e4ac8c0d5c521d04aad4ef0b7458',
    '4e3033562ad74a7d43eb5ff5fc2382622c6307cb10e245ad62da77c4c63cb178',
    '2ea17629472564a59e5eb845a2cdd04f442df2ff26bcc866e400f77158d612a1',
    'b90223df74dd49a8a1461f340f2d7a90f96903ccbb5bc3c74ea3658fc8948b20',
    'e0209f42b927ec9c0f6d6a76007ed540e9bdd6e427b3368a1ea6c5e7565972dd',
    '10d9bd424114319c0999adf6288f74060cd8918ef1228827a6269b2bf0f0880c',
    '7d1978a65ac94dbbcdc62e3d81850299fe157dd9b7bd9e01b170156210d2815a',
    'e052dff9e1c94aaa49556f86fad55029a4875839fda57f5005f4c4403876b256',
    '58d29459b2130a2e151252d408b95e6dac424c564062eb911cc76440cb926ca0',
    '4e4530c392316f598e1bd07f32166380a8f712a33a48e9eb4247131ec5dc05d3',
    'a09c9d3e42342c7dea44edb4aeb48cf6727cacd8032a12cf77a25829fc249d32',
    'eb978d0f1ac03ce5c3510b5f4a16073a7a2bdc15c4ab7777dcf01030cc316667',
    '7d1905a3ace827ea1ac51c4fa08c281ed3be87e7f4e928d696bfde35c8f2dc0f',
    '08359b108fa567f5dcf319fa3434da6abbc1d595f426372666447f09cc5a87dc',
    'a7b3830ffab0f2bbabbef6df0b169a7917008bf238880bbf8c20b8e000077312',
    'b4f5d9b1555994c5ebaebd82918d560a3bf82962a171a1614e7551939e943366',
    '014ecaea1b378900f1212898c6ddb01565d81af1d0ef78df5e28d46e9caf7cfc',
    'bce0aff19cf5aa6a7469a30d61d04e4376e4bbf6381052ee9e7f33925c954d52',
    '4565d7b898ccea3139ad260f9273115f806b30079d7683218c4e3ecd43af3b33',
    'ddadeb660fe8902c9fb2db9b6cf237c9ce5b31753398085c4367eb5910b9cc13',
    'c15a8928131f6687dd10f3c115ddf8d7c8f2df7e18d12c08c4fd16f666ce60ba',
    'ae8e3d799b1353a39815f90eceebefa265cc448fe39faf2008cb20784cb2df9f',
    '98545371a3d9981abe5ab4a32a1d7b2fadd9801d89da52a94a4f78a42740d21c',
    '6323dce2f8b3a04dcea8d205602348c40403cb200c677eb1a1c0fe37edb6eb2f',
    '8150f7c5da910d709ff02ddf85dd293c6a2672633de8cda30f2e0aa58b14b0c4',
    '44d21db70716bd7644cb0d819fa6791805ebc526ea32996a60e41dc753fcfafc',
    'b9b7c375cca45db19466ebd0fe7c9e147948cc42c1c90f0579728cfb2651956d',
    'a47a551b01e55aaaa015531a4fa26a666f1ebd4ba4573898de712b8b5e0ca7e9',
    '60780e9451bdc43cf4530ffc95cbb0c4eb24dae2c39f55f334d679e076c08065',
    '09373f127d34e61dbbaa8bc4499c87074f2ddb10e1b465f506d7d70a15011979',
    '13aaa9b5fb739cdb0e2af99d9ac0a409390adc4d1cb9b41f1ef94f8552060e92',
    '5b0a32f1219524f5d72b00ba1a1b1c09a05ff10c83bb7a86042e42988f2afc06',
    '32796a0a246ea67eb785eda2e045192b9d6e40b9fe2047b21ef0cee929039651',
    'da9ab8930992a9f65eccec4c310882cab428a708e6c899181046a8c73af00855',
    '9c94557382c966753c8cab0957eaedbe1d737b5fcb35c56c220ddd36f8a2d351',
    'd32ab00929cb935b79d44e74c5a745db460ff794dea3b79be40c1cc5cf5388ef',
    'da18797ed7c3a777f0847f429724a2d8cd5138e6ed2895c3fa1a6d39d18f7ec6',
    'f52b23db1fbb6ded89ef42a23ce0c8922c45f25c50b568a93bf1c075420bbb7c',
    '335a461692b30bba1d647cc71604e88e676c90e4c22455d0b8c83f4bd7c8ac9b',
    '3d08c4d7bdda7ec922b0741df357de46e7bd102f9ab7a5c67624ab58da6d9d75',
    'cc63be92e3a900cd067da89473b61b40579b54ef54f8305c2ffcc893743792e9',
    '865447fc4fae01471f2fc973bfb448de00217521ef02e3214d5177ea89c3ef31',
    '3daa582f9563601e290f3cd6d304bff7e25a9ee42a34ffbac5cf2bf40134e0d4',
    '5dda7cb7c2282a55676f8ad5c448092f4a9ebd65338b07ed224fcd7b6c73f5ef',
    '92ca0fa6651ee2f97b884b7246a562fa71250fedefe5ebf270d31c546bfea976',
    '471fb943aa23c511f6f72f8d1652d9c880cfa392ad80503120547703e56a2be5',
    '5099c6a56203f9687f7d33f4bfdf576d31dc91f6b695ecea38b2770c87631135',
    '8d39b60b9c767c58975b270c1d6b13c9b4507e5aee7ad496a3528e4c7f880721',
    '3acc128faf01077789746edcfd1051d90bc1591342402d9b3cdd06d7315702a4',
    'ce1662d4c8b1f54d322593ee8ab385763e51dea92c9b4d56bc0e2f85111f0438',
    'aacb65e7c9055b105cf02c47024cdf79a58229132e66ca0ddf0d74ef6a3fd5c8',
    '478ab134487ede9921619f1eebac30646919d6ab7146c6928c44732ccc897929',
    '6a053848cfe83c0fc8c8a81dd84f6b946c63193cd25cdd5dad45f08be8019e89',
    'ffc555203945df4e81d75f316e4c25fdc0bc4e96412f4f469349eb716f001a7d',
    '81d45be06329d63a2d8a8599d445676933bea1678fc586795b4ecbb838d4d158',
    'd08809a9e5b00fc9266b3813679f40acd6c2596d3de4f28f4d20d98c440aa483',
    'e1796a03c9ed287ef757eee771d116e4dfd8c416f6b5a9e592c1f0e81c0deaa1',
    'b4a4e5d6560fa3e9629064546ac97f14cd4d023c097ccbf06838ccef4fdcd8f1',
    '9b293d748d30240d3ddc496b722fc92d57f665271b060e82410d8de18970dc1d',
    'ef145232e5b19630e0b389891f688161d047c269c7cf22dbff114514572f5813',
    '985f19128703afeee38d22797c0cae5f450cc290a6a5b9253dd908420e9032ff',
    '66f952a83339274eb287b64ef7b028d88915ac6df06a183f7c0436fa2b25107b',
    '46af22be1b576de71971c25e88c18a3295f0ac762a412a11105cef20fa2f5840',
    'e81901f41344683448a03db259d1071c9b2f91001781ae34a0b39a0988381fc2',
    'a5c602c1401ad5029efffaf188f27f9b96b441631a77448551ee337b9dc0e7e8',
    '8317b3fb2181158cfdccfaeb8f8a1736961476717801ae9de7c9a59dc395ef1c',
    '7834d0515667e46923f3a6c054268e06bc2301491b8eda225d1f4317918206fe',
    'f22b2e614e92d6453612b707385038300293d2cc292b148bc5335754b5ea30fd',
    '1d683f2a7c58ac74fab45761235c3e9682f1329b6d96e260a7c67d2d58b233b6',
    'f584eff8c5152fb6b2699806508cdb7148138ecb6dd564b02bfc021fd0ec586a',
    'afa8661046fa83e7c261167f35f6379c00d3a3a9ca46c48fb0bad2c49dda7933',
    '9fedc8a3aa430d6d911b714a151e5f17a4acf52f4239617eec7c9b9d7775612b',
    '8de202b9c283c236da5d2cd5e556de9c1822c19dab36e09f690cf70d3c963e97',
    '31b96fecbf0c2839a29c4acd7098c2701cab152d424e266cf07a16875604365e',
    '3f1a0f65ee12f7efe64477247359af8ef02cf27d104481b4f5922f71432b8178',
    'f4c34f764e0a9e37c080d28f01c4bbe24dad0cc65a88b1fa6b28802a4b799865',
    '85ac7f3761f77772e28c3a9b658aa0e04d9dd3a6bc365c30324948b0ede18b88',
    '448ebbc9e1a31220a2f3830c18eef61b9bd070e5084b7fa2a359fe729184c719',
    '97f5eac07cdc76f1f0faa10b0081cfaff3fab72095680a4516c723fde98916de',
    '6b572b21caa06fc6a1bdab77da3bc07377919088ee96603628354c0b3800661d',
    '27fcdcc7e2ee00f1dcb07aac445a436ab5dee2c14b04621acd387ec50e8efa50',
    'e839cfc21e8e77997e643efa04f7150e6cc68864cbea745aefaf47a9363df709',
    'ba6bad069acc2d0bedf36e2b6cc005d31eb76b0da9de46e09209ff004ae25200',
    '7d3e6ad6d9017d79d15eb518ebbac828d64449c39f0942ee6e7798479e7615a4',
    '697c581d18edb2692249fc07aae307d3cc263033cb32f16ef3c0b57429695a43',
    '7f7193dd3c6c273cdd66488f8aa5dbe3542a22bf0fcda7d6fb93235178c4589e',
    '6e944d621f9e13bc22d4ae68aaa8cb15605ed9680acd7f16e5b0f94149b634cd',
    '491602f722b2a6ef3976a696e286d99e19259d3a4ffb957d18a7128a6fb37a8c',
    'f2b51a1a5c12e9b07f152812895f2ab51a9727021e389555a58507ea7ff16e51',
    'dfabc97f215403a3cc2bcf132a35fc832e87b7de0f2e7560f2ad9d8f06e38b63',
    '73b1f1000c7677ebdcef2a2a25e27b06d9c163209add77a16f0e2b70e56d5c52',
    '21803c877b81b590015dab430568cf4d7c0247eea6147a18ac4fc3492996cb79',
    'b7e3c3ea326a5fd558d70efe2bc6469732a2894dfdeca106093611a4a8d4b025',
    '5ae91d2295e6706191b760661d48e365441de12340006130c42c7b38faa48393',
    'efe3f35371f700217362155403d2b3f912b751d69d6bf80a59a86d4911718651',
    'af37eee16b62d9665944da23a7712f454640ceeb958f20fd33fdd1ee515dabd9',
    '2537ac29dc1561ee49a0bc1aadb863c435a669d18d5e7e890ed3e11a014ce411',
    'e360918d85b02d655ea572d081c83b019691e8665908d6a6fbf9d5673a13d892',
    '37e7218560603527cc8db9a5a1da89fa27df1da7dd9c54c0c7a2405d8a5208a1',
    '621009f0bf8ca1d70eedfa30eb6e2979794469b4e99ee385fd9501712b45cb6a',
    'b1459345163aed1c356302a5230f8912564b04f340610b18ef1aa2c47b418981',
    '82f63a1d007fd9796756abbbf51c246884dde3d79cf9cacacc901462ae75e3ff',
    '78d8ce1ccd46cf92fb4e255f183bc9f355e5e494b3180c0da9154e17a1d61f74',
    '8882ee8501069ba507a3a5f309e8e3f9dcfb13987ec293c60feba4f1fabc5ba7',
    'c62efddbd622094486c1ededca74ad47c8ce4c7661d9f58c2723403bb42b45b6',
    '93301c8548f3afc25d7e157eaf7c8dbf5edb029bd829136600593067cd4b0c5c',
    '19961686c66d9e10e2ce38a14652121e533d5f04bbeea193210cb0a7b88396f3',
    'b454dbe07fb100ea743cd193ea1953a9e6d62a07fde0f3325c362e4f3d7b694f',
    'd280f473c251cb75c91880ea0eca2a2f1cda3152bef54a38c4a3aedad615c819',
    '8b4a544837a1a0280fa8a7c82865c27a1064b3cc6281fda0753566b9bb104a87',
    '7daafa7aed7d63d06a98b7b6f785eab5427d084f30d5c9ee6dd0d2f3ada329e6',
    'dc0b1c61c4001cfe707c52875e026e4eefbafc09ab767f8f3ac55e9c78406e4a',
    'cd855c9ecb3cd846efd1111aeb02c8563f7aef9988ac4c597fab35b4235604c5',
    '28ece33729cdeff79a863cdfa359b51cebe29f8a947954306338c11a89866e62',
    '59a6aed6a44d5a52565289ccc377966b6a1ab41ac339e72475f49bb136befa91',
    '3458d07857503fcadabbc5dfc7b905bc373b77cb058d87feb35443a0aa7ce204',
    '76ccea5a51d93c238bd3a745ff8acd3c848a15c85d12e3d5c9743ecc094773a4',
    '1901da1c9f699b48f6b2636e65cbf73abf99d0441ef67f5c540a42f7051dec6f',
    '747db6ff08731ff7908224c50f71f51fef1283e65341e2dbcdc664f0f41bf8c5',
    '07ff1080d3d4aaed9cd77850c0207e75e7f9697bed15a8cda7057f6a24c010d2',
    '8f0512e800a511953a28bf11bb5e9c305c4026867bc9a31f76cb96fc5bd87027',
    'fed886fe3977e2d21a6b0db5977b8deee5b456d323f8c208d24b8adff08f11de',
    'ea98780a92c30a1038d20bd3d0c87106353306bf9751df5c3c88f9d4b31a0088',
    '121aea684d4d62866514564293f1928c6d4d9e9aa62f2bd2df94f392bf75a838',
    '6f03900ba86980a79f6f8a5d633bd9e8dc9ca30690c86b31ce892d83115a2326',
    '94e9c48301753f123bad54d917d13da64c18b1789da85dc8ed3d8427c56978f7',
    'f934aea49262b4fd587eb74ebe2c69b857aca07876acadc23f89d6c0bbbccdd5',
    '02d53b4529c38363c1ddc9053e3e58bcb6e3001f01c26aa7c4a9e17884cc71e5',
    '018513c8e6cf9ba66351428984e5d44824fee364c26bed1533ca3ece8f3574c3',
    '21209622b064b7f81c5a3524abe7c9708d4585ad4ea21b072ce76993afdd3bf9',
    'aa361163f6b53f6e6de29daae28a336a8f7c05bf5e8a6eeaa46a51bcd66ac7f7',
    'dedff2184de121c60ec94c4cb94a0450cac47257c56afa8f2e11c5f64d3dd661',
    '1d64137df721078b35bdc1a3595a73cebcbe49865fb308c78791540d1d349cd7',
    '9d42d74bac443eafbd9878145b745387eb1397174332564bc8fa6db414ab381f',
    '11a6171d8d193f7cf83315199bb3a7e07e8e00c33e5b620855e0b879cfa4c68c',
    'a9cda05987272ee71100f81f59ad3959b0978a576235c6836eccb65a9577126f',
    'fd53126210abfcb0d6a56c90853b716d02acd8dfa319a60cf51b1a2b4ef6d7f3',
    '17c1453315e3dc1890e8a1c2848d781d207ad73335450e9a236e44c8a2ad3b06',
    'bd2e01835226c56a32ff58df38e6e179830335d4033a40d9c60d269b145c9f6a',
    '3b7a22d9ef089d4aa382eff3deeba73d41e4af58b0967e9c8603d860431c3ec7',
    '7a7f89f00b0e9b1b9e99490a7b9d9ce7740a403047efbb94ad35fd13a35b4ac6',
    '7e47dde9a2e52a0067f80a149abf606ea4ec25690637632d34561432c0738877',
    '5d5771856bd52662bd20e37424abf39e1f3b50264ff09ffd62b3dcc8f05d01f0',
    '6c851b50e115cecfe3b4b910e6a7406af282f9dbcd4ce9cca0db8d488a125f01',
    '5f6e61fa3cdc91285b09f1934b31e426108dfad7ff04c367651f4a59f5c78722',
    'ada6b2683a885f5fef657b8c9b44a44f1e739af8b35c64a51c4072d2a86602c4',
    '3a6a36895262b4af79fdc476e90a9ebc06320e64dd8417b8ebba5f6fec87eaac',
    'c2c67787b86319330e4d0657bc2c0ad67482dff0647b925cc9b8c20a535edc37',
    '6f473cf63f854fb1fa5ad59c463f640dda1a2a1bacac0e15ffa400e663a7f6e7',
    '619a4c7ba6e34fd2246ef3ced6f1e13a5091aa8ea990b59a5e86479c9cb533bf',
    '96e054622771ebf6d4ec206a04c68e0d8bacede86a71a1a546f5e2f8b59178fa',
    'ca9dedc42398e60506e48a2ac95c19882db3c1adeb8da5877e6ad9db4b4c4cd0',
    'f0f1ed236d1a3db9501ff5f2c5cd43d48f2fc30d59cce3155e7f0695c0d529f9',
    '93b2ef94e81337432b267cd50347945f32d9b689b198ccd495215da088ac89b1',
    '69e640e22c3ddd1e1d8391aa4db54aa6ac8aa60ff687a5986f1bea86c49651ab',
    '6f58ce599facae90d94a287e9bf8cb06eaf17da2c293700eeb6bc087fec676b1',
    '5e1c10284710f5c2db48f88de3d051579643a1ed042afa846a7844895351a77b',
    'abf4bafcddb38bbf3855e47b5e61b75dedbcf42aa44ffd4bb85d0b08d97e2682',
    '211882aeac8a599b0a55ec280e1a978923edef69cd86541bcbd58db864c45eac',
    '632a48a7a9a3ac5966a5caa71d456ef1f95f402859df61157cb95ed951237714',
    '6b9425a4c4d39c932fd310704bc144d283f1c090bea989c9b3e96fc0925da531',
    '17610efb99d0f9e4eb1aa13eb1d86289c7dde37d17833ed23dd10e469e2543ff',
    'f5e7bdf4880d87a14055bf371328fe7396315f4848900e7f2471c5edb2a4c23c',
    '5b6cca1b8ac9199d191ea31152d47057fa329994b392db72eda29dbb60d1750c',
    '4b96ec3b91e9f764ac0227ca7df451bd8294cd46298047b43b960ae1c0b0afc5',
    'c6fefe1bfbe6f5364bf0e40447ffca27fde55f1cd815e1fa3bafb46a41c91749',
    '552a69d052ae2980aa92ef44b4a8752fc585d70127d9df1ac53137e266786e4d',
    '369d7da16156c5e2c0d519cdbab3996a7249e20d3e48c36a3a873e987190bd89',
    'ef67e0723230f6c535ff556e45ca2174e1e97deed306e9e87f1b65579076ec06',
    '2cb1e75cd7505a2783769276f30b122cb136fbbd03300510b71a7196ca670b37',
    '1211b6885890be48f89934ec5246f1ce3cfff46c626cfcd686d5fdce9b1fb830',
    'd6a8bdb01e763fb64f3a02512e7be905679a5add6bb408f8750d679d17cad92f',
    '3f8591112c6bbe5c963965954e293108b7208ed2af893e500d859368c654eabe'
  ];

  for (var i = 0; i < expectedValues.length; i++) {
    var hash = new SHA256();
    hash.add(new List<int>.generate(i, (j) => j, growable: false));
    var d = hash.close();
    expect(expectedValues[i], CryptoUtils.bytesToHex(d), reason: '$i');
  }
}

void _testInvalidUse() {
  var sha = new SHA256();
  sha.close();
  expect(() => sha.add([0]), throwsStateError);
}

void _testRepeatedDigest() {
  var sha = new SHA256();
  var digest = sha.close();
  expect(digest, sha.close());
}

void _testStandardVectors(inputs, mds) {
  for (var i = 0; i < inputs.length; i++) {
    var hash = new SHA256();
    hash.add(inputs[i]);
    var d = hash.close();
    expect(mds[i], CryptoUtils.bytesToHex(d), reason: '$i');
  }
}
