aboutsummaryrefslogtreecommitdiffhomepage
path: root/conformance
diff options
context:
space:
mode:
authorGravatar Yilun Chong <yilunchong@google.com>2017-06-30 17:23:10 -0700
committerGravatar Yilun Chong <yilunchong@google.com>2017-06-30 17:23:10 -0700
commit5085102d96ce1e0b50c0c8a906217fdb5ec4a387 (patch)
treef72bf63c2016e1e4ec5f6b1673b8d6017509d0c9 /conformance
parent3adb054bbfa83530ca5a5fd54a856755fd72af83 (diff)
remove backup files
Diffstat (limited to 'conformance')
-rw-r--r--conformance/conformance_objc.m~188
-rwxr-xr-xconformance/conformance_php.php~119
-rwxr-xr-xconformance/conformance_ruby.rb~131
3 files changed, 0 insertions, 438 deletions
diff --git a/conformance/conformance_objc.m~ b/conformance/conformance_objc.m~
deleted file mode 100644
index ba1c946f..00000000
--- a/conformance/conformance_objc.m~
+++ /dev/null
@@ -1,188 +0,0 @@
-// Protocol Buffers - Google's data interchange format
-// Copyright 2015 Google Inc. All rights reserved.
-// https://developers.google.com/protocol-buffers/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-// * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-// * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#import <Foundation/Foundation.h>
-
-#import "Conformance.pbobjc.h"
-#import "google/protobuf/TestMessagesProto3.pbobjc.h"
-
-static void Die(NSString *format, ...) __dead2;
-
-static BOOL verbose = NO;
-static int32_t testCount = 0;
-
-static void Die(NSString *format, ...) {
- va_list args;
- va_start(args, format);
- NSString *msg = [[NSString alloc] initWithFormat:format arguments:args];
- NSLog(@"%@", msg);
- va_end(args);
- [msg release];
- exit(66);
-}
-
-static NSData *CheckedReadDataOfLength(NSFileHandle *handle, NSUInteger numBytes) {
- NSData *data = [handle readDataOfLength:numBytes];
- NSUInteger dataLen = data.length;
- if (dataLen == 0) {
- return nil; // EOF.
- }
- if (dataLen != numBytes) {
- Die(@"Failed to read the request length (%d), only got: %@",
- numBytes, data);
- }
- return data;
-}
-
-static ConformanceResponse *DoTest(ConformanceRequest *request) {
- ConformanceResponse *response = [ConformanceResponse message];
- TestAllTypesProto3 *testMessage = nil;
-
- switch (request.payloadOneOfCase) {
- case ConformanceRequest_Payload_OneOfCase_GPBUnsetOneOfCase:
- Die(@"Request didn't have a payload: %@", request);
- break;
-
- case ConformanceRequest_Payload_OneOfCase_ProtobufPayload: {
- if ([request.messageType isEqualToString:@"protobuf_test_messages.proto3.TestAllTypesProto3"]) {
- NSError *error = nil;
- testMessage = [TestAllTypesProto3 parseFromData:request.protobufPayload
- error:&error];
- if (!testMessage) {
- response.parseError =
- [NSString stringWithFormat:@"Parse error: %@", error];
- }
- } else if ([request.messageType isEqualToString:@"protobuf_test_messages.proto2.TestAllTypesProto2"]) {
- response.skipped = @"ObjC doesn't support proto2";
- break;
- } else {
- Die(@"Protobuf request doesn't have specific payload type");
- break;
- }
- break;
- }
-
- case ConformanceRequest_Payload_OneOfCase_JsonPayload:
- response.skipped = @"ObjC doesn't support parsing JSON";
- break;
- }
-
- if (testMessage) {
- switch (request.requestedOutputFormat) {
- case WireFormat_GPBUnrecognizedEnumeratorValue:
- case WireFormat_Unspecified:
- Die(@"Unrecognized/unspecified output format: %@", request);
- break;
-
- case WireFormat_Protobuf:
- response.protobufPayload = testMessage.data;
- if (!response.protobufPayload) {
- response.serializeError =
- [NSString stringWithFormat:@"Failed to make data from: %@", testMessage];
- }
- break;
-
- case WireFormat_Json:
- response.skipped = @"ObjC doesn't support generating JSON";
- break;
- }
- }
-
- return response;
-}
-
-static uint32_t UInt32FromLittleEndianData(NSData *data) {
- if (data.length != sizeof(uint32_t)) {
- Die(@"Data not the right size for uint32_t: %@", data);
- }
- uint32_t value;
- memcpy(&value, data.bytes, sizeof(uint32_t));
- return CFSwapInt32LittleToHost(value);
-}
-
-static NSData *UInt32ToLittleEndianData(uint32_t num) {
- uint32_t value = CFSwapInt32HostToLittle(num);
- return [NSData dataWithBytes:&value length:sizeof(uint32_t)];
-}
-
-static BOOL DoTestIo(NSFileHandle *input, NSFileHandle *output) {
- // See conformance_test_runner.cc for the wire format.
- NSData *data = CheckedReadDataOfLength(input, sizeof(uint32_t));
- if (!data) {
- // EOF.
- return NO;
- }
- uint32_t numBytes = UInt32FromLittleEndianData(data);
- data = CheckedReadDataOfLength(input, numBytes);
- if (!data) {
- Die(@"Failed to read request");
- }
-
- NSError *error = nil;
- ConformanceRequest *request = [ConformanceRequest parseFromData:data
- error:&error];
- if (!request) {
- Die(@"Failed to parse the message data: %@", error);
- }
-
- ConformanceResponse *response = DoTest(request);
- if (!response) {
- Die(@"Failed to make a reply from %@", request);
- }
-
- data = response.data;
- [output writeData:UInt32ToLittleEndianData((int32_t)data.length)];
- [output writeData:data];
-
- if (verbose) {
- NSLog(@"Request: %@", request);
- NSLog(@"Response: %@", response);
- }
-
- ++testCount;
- return YES;
-}
-
-int main(int argc, const char *argv[]) {
- @autoreleasepool {
- NSFileHandle *input = [[NSFileHandle fileHandleWithStandardInput] retain];
- NSFileHandle *output = [[NSFileHandle fileHandleWithStandardOutput] retain];
-
- BOOL notDone = YES;
- while (notDone) {
- @autoreleasepool {
- notDone = DoTestIo(input, output);
- }
- }
-
- NSLog(@"Received EOF from test runner after %d tests, exiting.", testCount);
- }
- return 0;
-}
diff --git a/conformance/conformance_php.php~ b/conformance/conformance_php.php~
deleted file mode 100755
index ca2292ad..00000000
--- a/conformance/conformance_php.php~
+++ /dev/null
@@ -1,119 +0,0 @@
-<?php
-
-require_once("Conformance/WireFormat.php");
-require_once("Conformance/ConformanceResponse.php");
-require_once("Conformance/ConformanceRequest.php");
-require_once("Google/Protobuf/Any.php");
-require_once("Google/Protobuf/Duration.php");
-require_once("Google/Protobuf/FieldMask.php");
-require_once("Google/Protobuf/Struct.php");
-require_once("Google/Protobuf/Value.php");
-require_once("Google/Protobuf/ListValue.php");
-require_once("Google/Protobuf/NullValue.php");
-require_once("Google/Protobuf/Timestamp.php");
-require_once("Google/Protobuf/DoubleValue.php");
-require_once("Google/Protobuf/BytesValue.php");
-require_once("Google/Protobuf/FloatValue.php");
-require_once("Google/Protobuf/Int64Value.php");
-require_once("Google/Protobuf/UInt32Value.php");
-require_once("Google/Protobuf/BoolValue.php");
-require_once("Google/Protobuf/DoubleValue.php");
-require_once("Google/Protobuf/Int32Value.php");
-require_once("Google/Protobuf/StringValue.php");
-require_once("Google/Protobuf/UInt64Value.php");
-require_once("Protobuf_test_messages/Proto3/ForeignMessage.php");
-require_once("Protobuf_test_messages/Proto3/ForeignEnum.php");
-require_once("Protobuf_test_messages/Proto3/TestAllTypes.php");
-require_once("Protobuf_test_messages/Proto3/TestAllTypes_NestedMessage.php");
-require_once("Protobuf_test_messages/Proto3/TestAllTypes_NestedEnum.php");
-
-require_once("GPBMetadata/Conformance.php");
-require_once("GPBMetadata/Google/Protobuf/Any.php");
-require_once("GPBMetadata/Google/Protobuf/Duration.php");
-require_once("GPBMetadata/Google/Protobuf/FieldMask.php");
-require_once("GPBMetadata/Google/Protobuf/Struct.php");
-require_once("GPBMetadata/Google/Protobuf/Timestamp.php");
-require_once("GPBMetadata/Google/Protobuf/Wrappers.php");
-require_once("GPBMetadata/Google/Protobuf/TestMessagesProto3.php");
-
-use \Conformance\WireFormat;
-
-$test_count = 0;
-
-function doTest($request)
-{
- $test_message = new \Protobuf_test_messages\Proto3\TestAllTypes();
- $response = new \Conformance\ConformanceResponse();
- if ($request->getPayload() == "protobuf_payload") {
- if ($request->getMessageType() == "protobuf_test_messages.proto3.TestAllTypes") {
- try {
- $test_message->mergeFromString($request->getProtobufPayload());
- } catch (Exception $e) {
- $response->setParseError($e->getMessage());
- return $response;
- }
- } elseif ($request->getMessageType() == "protobuf_test_messages.proto2.TestAllTypesProto2") {
- $response->setSkipped("PHP doesn't support proto2");
- return $response;
- } else {
- trigger_error("Protobuf request doesn't have specific payload type", E_USER_ERROR);
- }
- } elseif ($request->getPayload() == "json_payload") {
- try {
- $test_message->jsonDecode($request->getJsonPayload());
- } catch (Exception $e) {
- $response->setParseError($e->getMessage());
- return $response;
- }
- } else {
- trigger_error("Request didn't have payload.", E_USER_ERROR);
- }
-
- if ($request->getRequestedOutputFormat() == WireFormat::UNSPECIFIED) {
- trigger_error("Unspecified output format.", E_USER_ERROR);
- } elseif ($request->getRequestedOutputFormat() == WireFormat::PROTOBUF) {
- $response->setProtobufPayload($test_message->serializeToString());
- } elseif ($request->getRequestedOutputFormat() == WireFormat::JSON) {
- $response->setJsonPayload($test_message->jsonEncode());
- }
-
- return $response;
-}
-
-function doTestIO()
-{
- $length_bytes = fread(STDIN, 4);
- if (strlen($length_bytes) == 0) {
- return false; # EOF
- } elseif (strlen($length_bytes) != 4) {
- trigger_error("I/O error", E_USER_ERROR);
- }
-
- $length = unpack("V", $length_bytes)[1];
- $serialized_request = fread(STDIN, $length);
- if (strlen($serialized_request) != $length) {
- trigger_error("I/O error", E_USER_ERROR);
- }
-
- $request = new \Conformance\ConformanceRequest();
- $request->mergeFromString($serialized_request);
-
- $response = doTest($request);
-
- $serialized_response = $response->serializeToString();
- fwrite(STDOUT, pack("V", strlen($serialized_response)));
- fwrite(STDOUT, $serialized_response);
-
- $GLOBALS['test_count'] += 1;
-
- return true;
-}
-
-while(true){
- if (!doTestIO()) {
- fprintf(STDERR,
- "conformance_php: received EOF from test runner " +
- "after %d tests, exiting\n", $test_count);
- exit;
- }
-}
diff --git a/conformance/conformance_ruby.rb~ b/conformance/conformance_ruby.rb~
deleted file mode 100755
index df63bf7c..00000000
--- a/conformance/conformance_ruby.rb~
+++ /dev/null
@@ -1,131 +0,0 @@
-#!/usr/bin/env ruby
-#
-# Protocol Buffers - Google's data interchange format
-# Copyright 2008 Google Inc. All rights reserved.
-# https://developers.google.com/protocol-buffers/
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-require 'conformance_pb'
-require 'google/protobuf/test_messages_proto3_pb'
-
-$test_count = 0
-$verbose = false
-
-def do_test(request)
- test_message = ProtobufTestMessages::Proto3::TestAllTypesProto3.new
- response = Conformance::ConformanceResponse.new
-
- begin
- case request.payload
- when :protobuf_payload
- if request.message_type.eql?('protobuf_test_messages.proto3.TestAllTypesProto3')
- begin
- test_message = ProtobufTestMessages::Proto3::TestAllTypesProto3.decode(
- request.protobuf_payload)
- rescue Google::Protobuf::ParseError => err
- response.parse_error = err.message.encode('utf-8')
- return response
- end
- elsif request.message_type.eql?('protobuf_test_messages.proto2.TestAllTypesProto2')
- response.skipped = "Ruby doesn't support proto2"
- return response
- else
- fail "Protobuf request doesn't have specific payload type"
- end
-
- when :json_payload
- begin
- test_message = ProtobufTestMessages::Proto3::TestAllTypesProto3.decode_json(
- request.json_payload)
- rescue Google::Protobuf::ParseError => err
- response.parse_error = err.message.encode('utf-8')
- return response
- end
-
- when nil
- fail "Request didn't have payload"
- end
-
- case request.requested_output_format
- when :UNSPECIFIED
- fail 'Unspecified output format'
-
- when :PROTOBUF
- response.protobuf_payload = test_message.to_proto
-
- when :JSON
- response.json_payload = test_message.to_json
-
- when nil
- fail "Request didn't have requested output format"
- end
- rescue StandardError => err
- response.runtime_error = err.message.encode('utf-8')
- end
-
- response
-end
-
-# Returns true if the test ran successfully, false on legitimate EOF.
-# If EOF is encountered in an unexpected place, raises IOError.
-def do_test_io
- length_bytes = STDIN.read(4)
- return false if length_bytes.nil?
-
- length = length_bytes.unpack('V').first
- serialized_request = STDIN.read(length)
- if serialized_request.nil? || serialized_request.length != length
- fail IOError
- end
-
- request = Conformance::ConformanceRequest.decode(serialized_request)
-
- response = do_test(request)
-
- serialized_response = Conformance::ConformanceResponse.encode(response)
- STDOUT.write([serialized_response.length].pack('V'))
- STDOUT.write(serialized_response)
- STDOUT.flush
-
- if $verbose
- STDERR.puts("conformance_ruby: request=#{request.to_json}, " \
- "response=#{response.to_json}\n")
- end
-
- $test_count += 1
-
- true
-end
-
-loop do
- unless do_test_io
- STDERR.puts('conformance_ruby: received EOF from test runner ' \
- "after #{$test_count} tests, exiting")
- break
- end
-end