Sha256: 317e49acff1ee443fe472a56d82f4a2cf43c7f296550a52eacb7a999c6dbd31a

Contents?: true

Size: 1.88 KB

Versions: 84

Compression:

Stored size: 1.88 KB

Contents

#include "TestSupport.h"
#include "Utils/Base64.h"

using namespace Passenger;
using namespace std;

namespace tut {
	struct Base64Test {
	};
	
	DEFINE_TEST_GROUP(Base64Test);

	TEST_METHOD(1) {
		// Test encoding.
		ensure_equals(Base64::encode(""), "");
		ensure_equals(Base64::encode("a"), "YQ==");
		ensure_equals(Base64::encode("b"), "Yg==");
		ensure_equals(Base64::encode("ab"), "YWI=");
		ensure_equals(Base64::encode("abc"), "YWJj");
		ensure_equals(Base64::encode("abcd"), "YWJjZA==");
		ensure_equals(Base64::encode("\1\2\3\4\5\6\7\255"), "AQIDBAUGB60=");
		ensure_equals(Base64::encode("The gamma-ray burst from April 23, a "
			"powerful explosion from a dying star, was detected by the "
			"Swift satellite using on-board gamma-ray and X-ray instruments."),
			"VGhlIGdhbW1hLXJheSBidXJzdCBmcm9tIEFwcmlsIDIzLCBhIHBvd2VyZnVs"
			"IGV4cGxvc2lvbiBmcm9tIGEgZHlpbmcgc3Rhciwgd2FzIGRldGVjdGVkIGJ5"
			"IHRoZSBTd2lmdCBzYXRlbGxpdGUgdXNpbmcgb24tYm9hcmQgZ2FtbWEtcmF5"
			"IGFuZCBYLXJheSBpbnN0cnVtZW50cy4=");
		
		ensure_equals(Base64::encodeForUrl("\003\340\177X"), "A-B_WA");
	}
	
	TEST_METHOD(2) {
		// Test decoding.
		ensure_equals(Base64::decode(""), "");
		ensure_equals(Base64::decode("YQ=="), "a");
		ensure_equals(Base64::decode("Yg=="), "b");
		ensure_equals(Base64::decode("YWI="), "ab");
		ensure_equals(Base64::decode("YWJj"), "abc");
		ensure_equals(Base64::decode("YWJjZA=="), "abcd");
		ensure_equals(Base64::decode("AQIDBAUGB60="), "\1\2\3\4\5\6\7\255");
		ensure_equals(Base64::decode("VGhlIGdhbW1hLXJheSBidXJzdCBmcm9tIEFwcmlsIDIzLCBhIHBvd2VyZnVs"
			"IGV4cGxvc2lvbiBmcm9tIGEgZHlpbmcgc3Rhciwgd2FzIGRldGVjdGVkIGJ5"
			"IHRoZSBTd2lmdCBzYXRlbGxpdGUgdXNpbmcgb24tYm9hcmQgZ2FtbWEtcmF5"
			"IGFuZCBYLXJheSBpbnN0cnVtZW50cy4="),
			"The gamma-ray burst from April 23, a "
			"powerful explosion from a dying star, was detected by the "
			"Swift satellite using on-board gamma-ray and X-ray instruments.");
	}
}

Version data entries

84 entries across 84 versions & 4 rubygems

Version Path
passenger-4.0.60 test/cxx/Base64Test.cpp
passenger-4.0.59 test/cxx/Base64Test.cpp
passenger-4.0.58 test/cxx/Base64Test.cpp
passenger-4.0.57 test/cxx/Base64Test.cpp
passenger-4.0.56 test/cxx/Base64Test.cpp
passenger-4.0.55 test/cxx/Base64Test.cpp
passenger-4.0.53 test/cxx/Base64Test.cpp
passenger-4.0.52 test/cxx/Base64Test.cpp
passenger-4.0.51 test/cxx/Base64Test.cpp
passenger-4.0.50 test/cxx/Base64Test.cpp
passenger-4.0.49 test/cxx/Base64Test.cpp
passenger-4.0.48 test/cxx/Base64Test.cpp
passenger-4.0.46 test/cxx/Base64Test.cpp
passenger-4.0.45 test/cxx/Base64Test.cpp
passenger-4.0.44 test/cxx/Base64Test.cpp
passenger-4.0.43 test/cxx/Base64Test.cpp
passenger-4.0.42 test/cxx/Base64Test.cpp
passenger-4.0.41 test/cxx/Base64Test.cpp
passenger-4.0.40 test/cxx/Base64Test.cpp
passenger-4.0.39 test/cxx/Base64Test.cpp