Backed out changeset 37bee149c935 (bug 968520) for checktest failures.

This commit is contained in:
Ryan VanderMeulen 2015-06-30 15:47:18 -04:00
parent 55da6fb692
commit 48b4249f49
3 changed files with 0 additions and 81 deletions

View File

@ -1175,31 +1175,6 @@ public:
//
// Mutation methods
//
template<class Allocator, typename ActualAlloc = Alloc>
typename ActualAlloc::ResultType Assign(
const nsTArray_Impl<E, Allocator>& aOther)
{
return ActualAlloc::ConvertBoolToResultType(
!!ReplaceElementsAt<E, ActualAlloc>(0, Length(),
aOther.Elements(), aOther.Length()));
}
template<class Allocator>
/* MOZ_WARN_UNUSED_RESULT */
bool Assign(const nsTArray_Impl<E, Allocator>& aOther,
const mozilla::fallible_t&)
{
return Assign<Allocator, FallibleAlloc>(aOther);
}
template<class Allocator>
void Assign(nsTArray_Impl<E, Allocator>&& aOther)
{
Clear();
SwapElements(aOther);
}
// This method call the destructor on each element of the array, empties it,
// but does not shrink the array's capacity.
// See also SetLengthAndRetainStorage.

View File

@ -1,55 +0,0 @@
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "nsTArray.h"
#include "gtest/gtest.h"
using namespace mozilla;
namespace TestTArray {
const nsTArray<int>& DummyArray()
{
static nsTArray<int> sArray;
if (sArray.IsEmpty()) {
const int data[] = {4, 1, 2, 8};
sArray.AppendElements(data, ArrayLength(data));
}
return sArray;
}
// This returns an invalid nsTArray with a huge length in order to test that
// fallible operations actually fail.
const nsTArray<int>& FakeHugeArray()
{
static nsTArray<int> sArray;
#ifdef DEBUG
if (sArray.IsEmpty()) {
sArray.AppendElement();
((nsTArrayHeader*)sArray.DebugGetHeader())->mLength = UINT32_MAX;
}
#endif
return sArray;
}
TEST(TArray, assign)
{
nsTArray<int> array;
array.Assign(DummyArray());
ASSERT_EQ(DummyArray(), array);
ASSERT_TRUE(array.Assign(DummyArray(), fallible));
ASSERT_EQ(DummyArray(), array);
ASSERT_FALSE(array.Assign(FakeHugeArray(), fallible));
nsTArray<int> array2;
array2.Assign(Move(array));
ASSERT_TRUE(array.IsEmpty());
ASSERT_EQ(DummyArray(), array2);
}
}

View File

@ -17,7 +17,6 @@ UNIFIED_SOURCES += [
'TestStrings.cpp',
'TestStringStream.cpp',
'TestSynchronization.cpp',
'TestTArray.cpp',
'TestThreadPool.cpp',
'TestThreads.cpp',
'TestTimeStamp.cpp',