C# Класс IronRuby.Tests.Tests

Показать файл Открыть проект Примеры использования класса

Открытые методы

Метод Описание
AllowedSingletons1 ( ) : void
AllowedSingletons2 ( ) : void
AmbiguousMatch1 ( ) : void
BEGIN1 ( ) : void
BEGIN2 ( ) : void
BlockArity1 ( ) : void
BlockDefinition1 ( ) : void
BlockEmpty ( ) : void
BlockParameterSyntax1 ( ) : void
BlockReturnOptimization1 ( ) : void

Block return propagates thru a single library method with a block without throwing unwinding exception.

BlockReturnOptimization2 ( ) : void

Block return propagates thru multiple library method calls with a block without throwing unwinding exception.

BlockReturnOptimization3 ( ) : void

Block return propagates thru user method calls with a block without throwing unwinding exception.

BlockReturnOptimization4 ( ) : void

An unwinding exception is thrown if any frame is called w/o a block.

BlockReturnOptimization5 ( ) : void

Return propagates thru proc/lambda calls.

BlockReturnOptimization6 ( ) : void

Return propagates thru proc/lambda calls.

BlockReturnOptimization7 ( ) : void

Return propagates thru yield in a block.

Block_ProcParams1 ( ) : void
ClassSingletons1 ( ) : void

Cannot instantiate singleton(class).

ClassVariables1 ( ) : void
ConstantCaching_AutoUpdating1A ( ) : void
ConstantCaching_AutoUpdating1B ( ) : void
ConstantCaching_CrossRuntime1 ( ) : void
ConstantCaching_Qualified1 ( ) : void
ConstantCaching_Qualified2 ( ) : void
ConstantCaching_Qualified_IsDefined1 ( ) : void
ConstantCaching_Qualified_IsDefined2 ( ) : void
ConstantCaching_Unqualified1 ( ) : void
ConstantCaching_Unqualified2 ( ) : void
ConstantCaching_Unqualified3 ( ) : void
ConstantCaching_Unqualified4 ( ) : void

GlobalConstantAccess version needs to be invalidate on inclusion.

ConstantCaching_Unqualified5 ( ) : void

module_eval {} in Ruby 1.9 changes constant lookup chain.

ConstantCaching_Unqualified6 ( ) : void

Update of strong value needs to set the weak value as well (and vice versa).

ConstantCaching_Unqualified7 ( ) : void

Check to see whether we don't unwrap WeakReferences accidentally, preserve object identity and unwrap null correctly.

ConstantCaching_Unqualified_IsDefined1 ( ) : void
ConstantNames ( ) : void
Constants1A ( ) : void
Constants1B ( ) : void
Constants3 ( ) : void

Class/module def makes name of the constant by appending its simple name to the name of the lexically containing class/module.

Constants4 ( ) : void

Top-level class/module definition does look-up in Object and all its mixins.

CrossRuntime1 ( ) : void
CrossRuntime2 ( ) : void
CustomTypeDescriptor1 ( ) : void
CustomTypeDescriptor2 ( ) : void
DefineMethod1 ( ) : void
DefineMethod2 ( ) : void

define_method and class_eval change owner of the method definition.

DummySingletons1 ( ) : void
DummySingletons2 ( ) : void
Encoding_Host2 ( ) : void
EvalBreak1 ( ) : void
EvalBreak2 ( ) : void

Break from a block called via Proc#call.

EvalBreak3 ( ) : void
EvalNext1 ( ) : void
EvalRedo1 ( ) : void
EvalRetry1 ( ) : void

Block needs to set InLoop and InRescue flags on RFC to "false".

EvalRetry2 ( ) : void
EvalReturn1 ( ) : void
EvalReturn2 ( ) : void
EvalReturn3 ( ) : void
EvalReturn4 ( ) : void
File1 ( ) : void
GlobalConstants1 ( ) : void

The default interop constant_missing looks to scope only if called on Object.

HostingDefaultOptions1 ( ) : void
Interactive1 ( ) : void
Interactive2 ( ) : void
InvokeMemberCache1 ( ) : void
LibraryLoader1 ( ) : void
LibraryLoader2 ( ) : void
Load1 ( ) : void
LoadAndGlobalConstants ( ) : void

Global constants defined in loaded code are defined on the anonymous module created by the load.

Loader_Assemblies1 ( ) : void
MainSingleton1 ( ) : void
MainSingleton2 ( ) : void
MethodToProc1 ( ) : void

TODO: 1.9 actually doesn't allow proc.binding

ModuleSingletons1 ( ) : void

Singleton(module)'s super-class is singleton(Module).

MutableString_IndexRegex1 ( ) : void
NamesEncoding1 ( ) : void
NumericLiterals1 ( ) : void
NumericOps1 ( ) : void
ObjectOperations1 ( ) : void
ObjectOperations2 ( ) : void
OverloadResolution_Block1 ( ) : void
OverloadResolution_Numeric1 ( ) : void
OverloadResolution_ParamArrays1 ( ) : void
ParseBigInts1 ( ) : void
ParseIntegers1 ( ) : void
ParseSymbols1 ( ) : void
Parser1 ( ) : void
ProcCallCaching1 ( ) : void
ProcNew1 ( ) : void
ProcNew2 ( ) : void
ProcNew3 ( ) : void
ProcNew4 ( ) : void
ProcPosition1 ( ) : void
ProcSelf1 ( ) : void
ProcYieldCaching1 ( ) : void
Proc_RhsAndBlockArguments1 ( ) : void
PythonInterop1 ( ) : void
PythonInterop2 ( ) : void
PythonInterop3 ( ) : void
PythonInterop4 ( ) : void
PythonInterop5 ( ) : void
PythonInterop_Indexers_Fallback1 ( ) : void
PythonInterop_InvokeMember_Fallback1 ( ) : void

Python falls back if the member is not defined and Ruby then invokes the member with original casing.

PythonInterop_InvokeMember_Fallback2 ( ) : void

Python falls back if the member is not defined and Ruby then invokes the member with original casing.

PythonInterop_NamedIndexers1 ( ) : void

We convert a call to a setter with multiple parameters to a GetMember + SetIndex. This makes indexed properties on foreign meta-objects work.

PythonInterop_Operators_Fallback1 ( ) : void
Regex1 ( ) : void
Regex2 ( ) : void
RegexCondition1 ( ) : void
RegexCondition2 ( ) : void
RegexEscape1 ( ) : void
Require1 ( ) : void
RequireInterop1 ( ) : void
RequireInterop2 ( ) : void
Return1 ( ) : void
Return2 ( ) : void
Return3 ( ) : void
Return4 ( ) : void
Return5 ( ) : void
Return6 ( ) : void
Return7 ( ) : void
Return8 ( ) : void
RubyBlocks0 ( ) : void
RubyBlocks10A ( ) : void

Retry in a block.

RubyBlocks10B ( ) : void

Retry in a block called via Proc#call.

RubyBlocks11 ( ) : void

Return with stack unwinding.

RubyBlocks12 ( ) : void
RubyBlocks13 ( ) : void
RubyBlocks14A ( ) : void

Nested yielding.

RubyBlocks14B ( ) : void

Covers RubyOps.YieldBlockBreak.

RubyBlocks14C ( ) : void

Covers RubyOps.YieldBlockBreak error path.

RubyBlocks15 ( ) : void

Retry for-loop: for-loop should behave like x.each { } method call with a block, that is x is reevaluted on retry.

RubyBlocks16 ( ) : void

Tests optimization of block break from another block. Yield yields to a block that breaks to its proc-converter, which is foo. So the example should retrun 1 from the foo call. Break is propagated thru yields in two ways: 1) returning ReturnReason == Break via BlockParam (fast path) 2) throwing MethodUnwinder exception (slow path) ReturnReason should be propagated by yields as long as the owner of the block that contains the yield is the target frame for the break. That's the case for for-loop blocks in this test.

RubyBlocks17 ( ) : void

Retry is propagated to the 'each' call.

RubyBlocks18 ( ) : void
RubyBlocks2 ( ) : void
RubyBlocks3 ( ) : void
RubyBlocks5 ( ) : void
RubyBlocks6 ( ) : void

Return, yield and retry in a method.

RubyBlocks7 ( ) : void

Break in a block.

RubyBlocks8 ( ) : void

Redo in a block.

RubyBlocks9 ( ) : void

Next in a block.

RubyBlocks_Params1 ( ) : void
RubyBlocks_Params2 ( ) : void
RubyBlocks_Params3 ( ) : void
RubyHosting1A ( ) : void
RubyHosting1B ( ) : void
RubyHosting1C ( ) : void
RubyHosting1D ( ) : void
RubyHosting1E ( ) : void

missing_method on scope forwards to super class if the variable is not defined in scope; unmangled name is used if available and the mangled is not found in the scope.

RubyHosting1F ( ) : void

method_missing on main singleton can be invoked directly.

RubyHosting2 ( ) : void
RubyHosting3 ( ) : void
RubyHosting4 ( ) : void
RubyHosting5 ( ) : void
RubyHosting_DelegateConversions ( ) : void
RubyHosting_Scopes1 ( ) : void
RubyHosting_Scopes2 ( ) : void
RubyHosting_Scopes3 ( ) : void
RubyProcArgConversion1 ( ) : void
RubyProcArgConversion2 ( ) : void
RubyProcArgConversion3 ( ) : void
RubyProcArgConversion4 ( ) : void
RubyProcs1 ( ) : void
RubyProcs2 ( ) : void

Assigning to a block parameter should not affect yield.

Scenario_CaseSplatting1 ( ) : void
Scenario_ClassVariables1 ( ) : void
Scenario_ClassVariables2 ( ) : void
Scenario_ClassVariables_Singletons ( ) : void
Scenario_Globals1 ( ) : void
Scenario_MainSingleton ( ) : void
Scenario_ParserLogging ( ) : void
Scenario_RubyArgSplatting1 ( ) : void
Scenario_RubyArgSplatting2 ( ) : void
Scenario_RubyArgSplatting3 ( ) : void
Scenario_RubyArgSplatting4 ( ) : void

Splat anything that's IList (including arrays and values passed via out parameters).

Scenario_RubyArgSplatting5 ( ) : void
Scenario_RubyArgSplatting6 ( ) : void
Scenario_RubyBlockArgs3 ( ) : void

RHS is list, LHS is not simple, but contains splatting.

Scenario_RubyBlockArgs4A ( ) : void

!L(1,-) && R(0,*), empty array to splat.

Scenario_RubyBlockArgs4B ( ) : void

Anonymous unsplat parameters.

Scenario_RubyBlockArgs5 ( ) : void
Scenario_RubyBlockArgs6 ( ) : void
Scenario_RubyBlockExpressions1 ( ) : void
Scenario_RubyClassVersions1 ( ) : void
Scenario_RubyClassVersions2 ( ) : void
Scenario_RubyClosures1 ( ) : void
Scenario_RubyConsole1 ( ) : void
Scenario_RubyInclusions1 ( ) : void
Scenario_RubyLocals1 ( ) : void
Scenario_RubyMath1 ( ) : void
Scenario_RubyMethodMissing1 ( ) : void
Scenario_RubyMethodMissing2 ( ) : void
Scenario_RubyParams1 ( ) : void
Scenario_RubyParams2 ( ) : void
Scenario_RubyProcCallArgs1 ( ) : void
Scenario_RubyProcCallArgs2A ( ) : void
Scenario_RubyProcCallArgs2B ( ) : void
Scenario_RubyProcCallArgs2C ( ) : void
Scenario_RubyProcCallArgs2D ( ) : void

Tests MRI inconsistency in Yield1 vs YieldNoSplat1 when invoked from Call1.

Scenario_RubyProcYieldArgs1 ( ) : void
Scenario_RubyProcYieldArgs2 ( ) : void
Scenario_RubyProcYieldArgs3 ( ) : void
Scenario_RubyProcYieldArgs4 ( ) : void
Scenario_RubyScopeParsing ( ) : void
Scenario_RubyScopes1 ( ) : void

Tests that class lexical scopes are applied to method definitions.

Scenario_RubyScopes2A ( ) : void

Uninitialized local variables.

Scenario_RubyScopes2B ( ) : void

Uninitialized local variables in closure.

Scenario_RubyScopes3 ( ) : void

Tests that variables defined in module/class locals scope are not visible outside.

Scenario_RubyScopes4 ( ) : void
Scenario_RubyScopes5 ( ) : void
Scenario_RubyScopes6 ( ) : void

Nested module scopes - they don't have DLR tuples and therefore need to be skipped when looking up a storage from closure.

Scenario_RubySingletonConstants1 ( ) : void
Scenario_RubyThreads1 ( ) : void
Scenario_Startup ( ) : void
Scenario_UninitializedVars1 ( ) : void
Scenario_UninitializedVars2 ( ) : void
Scenario_YieldCodeGen ( ) : void
SingletonCaching1 ( ) : void
SingletonCaching2A ( ) : void

IRubyObjects.

SingletonCaching2B ( ) : void

Object.

SingletonCaching2C ( ) : void

CLR types.

SingletonMethodDefinitionOnSingletons1 ( ) : void
Singletons1A ( ) : void

Ruby class.

Singletons1B ( ) : void

Object.

Singletons1C ( ) : void

A subclass of a CLR class.

Singletons1D ( ) : void

A CLR class.

Singletons1_Test ( string className, string inherits ) : void
Singletons2 ( ) : void
Singletons3 ( ) : void
SplattingProtocol1 ( ) : void
Strings0 ( ) : void
Strings1 ( ) : void
Strings2 ( ) : void
Strings3 ( ) : void
Strings4 ( ) : void
Strings5 ( ) : void
Strings6 ( ) : void
Strings7 ( ) : void
Strings8 ( ) : void
Strings9 ( ) : void
StringsPlus ( ) : void
SymbolToProc1 ( ) : void
Symbols1 ( ) : void
Test_Reverse ( byte b, RubyEncoding e, byte expected ) : void
Tests ( Driver driver ) : System
ToSConversion1 ( ) : void

Embedded string does call "to_s" w/o calling "respond_to?" first.

ToSConversion2 ( ) : void
TokenCategorizer2 ( ) : void
TokenizeIdentifiers1 ( ) : void
UnqualifiedConstants1 ( ) : void

Unqualified constant lookup should search in lexical scopes from inner most to the outer most looking into modules for constant declared in those modules and their mixins. It shouldn't look to base classes nor mixins.

UnqualifiedConstants2 ( ) : void

If a constant is not found in the current scope chain, the inner-most module scope's module/class and its ancestors are checked.

Приватные методы

Метод Описание
AssertTokenBigInteger ( string source, int @base ) : IronRuby.Tests.AssertTokenizer
AssertTokens ( string source ) : void
AstLocations1 ( ) : void
B ( string str ) : byte[]
BEGIN3 ( ) : void
CharacterToken1 ( ) : void
CreateParamsArrayMethod ( string name, Type paramTypes, int paramsArrayIndex, int returnValue ) : OverloadInfo
Dir1 ( ) : void
Dir2 ( ) : void
Encoding1 ( ) : void
Encoding2 ( ) : void
Encoding4 ( ) : void
Encoding_Host1 ( ) : void
Encoding_HostHelper ( Encoding encoding, string specialChars, bool shouldSucceed ) : void
File_AppendBytes1 ( ) : void
File_ReadLine1 ( ) : void
File_WriteBytes1 ( ) : void
GetInstanceMethods ( Type type, string name ) : OverloadInfo[]
GetStaticMethods ( Type type, string name ) : OverloadInfo[]
Heredoc1 ( ) : void
Identifiers2 ( ) : void
Inspect1 ( ) : void
Inspect2 ( ) : void
LexicalState1 ( ) : void
MO ( object value ) : DynamicMetaObject
MS ( byte data ) : MutableString
MS ( byte data, RubyEncoding e ) : MutableString
MS ( string data ) : MutableString
MS ( string data, RubyEncoding e ) : MutableString
MutableString_Append ( ) : void
MutableString_Append_Byte ( ) : void
MutableString_Append_Char ( ) : void
MutableString_Bytes1 ( ) : void
MutableString_ChangeEncoding1 ( ) : void
MutableString_Characters1 ( ) : void
MutableString_CompareTo1 ( ) : void
MutableString_CompareTo2 ( ) : void
MutableString_Concatenate ( ) : void
MutableString_Factories ( ) : void
MutableString_GetHashCode ( ) : void
MutableString_Index1 ( ) : void
MutableString_IndexOf1 ( ) : void
MutableString_Insert_Byte ( ) : void
MutableString_Insert_Char ( ) : void
MutableString_IsAscii ( ) : void
MutableString_LastIndexOf1 ( ) : void
MutableString_Length ( ) : void
MutableString_Remove_Byte ( ) : void
MutableString_Remove_Char ( ) : void
MutableString_Reverse ( ) : void
MutableString_StartsWith1 ( ) : void
MutableString_Surrogates1 ( ) : void
MutableString_Surrogates2 ( ) : void
MutableString_SwitchRepr ( ) : void
MutableString_Translate1 ( ) : void
MutableString_ValidEncoding1 ( ) : void
NewAssertTokenizer ( ) : AssertTokenizer
ParserErrors1 ( ) : void
ParserLoggingTest ( ) : void
RegexEncoding1 ( ) : void
RegexEncoding2 ( ) : void
RegexTransform1 ( ) : void
RegexTransform2 ( ) : void
Sjis ( string str ) : byte[]
TestBigInt ( string number, int @base ) : void
TestBigInt ( string number, int @base, int repeat ) : void
TestChars ( MutableString str ) : void
TestChars ( MutableString str, MutableString remaining ) : void
TestChars ( MutableString str, string expected ) : void
TestCorrectPatternTranslation ( string pattern, RubyRegexOptions options, string expected, bool expectedGAnchor ) : void
TestCorrectPatternTranslation ( string pattern, string expected ) : void
TestReadLine ( RubyBufferedStream io, bool preserveEolns, string expected ) : void
Test_Concatenate ( byte b1, RubyEncoding e1, byte b2, RubyEncoding e2, RubyEncoding resultEncoding ) : void
Test_Translate ( byte bself, RubyEncoding eself, byte bfrom, RubyEncoding efrom, byte bto, RubyEncoding eto, byte expected, RubyEncoding expectedEncoding ) : void
TokenCategorizer1 ( ) : void
TokenizeEolns1 ( ) : void
TokenizeEscapes1 ( ) : void
TokenizeEscapes2 ( ) : void
TokenizeGlobalVariables1 ( ) : void
TokenizeInstanceClassVariables1 ( ) : void
TokenizeNumbers1 ( ) : void
TokenizeRegex1 ( ) : void
TokenizeStrings1 ( ) : void
TokenizeStrings2 ( ) : void
UnicodeEscapes1 ( ) : void
Utf8 ( string str ) : byte[]

Описание методов

AllowedSingletons1() публичный Метод

public AllowedSingletons1 ( ) : void
Результат void

AllowedSingletons2() публичный Метод

public AllowedSingletons2 ( ) : void
Результат void

AmbiguousMatch1() публичный Метод

public AmbiguousMatch1 ( ) : void
Результат void

BEGIN1() публичный Метод

public BEGIN1 ( ) : void
Результат void

BEGIN2() публичный Метод

public BEGIN2 ( ) : void
Результат void

BlockArity1() публичный Метод

public BlockArity1 ( ) : void
Результат void

BlockDefinition1() публичный Метод

public BlockDefinition1 ( ) : void
Результат void

BlockEmpty() публичный Метод

public BlockEmpty ( ) : void
Результат void

BlockParameterSyntax1() публичный Метод

public BlockParameterSyntax1 ( ) : void
Результат void

BlockReturnOptimization1() публичный Метод

Block return propagates thru a single library method with a block without throwing unwinding exception.
public BlockReturnOptimization1 ( ) : void
Результат void

BlockReturnOptimization2() публичный Метод

Block return propagates thru multiple library method calls with a block without throwing unwinding exception.
public BlockReturnOptimization2 ( ) : void
Результат void

BlockReturnOptimization3() публичный Метод

Block return propagates thru user method calls with a block without throwing unwinding exception.
public BlockReturnOptimization3 ( ) : void
Результат void

BlockReturnOptimization4() публичный Метод

An unwinding exception is thrown if any frame is called w/o a block.
public BlockReturnOptimization4 ( ) : void
Результат void

BlockReturnOptimization5() публичный Метод

Return propagates thru proc/lambda calls.
public BlockReturnOptimization5 ( ) : void
Результат void

BlockReturnOptimization6() публичный Метод

Return propagates thru proc/lambda calls.
public BlockReturnOptimization6 ( ) : void
Результат void

BlockReturnOptimization7() публичный Метод

Return propagates thru yield in a block.
public BlockReturnOptimization7 ( ) : void
Результат void

Block_ProcParams1() публичный Метод

public Block_ProcParams1 ( ) : void
Результат void

ClassSingletons1() публичный Метод

Cannot instantiate singleton(class).
public ClassSingletons1 ( ) : void
Результат void

ClassVariables1() публичный Метод

public ClassVariables1 ( ) : void
Результат void

ConstantCaching_AutoUpdating1A() публичный Метод

public ConstantCaching_AutoUpdating1A ( ) : void
Результат void

ConstantCaching_AutoUpdating1B() публичный Метод

public ConstantCaching_AutoUpdating1B ( ) : void
Результат void

ConstantCaching_CrossRuntime1() публичный Метод

public ConstantCaching_CrossRuntime1 ( ) : void
Результат void

ConstantCaching_Qualified1() публичный Метод

public ConstantCaching_Qualified1 ( ) : void
Результат void

ConstantCaching_Qualified2() публичный Метод

public ConstantCaching_Qualified2 ( ) : void
Результат void

ConstantCaching_Qualified_IsDefined1() публичный Метод

public ConstantCaching_Qualified_IsDefined1 ( ) : void
Результат void

ConstantCaching_Qualified_IsDefined2() публичный Метод

public ConstantCaching_Qualified_IsDefined2 ( ) : void
Результат void

ConstantCaching_Unqualified1() публичный Метод

public ConstantCaching_Unqualified1 ( ) : void
Результат void

ConstantCaching_Unqualified2() публичный Метод

public ConstantCaching_Unqualified2 ( ) : void
Результат void

ConstantCaching_Unqualified3() публичный Метод

public ConstantCaching_Unqualified3 ( ) : void
Результат void

ConstantCaching_Unqualified4() публичный Метод

GlobalConstantAccess version needs to be invalidate on inclusion.
public ConstantCaching_Unqualified4 ( ) : void
Результат void

ConstantCaching_Unqualified5() публичный Метод

module_eval {} in Ruby 1.9 changes constant lookup chain.
public ConstantCaching_Unqualified5 ( ) : void
Результат void

ConstantCaching_Unqualified6() публичный Метод

Update of strong value needs to set the weak value as well (and vice versa).
public ConstantCaching_Unqualified6 ( ) : void
Результат void

ConstantCaching_Unqualified7() публичный Метод

Check to see whether we don't unwrap WeakReferences accidentally, preserve object identity and unwrap null correctly.
public ConstantCaching_Unqualified7 ( ) : void
Результат void

ConstantCaching_Unqualified_IsDefined1() публичный Метод

public ConstantCaching_Unqualified_IsDefined1 ( ) : void
Результат void

ConstantNames() публичный Метод

public ConstantNames ( ) : void
Результат void

Constants1A() публичный Метод

public Constants1A ( ) : void
Результат void

Constants1B() публичный Метод

public Constants1B ( ) : void
Результат void

Constants3() публичный Метод

Class/module def makes name of the constant by appending its simple name to the name of the lexically containing class/module.
public Constants3 ( ) : void
Результат void

Constants4() публичный Метод

Top-level class/module definition does look-up in Object and all its mixins.
public Constants4 ( ) : void
Результат void

CrossRuntime1() публичный Метод

public CrossRuntime1 ( ) : void
Результат void

CrossRuntime2() публичный Метод

public CrossRuntime2 ( ) : void
Результат void

CustomTypeDescriptor1() публичный Метод

public CustomTypeDescriptor1 ( ) : void
Результат void

CustomTypeDescriptor2() публичный Метод

public CustomTypeDescriptor2 ( ) : void
Результат void

DefineMethod1() публичный Метод

public DefineMethod1 ( ) : void
Результат void

DefineMethod2() публичный Метод

define_method and class_eval change owner of the method definition.
public DefineMethod2 ( ) : void
Результат void

DummySingletons1() публичный Метод

public DummySingletons1 ( ) : void
Результат void

DummySingletons2() публичный Метод

public DummySingletons2 ( ) : void
Результат void

Encoding_Host2() публичный Метод

public Encoding_Host2 ( ) : void
Результат void

EvalBreak1() публичный Метод

public EvalBreak1 ( ) : void
Результат void

EvalBreak2() публичный Метод

Break from a block called via Proc#call.
public EvalBreak2 ( ) : void
Результат void

EvalBreak3() публичный Метод

public EvalBreak3 ( ) : void
Результат void

EvalNext1() публичный Метод

public EvalNext1 ( ) : void
Результат void

EvalRedo1() публичный Метод

public EvalRedo1 ( ) : void
Результат void

EvalRetry1() публичный Метод

Block needs to set InLoop and InRescue flags on RFC to "false".
public EvalRetry1 ( ) : void
Результат void

EvalRetry2() публичный Метод

public EvalRetry2 ( ) : void
Результат void

EvalReturn1() публичный Метод

public EvalReturn1 ( ) : void
Результат void

EvalReturn2() публичный Метод

public EvalReturn2 ( ) : void
Результат void

EvalReturn3() публичный Метод

public EvalReturn3 ( ) : void
Результат void

EvalReturn4() публичный Метод

public EvalReturn4 ( ) : void
Результат void

File1() публичный Метод

public File1 ( ) : void
Результат void

GlobalConstants1() публичный Метод

The default interop constant_missing looks to scope only if called on Object.
public GlobalConstants1 ( ) : void
Результат void

HostingDefaultOptions1() публичный Метод

public HostingDefaultOptions1 ( ) : void
Результат void

Interactive1() публичный Метод

public Interactive1 ( ) : void
Результат void

Interactive2() публичный Метод

public Interactive2 ( ) : void
Результат void

InvokeMemberCache1() публичный Метод

public InvokeMemberCache1 ( ) : void
Результат void

LibraryLoader1() публичный Метод

public LibraryLoader1 ( ) : void
Результат void

LibraryLoader2() публичный Метод

public LibraryLoader2 ( ) : void
Результат void

Load1() публичный Метод

public Load1 ( ) : void
Результат void

LoadAndGlobalConstants() публичный Метод

Global constants defined in loaded code are defined on the anonymous module created by the load.
public LoadAndGlobalConstants ( ) : void
Результат void

Loader_Assemblies1() публичный Метод

public Loader_Assemblies1 ( ) : void
Результат void

MainSingleton1() публичный Метод

public MainSingleton1 ( ) : void
Результат void

MainSingleton2() публичный Метод

public MainSingleton2 ( ) : void
Результат void

MethodToProc1() публичный Метод

TODO: 1.9 actually doesn't allow proc.binding
public MethodToProc1 ( ) : void
Результат void

ModuleSingletons1() публичный Метод

Singleton(module)'s super-class is singleton(Module).
public ModuleSingletons1 ( ) : void
Результат void

MutableString_IndexRegex1() публичный Метод

public MutableString_IndexRegex1 ( ) : void
Результат void

NamesEncoding1() публичный Метод

public NamesEncoding1 ( ) : void
Результат void

NumericLiterals1() публичный Метод

public NumericLiterals1 ( ) : void
Результат void

NumericOps1() публичный Метод

public NumericOps1 ( ) : void
Результат void

ObjectOperations1() публичный Метод

public ObjectOperations1 ( ) : void
Результат void

ObjectOperations2() публичный Метод

public ObjectOperations2 ( ) : void
Результат void

OverloadResolution_Block1() публичный Метод

public OverloadResolution_Block1 ( ) : void
Результат void

OverloadResolution_Numeric1() публичный Метод

public OverloadResolution_Numeric1 ( ) : void
Результат void

OverloadResolution_ParamArrays1() публичный Метод

public OverloadResolution_ParamArrays1 ( ) : void
Результат void

ParseBigInts1() публичный Метод

public ParseBigInts1 ( ) : void
Результат void

ParseIntegers1() публичный Метод

public ParseIntegers1 ( ) : void
Результат void

ParseSymbols1() публичный Метод

public ParseSymbols1 ( ) : void
Результат void

Parser1() публичный Метод

public Parser1 ( ) : void
Результат void

ProcCallCaching1() публичный Метод

public ProcCallCaching1 ( ) : void
Результат void

ProcNew1() публичный Метод

public ProcNew1 ( ) : void
Результат void

ProcNew2() публичный Метод

public ProcNew2 ( ) : void
Результат void

ProcNew3() публичный Метод

public ProcNew3 ( ) : void
Результат void

ProcNew4() публичный Метод

public ProcNew4 ( ) : void
Результат void

ProcPosition1() публичный Метод

public ProcPosition1 ( ) : void
Результат void

ProcSelf1() публичный Метод

public ProcSelf1 ( ) : void
Результат void

ProcYieldCaching1() публичный Метод

public ProcYieldCaching1 ( ) : void
Результат void

Proc_RhsAndBlockArguments1() публичный Метод

public Proc_RhsAndBlockArguments1 ( ) : void
Результат void

PythonInterop1() публичный Метод

public PythonInterop1 ( ) : void
Результат void

PythonInterop2() публичный Метод

public PythonInterop2 ( ) : void
Результат void

PythonInterop3() публичный Метод

public PythonInterop3 ( ) : void
Результат void

PythonInterop4() публичный Метод

public PythonInterop4 ( ) : void
Результат void

PythonInterop5() публичный Метод

public PythonInterop5 ( ) : void
Результат void

PythonInterop_Indexers_Fallback1() публичный Метод

public PythonInterop_Indexers_Fallback1 ( ) : void
Результат void

PythonInterop_InvokeMember_Fallback1() публичный Метод

Python falls back if the member is not defined and Ruby then invokes the member with original casing.
public PythonInterop_InvokeMember_Fallback1 ( ) : void
Результат void

PythonInterop_InvokeMember_Fallback2() публичный Метод

Python falls back if the member is not defined and Ruby then invokes the member with original casing.
public PythonInterop_InvokeMember_Fallback2 ( ) : void
Результат void

PythonInterop_NamedIndexers1() публичный Метод

We convert a call to a setter with multiple parameters to a GetMember + SetIndex. This makes indexed properties on foreign meta-objects work.
public PythonInterop_NamedIndexers1 ( ) : void
Результат void

PythonInterop_Operators_Fallback1() публичный Метод

public PythonInterop_Operators_Fallback1 ( ) : void
Результат void

Regex1() публичный Метод

public Regex1 ( ) : void
Результат void

Regex2() публичный Метод

public Regex2 ( ) : void
Результат void

RegexCondition1() публичный Метод

public RegexCondition1 ( ) : void
Результат void

RegexCondition2() публичный Метод

public RegexCondition2 ( ) : void
Результат void

RegexEscape1() публичный Метод

public RegexEscape1 ( ) : void
Результат void

Require1() публичный Метод

public Require1 ( ) : void
Результат void

RequireInterop1() публичный Метод

public RequireInterop1 ( ) : void
Результат void

RequireInterop2() публичный Метод

public RequireInterop2 ( ) : void
Результат void

Return1() публичный Метод

public Return1 ( ) : void
Результат void

Return2() публичный Метод

public Return2 ( ) : void
Результат void

Return3() публичный Метод

public Return3 ( ) : void
Результат void

Return4() публичный Метод

public Return4 ( ) : void
Результат void

Return5() публичный Метод

public Return5 ( ) : void
Результат void

Return6() публичный Метод

public Return6 ( ) : void
Результат void

Return7() публичный Метод

public Return7 ( ) : void
Результат void

Return8() публичный Метод

public Return8 ( ) : void
Результат void

RubyBlocks0() публичный Метод

public RubyBlocks0 ( ) : void
Результат void

RubyBlocks10A() публичный Метод

Retry in a block.
public RubyBlocks10A ( ) : void
Результат void

RubyBlocks10B() публичный Метод

Retry in a block called via Proc#call.
public RubyBlocks10B ( ) : void
Результат void

RubyBlocks11() публичный Метод

Return with stack unwinding.
public RubyBlocks11 ( ) : void
Результат void

RubyBlocks12() публичный Метод

public RubyBlocks12 ( ) : void
Результат void

RubyBlocks13() публичный Метод

public RubyBlocks13 ( ) : void
Результат void

RubyBlocks14A() публичный Метод

Nested yielding.
public RubyBlocks14A ( ) : void
Результат void

RubyBlocks14B() публичный Метод

Covers RubyOps.YieldBlockBreak.
public RubyBlocks14B ( ) : void
Результат void

RubyBlocks14C() публичный Метод

Covers RubyOps.YieldBlockBreak error path.
public RubyBlocks14C ( ) : void
Результат void

RubyBlocks15() публичный Метод

Retry for-loop: for-loop should behave like x.each { } method call with a block, that is x is reevaluted on retry.
public RubyBlocks15 ( ) : void
Результат void

RubyBlocks16() публичный Метод

Tests optimization of block break from another block. Yield yields to a block that breaks to its proc-converter, which is foo. So the example should retrun 1 from the foo call. Break is propagated thru yields in two ways: 1) returning ReturnReason == Break via BlockParam (fast path) 2) throwing MethodUnwinder exception (slow path) ReturnReason should be propagated by yields as long as the owner of the block that contains the yield is the target frame for the break. That's the case for for-loop blocks in this test.
public RubyBlocks16 ( ) : void
Результат void

RubyBlocks17() публичный Метод

Retry is propagated to the 'each' call.
public RubyBlocks17 ( ) : void
Результат void

RubyBlocks18() публичный Метод

public RubyBlocks18 ( ) : void
Результат void

RubyBlocks2() публичный Метод

public RubyBlocks2 ( ) : void
Результат void

RubyBlocks3() публичный Метод

public RubyBlocks3 ( ) : void
Результат void

RubyBlocks5() публичный Метод

public RubyBlocks5 ( ) : void
Результат void

RubyBlocks6() публичный Метод

Return, yield and retry in a method.
public RubyBlocks6 ( ) : void
Результат void

RubyBlocks7() публичный Метод

Break in a block.
public RubyBlocks7 ( ) : void
Результат void

RubyBlocks8() публичный Метод

Redo in a block.
public RubyBlocks8 ( ) : void
Результат void

RubyBlocks9() публичный Метод

Next in a block.
public RubyBlocks9 ( ) : void
Результат void

RubyBlocks_Params1() публичный Метод

public RubyBlocks_Params1 ( ) : void
Результат void

RubyBlocks_Params2() публичный Метод

public RubyBlocks_Params2 ( ) : void
Результат void

RubyBlocks_Params3() публичный Метод

public RubyBlocks_Params3 ( ) : void
Результат void

RubyHosting1A() публичный Метод

public RubyHosting1A ( ) : void
Результат void

RubyHosting1B() публичный Метод

public RubyHosting1B ( ) : void
Результат void

RubyHosting1C() публичный Метод

public RubyHosting1C ( ) : void
Результат void

RubyHosting1D() публичный Метод

public RubyHosting1D ( ) : void
Результат void

RubyHosting1E() публичный Метод

missing_method on scope forwards to super class if the variable is not defined in scope; unmangled name is used if available and the mangled is not found in the scope.
public RubyHosting1E ( ) : void
Результат void

RubyHosting1F() публичный Метод

method_missing on main singleton can be invoked directly.
public RubyHosting1F ( ) : void
Результат void

RubyHosting2() публичный Метод

public RubyHosting2 ( ) : void
Результат void

RubyHosting3() публичный Метод

public RubyHosting3 ( ) : void
Результат void

RubyHosting4() публичный Метод

public RubyHosting4 ( ) : void
Результат void

RubyHosting5() публичный Метод

public RubyHosting5 ( ) : void
Результат void

RubyHosting_DelegateConversions() публичный Метод

public RubyHosting_DelegateConversions ( ) : void
Результат void

RubyHosting_Scopes1() публичный Метод

public RubyHosting_Scopes1 ( ) : void
Результат void

RubyHosting_Scopes2() публичный Метод

public RubyHosting_Scopes2 ( ) : void
Результат void

RubyHosting_Scopes3() публичный Метод

public RubyHosting_Scopes3 ( ) : void
Результат void

RubyProcArgConversion1() публичный Метод

public RubyProcArgConversion1 ( ) : void
Результат void

RubyProcArgConversion2() публичный Метод

public RubyProcArgConversion2 ( ) : void
Результат void

RubyProcArgConversion3() публичный Метод

public RubyProcArgConversion3 ( ) : void
Результат void

RubyProcArgConversion4() публичный Метод

public RubyProcArgConversion4 ( ) : void
Результат void

RubyProcs1() публичный Метод

public RubyProcs1 ( ) : void
Результат void

RubyProcs2() публичный Метод

Assigning to a block parameter should not affect yield.
public RubyProcs2 ( ) : void
Результат void

Scenario_CaseSplatting1() публичный Метод

public Scenario_CaseSplatting1 ( ) : void
Результат void

Scenario_ClassVariables1() публичный Метод

public Scenario_ClassVariables1 ( ) : void
Результат void

Scenario_ClassVariables2() публичный Метод

public Scenario_ClassVariables2 ( ) : void
Результат void

Scenario_ClassVariables_Singletons() публичный Метод

public Scenario_ClassVariables_Singletons ( ) : void
Результат void

Scenario_Globals1() публичный Метод

public Scenario_Globals1 ( ) : void
Результат void

Scenario_MainSingleton() публичный Метод

public Scenario_MainSingleton ( ) : void
Результат void

Scenario_ParserLogging() публичный Метод

public Scenario_ParserLogging ( ) : void
Результат void

Scenario_RubyArgSplatting1() публичный Метод

public Scenario_RubyArgSplatting1 ( ) : void
Результат void

Scenario_RubyArgSplatting2() публичный Метод

public Scenario_RubyArgSplatting2 ( ) : void
Результат void

Scenario_RubyArgSplatting3() публичный Метод

public Scenario_RubyArgSplatting3 ( ) : void
Результат void

Scenario_RubyArgSplatting4() публичный Метод

Splat anything that's IList (including arrays and values passed via out parameters).
public Scenario_RubyArgSplatting4 ( ) : void
Результат void

Scenario_RubyArgSplatting5() публичный Метод

public Scenario_RubyArgSplatting5 ( ) : void
Результат void

Scenario_RubyArgSplatting6() публичный Метод

public Scenario_RubyArgSplatting6 ( ) : void
Результат void

Scenario_RubyBlockArgs3() публичный Метод

RHS is list, LHS is not simple, but contains splatting.
public Scenario_RubyBlockArgs3 ( ) : void
Результат void

Scenario_RubyBlockArgs4A() публичный Метод

!L(1,-) && R(0,*), empty array to splat.
public Scenario_RubyBlockArgs4A ( ) : void
Результат void

Scenario_RubyBlockArgs4B() публичный Метод

Anonymous unsplat parameters.
public Scenario_RubyBlockArgs4B ( ) : void
Результат void

Scenario_RubyBlockArgs5() публичный Метод

public Scenario_RubyBlockArgs5 ( ) : void
Результат void

Scenario_RubyBlockArgs6() публичный Метод

public Scenario_RubyBlockArgs6 ( ) : void
Результат void

Scenario_RubyBlockExpressions1() публичный Метод

public Scenario_RubyBlockExpressions1 ( ) : void
Результат void

Scenario_RubyClassVersions1() публичный Метод

public Scenario_RubyClassVersions1 ( ) : void
Результат void

Scenario_RubyClassVersions2() публичный Метод

public Scenario_RubyClassVersions2 ( ) : void
Результат void

Scenario_RubyClosures1() публичный Метод

public Scenario_RubyClosures1 ( ) : void
Результат void

Scenario_RubyConsole1() публичный Метод

public Scenario_RubyConsole1 ( ) : void
Результат void

Scenario_RubyInclusions1() публичный Метод

public Scenario_RubyInclusions1 ( ) : void
Результат void

Scenario_RubyLocals1() публичный Метод

public Scenario_RubyLocals1 ( ) : void
Результат void

Scenario_RubyMath1() публичный Метод

public Scenario_RubyMath1 ( ) : void
Результат void

Scenario_RubyMethodMissing1() публичный Метод

public Scenario_RubyMethodMissing1 ( ) : void
Результат void

Scenario_RubyMethodMissing2() публичный Метод

public Scenario_RubyMethodMissing2 ( ) : void
Результат void

Scenario_RubyParams1() публичный Метод

public Scenario_RubyParams1 ( ) : void
Результат void

Scenario_RubyParams2() публичный Метод

public Scenario_RubyParams2 ( ) : void
Результат void

Scenario_RubyProcCallArgs1() публичный Метод

public Scenario_RubyProcCallArgs1 ( ) : void
Результат void

Scenario_RubyProcCallArgs2A() публичный Метод

public Scenario_RubyProcCallArgs2A ( ) : void
Результат void

Scenario_RubyProcCallArgs2B() публичный Метод

public Scenario_RubyProcCallArgs2B ( ) : void
Результат void

Scenario_RubyProcCallArgs2C() публичный Метод

public Scenario_RubyProcCallArgs2C ( ) : void
Результат void

Scenario_RubyProcCallArgs2D() публичный Метод

Tests MRI inconsistency in Yield1 vs YieldNoSplat1 when invoked from Call1.
public Scenario_RubyProcCallArgs2D ( ) : void
Результат void

Scenario_RubyProcYieldArgs1() публичный Метод

public Scenario_RubyProcYieldArgs1 ( ) : void
Результат void

Scenario_RubyProcYieldArgs2() публичный Метод

public Scenario_RubyProcYieldArgs2 ( ) : void
Результат void

Scenario_RubyProcYieldArgs3() публичный Метод

public Scenario_RubyProcYieldArgs3 ( ) : void
Результат void

Scenario_RubyProcYieldArgs4() публичный Метод

public Scenario_RubyProcYieldArgs4 ( ) : void
Результат void

Scenario_RubyScopeParsing() публичный Метод

public Scenario_RubyScopeParsing ( ) : void
Результат void

Scenario_RubyScopes1() публичный Метод

Tests that class lexical scopes are applied to method definitions.
public Scenario_RubyScopes1 ( ) : void
Результат void

Scenario_RubyScopes2A() публичный Метод

Uninitialized local variables.
public Scenario_RubyScopes2A ( ) : void
Результат void

Scenario_RubyScopes2B() публичный Метод

Uninitialized local variables in closure.
public Scenario_RubyScopes2B ( ) : void
Результат void

Scenario_RubyScopes3() публичный Метод

Tests that variables defined in module/class locals scope are not visible outside.
public Scenario_RubyScopes3 ( ) : void
Результат void

Scenario_RubyScopes4() публичный Метод

public Scenario_RubyScopes4 ( ) : void
Результат void

Scenario_RubyScopes5() публичный Метод

public Scenario_RubyScopes5 ( ) : void
Результат void

Scenario_RubyScopes6() публичный Метод

Nested module scopes - they don't have DLR tuples and therefore need to be skipped when looking up a storage from closure.
public Scenario_RubyScopes6 ( ) : void
Результат void

Scenario_RubySingletonConstants1() публичный Метод

public Scenario_RubySingletonConstants1 ( ) : void
Результат void

Scenario_RubyThreads1() публичный Метод

public Scenario_RubyThreads1 ( ) : void
Результат void

Scenario_Startup() публичный Метод

public Scenario_Startup ( ) : void
Результат void

Scenario_UninitializedVars1() публичный Метод

public Scenario_UninitializedVars1 ( ) : void
Результат void

Scenario_UninitializedVars2() публичный Метод

public Scenario_UninitializedVars2 ( ) : void
Результат void

Scenario_YieldCodeGen() публичный Метод

public Scenario_YieldCodeGen ( ) : void
Результат void

SingletonCaching1() публичный Метод

public SingletonCaching1 ( ) : void
Результат void

SingletonCaching2A() публичный Метод

IRubyObjects.
public SingletonCaching2A ( ) : void
Результат void

SingletonCaching2B() публичный Метод

Object.
public SingletonCaching2B ( ) : void
Результат void

SingletonCaching2C() публичный Метод

CLR types.
public SingletonCaching2C ( ) : void
Результат void

SingletonMethodDefinitionOnSingletons1() публичный Метод

public SingletonMethodDefinitionOnSingletons1 ( ) : void
Результат void

Singletons1A() публичный Метод

Ruby class.
public Singletons1A ( ) : void
Результат void

Singletons1B() публичный Метод

Object.
public Singletons1B ( ) : void
Результат void

Singletons1C() публичный Метод

A subclass of a CLR class.
public Singletons1C ( ) : void
Результат void

Singletons1D() публичный Метод

A CLR class.
public Singletons1D ( ) : void
Результат void

Singletons1_Test() публичный Метод

public Singletons1_Test ( string className, string inherits ) : void
className string
inherits string
Результат void

Singletons2() публичный Метод

public Singletons2 ( ) : void
Результат void

Singletons3() публичный Метод

public Singletons3 ( ) : void
Результат void

SplattingProtocol1() публичный Метод

public SplattingProtocol1 ( ) : void
Результат void

Strings0() публичный Метод

public Strings0 ( ) : void
Результат void

Strings1() публичный Метод

public Strings1 ( ) : void
Результат void

Strings2() публичный Метод

public Strings2 ( ) : void
Результат void

Strings3() публичный Метод

public Strings3 ( ) : void
Результат void

Strings4() публичный Метод

public Strings4 ( ) : void
Результат void

Strings5() публичный Метод

public Strings5 ( ) : void
Результат void

Strings6() публичный Метод

public Strings6 ( ) : void
Результат void

Strings7() публичный Метод

public Strings7 ( ) : void
Результат void

Strings8() публичный Метод

public Strings8 ( ) : void
Результат void

Strings9() публичный Метод

public Strings9 ( ) : void
Результат void

StringsPlus() публичный Метод

public StringsPlus ( ) : void
Результат void

SymbolToProc1() публичный Метод

public SymbolToProc1 ( ) : void
Результат void

Symbols1() публичный Метод

public Symbols1 ( ) : void
Результат void

Test_Reverse() публичный Метод

public Test_Reverse ( byte b, RubyEncoding e, byte expected ) : void
b byte
e RubyEncoding
expected byte
Результат void

Tests() публичный Метод

public Tests ( Driver driver ) : System
driver Driver
Результат System

ToSConversion1() публичный Метод

Embedded string does call "to_s" w/o calling "respond_to?" first.
public ToSConversion1 ( ) : void
Результат void

ToSConversion2() публичный Метод

public ToSConversion2 ( ) : void
Результат void

TokenCategorizer2() публичный Метод

public TokenCategorizer2 ( ) : void
Результат void

TokenizeIdentifiers1() публичный Метод

public TokenizeIdentifiers1 ( ) : void
Результат void

UnqualifiedConstants1() публичный Метод

Unqualified constant lookup should search in lexical scopes from inner most to the outer most looking into modules for constant declared in those modules and their mixins. It shouldn't look to base classes nor mixins.
public UnqualifiedConstants1 ( ) : void
Результат void

UnqualifiedConstants2() публичный Метод

If a constant is not found in the current scope chain, the inner-most module scope's module/class and its ancestors are checked.
public UnqualifiedConstants2 ( ) : void
Результат void