C# Class IronRuby.Tests.Tests

Afficher le fichier Open project: jschementi/iron Class Usage Examples

Méthodes publiques

Méthode Description
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.

Private Methods

Méthode Description
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[]

Method Details

AllowedSingletons1() public méthode

public AllowedSingletons1 ( ) : void
Résultat void

AllowedSingletons2() public méthode

public AllowedSingletons2 ( ) : void
Résultat void

AmbiguousMatch1() public méthode

public AmbiguousMatch1 ( ) : void
Résultat void

BEGIN1() public méthode

public BEGIN1 ( ) : void
Résultat void

BEGIN2() public méthode

public BEGIN2 ( ) : void
Résultat void

BlockArity1() public méthode

public BlockArity1 ( ) : void
Résultat void

BlockDefinition1() public méthode

public BlockDefinition1 ( ) : void
Résultat void

BlockEmpty() public méthode

public BlockEmpty ( ) : void
Résultat void

BlockParameterSyntax1() public méthode

public BlockParameterSyntax1 ( ) : void
Résultat void

BlockReturnOptimization1() public méthode

Block return propagates thru a single library method with a block without throwing unwinding exception.
public BlockReturnOptimization1 ( ) : void
Résultat void

BlockReturnOptimization2() public méthode

Block return propagates thru multiple library method calls with a block without throwing unwinding exception.
public BlockReturnOptimization2 ( ) : void
Résultat void

BlockReturnOptimization3() public méthode

Block return propagates thru user method calls with a block without throwing unwinding exception.
public BlockReturnOptimization3 ( ) : void
Résultat void

BlockReturnOptimization4() public méthode

An unwinding exception is thrown if any frame is called w/o a block.
public BlockReturnOptimization4 ( ) : void
Résultat void

BlockReturnOptimization5() public méthode

Return propagates thru proc/lambda calls.
public BlockReturnOptimization5 ( ) : void
Résultat void

BlockReturnOptimization6() public méthode

Return propagates thru proc/lambda calls.
public BlockReturnOptimization6 ( ) : void
Résultat void

BlockReturnOptimization7() public méthode

Return propagates thru yield in a block.
public BlockReturnOptimization7 ( ) : void
Résultat void

Block_ProcParams1() public méthode

public Block_ProcParams1 ( ) : void
Résultat void

ClassSingletons1() public méthode

Cannot instantiate singleton(class).
public ClassSingletons1 ( ) : void
Résultat void

ClassVariables1() public méthode

public ClassVariables1 ( ) : void
Résultat void

ConstantCaching_AutoUpdating1A() public méthode

public ConstantCaching_AutoUpdating1A ( ) : void
Résultat void

ConstantCaching_AutoUpdating1B() public méthode

public ConstantCaching_AutoUpdating1B ( ) : void
Résultat void

ConstantCaching_CrossRuntime1() public méthode

public ConstantCaching_CrossRuntime1 ( ) : void
Résultat void

ConstantCaching_Qualified1() public méthode

public ConstantCaching_Qualified1 ( ) : void
Résultat void

ConstantCaching_Qualified2() public méthode

public ConstantCaching_Qualified2 ( ) : void
Résultat void

ConstantCaching_Qualified_IsDefined1() public méthode

public ConstantCaching_Qualified_IsDefined1 ( ) : void
Résultat void

ConstantCaching_Qualified_IsDefined2() public méthode

public ConstantCaching_Qualified_IsDefined2 ( ) : void
Résultat void

ConstantCaching_Unqualified1() public méthode

public ConstantCaching_Unqualified1 ( ) : void
Résultat void

ConstantCaching_Unqualified2() public méthode

public ConstantCaching_Unqualified2 ( ) : void
Résultat void

ConstantCaching_Unqualified3() public méthode

public ConstantCaching_Unqualified3 ( ) : void
Résultat void

ConstantCaching_Unqualified4() public méthode

GlobalConstantAccess version needs to be invalidate on inclusion.
public ConstantCaching_Unqualified4 ( ) : void
Résultat void

ConstantCaching_Unqualified5() public méthode

module_eval {} in Ruby 1.9 changes constant lookup chain.
public ConstantCaching_Unqualified5 ( ) : void
Résultat void

ConstantCaching_Unqualified6() public méthode

Update of strong value needs to set the weak value as well (and vice versa).
public ConstantCaching_Unqualified6 ( ) : void
Résultat void

ConstantCaching_Unqualified7() public méthode

Check to see whether we don't unwrap WeakReferences accidentally, preserve object identity and unwrap null correctly.
public ConstantCaching_Unqualified7 ( ) : void
Résultat void

ConstantCaching_Unqualified_IsDefined1() public méthode

public ConstantCaching_Unqualified_IsDefined1 ( ) : void
Résultat void

ConstantNames() public méthode

public ConstantNames ( ) : void
Résultat void

Constants1A() public méthode

public Constants1A ( ) : void
Résultat void

Constants1B() public méthode

public Constants1B ( ) : void
Résultat void

Constants3() public méthode

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
Résultat void

Constants4() public méthode

Top-level class/module definition does look-up in Object and all its mixins.
public Constants4 ( ) : void
Résultat void

CrossRuntime1() public méthode

public CrossRuntime1 ( ) : void
Résultat void

CrossRuntime2() public méthode

public CrossRuntime2 ( ) : void
Résultat void

CustomTypeDescriptor1() public méthode

public CustomTypeDescriptor1 ( ) : void
Résultat void

CustomTypeDescriptor2() public méthode

public CustomTypeDescriptor2 ( ) : void
Résultat void

DefineMethod1() public méthode

public DefineMethod1 ( ) : void
Résultat void

DefineMethod2() public méthode

define_method and class_eval change owner of the method definition.
public DefineMethod2 ( ) : void
Résultat void

DummySingletons1() public méthode

public DummySingletons1 ( ) : void
Résultat void

DummySingletons2() public méthode

public DummySingletons2 ( ) : void
Résultat void

Encoding_Host2() public méthode

public Encoding_Host2 ( ) : void
Résultat void

EvalBreak1() public méthode

public EvalBreak1 ( ) : void
Résultat void

EvalBreak2() public méthode

Break from a block called via Proc#call.
public EvalBreak2 ( ) : void
Résultat void

EvalBreak3() public méthode

public EvalBreak3 ( ) : void
Résultat void

EvalNext1() public méthode

public EvalNext1 ( ) : void
Résultat void

EvalRedo1() public méthode

public EvalRedo1 ( ) : void
Résultat void

EvalRetry1() public méthode

Block needs to set InLoop and InRescue flags on RFC to "false".
public EvalRetry1 ( ) : void
Résultat void

EvalRetry2() public méthode

public EvalRetry2 ( ) : void
Résultat void

EvalReturn1() public méthode

public EvalReturn1 ( ) : void
Résultat void

EvalReturn2() public méthode

public EvalReturn2 ( ) : void
Résultat void

EvalReturn3() public méthode

public EvalReturn3 ( ) : void
Résultat void

EvalReturn4() public méthode

public EvalReturn4 ( ) : void
Résultat void

File1() public méthode

public File1 ( ) : void
Résultat void

GlobalConstants1() public méthode

The default interop constant_missing looks to scope only if called on Object.
public GlobalConstants1 ( ) : void
Résultat void

HostingDefaultOptions1() public méthode

public HostingDefaultOptions1 ( ) : void
Résultat void

Interactive1() public méthode

public Interactive1 ( ) : void
Résultat void

Interactive2() public méthode

public Interactive2 ( ) : void
Résultat void

InvokeMemberCache1() public méthode

public InvokeMemberCache1 ( ) : void
Résultat void

LibraryLoader1() public méthode

public LibraryLoader1 ( ) : void
Résultat void

LibraryLoader2() public méthode

public LibraryLoader2 ( ) : void
Résultat void

Load1() public méthode

public Load1 ( ) : void
Résultat void

LoadAndGlobalConstants() public méthode

Global constants defined in loaded code are defined on the anonymous module created by the load.
public LoadAndGlobalConstants ( ) : void
Résultat void

Loader_Assemblies1() public méthode

public Loader_Assemblies1 ( ) : void
Résultat void

MainSingleton1() public méthode

public MainSingleton1 ( ) : void
Résultat void

MainSingleton2() public méthode

public MainSingleton2 ( ) : void
Résultat void

MethodToProc1() public méthode

TODO: 1.9 actually doesn't allow proc.binding
public MethodToProc1 ( ) : void
Résultat void

ModuleSingletons1() public méthode

Singleton(module)'s super-class is singleton(Module).
public ModuleSingletons1 ( ) : void
Résultat void

MutableString_IndexRegex1() public méthode

public MutableString_IndexRegex1 ( ) : void
Résultat void

NamesEncoding1() public méthode

public NamesEncoding1 ( ) : void
Résultat void

NumericLiterals1() public méthode

public NumericLiterals1 ( ) : void
Résultat void

NumericOps1() public méthode

public NumericOps1 ( ) : void
Résultat void

ObjectOperations1() public méthode

public ObjectOperations1 ( ) : void
Résultat void

ObjectOperations2() public méthode

public ObjectOperations2 ( ) : void
Résultat void

OverloadResolution_Block1() public méthode

public OverloadResolution_Block1 ( ) : void
Résultat void

OverloadResolution_Numeric1() public méthode

public OverloadResolution_Numeric1 ( ) : void
Résultat void

OverloadResolution_ParamArrays1() public méthode

public OverloadResolution_ParamArrays1 ( ) : void
Résultat void

ParseBigInts1() public méthode

public ParseBigInts1 ( ) : void
Résultat void

ParseIntegers1() public méthode

public ParseIntegers1 ( ) : void
Résultat void

ParseSymbols1() public méthode

public ParseSymbols1 ( ) : void
Résultat void

Parser1() public méthode

public Parser1 ( ) : void
Résultat void

ProcCallCaching1() public méthode

public ProcCallCaching1 ( ) : void
Résultat void

ProcNew1() public méthode

public ProcNew1 ( ) : void
Résultat void

ProcNew2() public méthode

public ProcNew2 ( ) : void
Résultat void

ProcNew3() public méthode

public ProcNew3 ( ) : void
Résultat void

ProcNew4() public méthode

public ProcNew4 ( ) : void
Résultat void

ProcPosition1() public méthode

public ProcPosition1 ( ) : void
Résultat void

ProcSelf1() public méthode

public ProcSelf1 ( ) : void
Résultat void

ProcYieldCaching1() public méthode

public ProcYieldCaching1 ( ) : void
Résultat void

Proc_RhsAndBlockArguments1() public méthode

public Proc_RhsAndBlockArguments1 ( ) : void
Résultat void

PythonInterop1() public méthode

public PythonInterop1 ( ) : void
Résultat void

PythonInterop2() public méthode

public PythonInterop2 ( ) : void
Résultat void

PythonInterop3() public méthode

public PythonInterop3 ( ) : void
Résultat void

PythonInterop4() public méthode

public PythonInterop4 ( ) : void
Résultat void

PythonInterop5() public méthode

public PythonInterop5 ( ) : void
Résultat void

PythonInterop_Indexers_Fallback1() public méthode

public PythonInterop_Indexers_Fallback1 ( ) : void
Résultat void

PythonInterop_InvokeMember_Fallback1() public méthode

Python falls back if the member is not defined and Ruby then invokes the member with original casing.
public PythonInterop_InvokeMember_Fallback1 ( ) : void
Résultat void

PythonInterop_InvokeMember_Fallback2() public méthode

Python falls back if the member is not defined and Ruby then invokes the member with original casing.
public PythonInterop_InvokeMember_Fallback2 ( ) : void
Résultat void

PythonInterop_NamedIndexers1() public méthode

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
Résultat void

PythonInterop_Operators_Fallback1() public méthode

public PythonInterop_Operators_Fallback1 ( ) : void
Résultat void

Regex1() public méthode

public Regex1 ( ) : void
Résultat void

Regex2() public méthode

public Regex2 ( ) : void
Résultat void

RegexCondition1() public méthode

public RegexCondition1 ( ) : void
Résultat void

RegexCondition2() public méthode

public RegexCondition2 ( ) : void
Résultat void

RegexEscape1() public méthode

public RegexEscape1 ( ) : void
Résultat void

Require1() public méthode

public Require1 ( ) : void
Résultat void

RequireInterop1() public méthode

public RequireInterop1 ( ) : void
Résultat void

RequireInterop2() public méthode

public RequireInterop2 ( ) : void
Résultat void

Return1() public méthode

public Return1 ( ) : void
Résultat void

Return2() public méthode

public Return2 ( ) : void
Résultat void

Return3() public méthode

public Return3 ( ) : void
Résultat void

Return4() public méthode

public Return4 ( ) : void
Résultat void

Return5() public méthode

public Return5 ( ) : void
Résultat void

Return6() public méthode

public Return6 ( ) : void
Résultat void

Return7() public méthode

public Return7 ( ) : void
Résultat void

Return8() public méthode

public Return8 ( ) : void
Résultat void

RubyBlocks0() public méthode

public RubyBlocks0 ( ) : void
Résultat void

RubyBlocks10A() public méthode

Retry in a block.
public RubyBlocks10A ( ) : void
Résultat void

RubyBlocks10B() public méthode

Retry in a block called via Proc#call.
public RubyBlocks10B ( ) : void
Résultat void

RubyBlocks11() public méthode

Return with stack unwinding.
public RubyBlocks11 ( ) : void
Résultat void

RubyBlocks12() public méthode

public RubyBlocks12 ( ) : void
Résultat void

RubyBlocks13() public méthode

public RubyBlocks13 ( ) : void
Résultat void

RubyBlocks14A() public méthode

Nested yielding.
public RubyBlocks14A ( ) : void
Résultat void

RubyBlocks14B() public méthode

Covers RubyOps.YieldBlockBreak.
public RubyBlocks14B ( ) : void
Résultat void

RubyBlocks14C() public méthode

Covers RubyOps.YieldBlockBreak error path.
public RubyBlocks14C ( ) : void
Résultat void

RubyBlocks15() public méthode

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
Résultat void

RubyBlocks16() public méthode

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
Résultat void

RubyBlocks17() public méthode

Retry is propagated to the 'each' call.
public RubyBlocks17 ( ) : void
Résultat void

RubyBlocks18() public méthode

public RubyBlocks18 ( ) : void
Résultat void

RubyBlocks2() public méthode

public RubyBlocks2 ( ) : void
Résultat void

RubyBlocks3() public méthode

public RubyBlocks3 ( ) : void
Résultat void

RubyBlocks5() public méthode

public RubyBlocks5 ( ) : void
Résultat void

RubyBlocks6() public méthode

Return, yield and retry in a method.
public RubyBlocks6 ( ) : void
Résultat void

RubyBlocks7() public méthode

Break in a block.
public RubyBlocks7 ( ) : void
Résultat void

RubyBlocks8() public méthode

Redo in a block.
public RubyBlocks8 ( ) : void
Résultat void

RubyBlocks9() public méthode

Next in a block.
public RubyBlocks9 ( ) : void
Résultat void

RubyBlocks_Params1() public méthode

public RubyBlocks_Params1 ( ) : void
Résultat void

RubyBlocks_Params2() public méthode

public RubyBlocks_Params2 ( ) : void
Résultat void

RubyBlocks_Params3() public méthode

public RubyBlocks_Params3 ( ) : void
Résultat void

RubyHosting1A() public méthode

public RubyHosting1A ( ) : void
Résultat void

RubyHosting1B() public méthode

public RubyHosting1B ( ) : void
Résultat void

RubyHosting1C() public méthode

public RubyHosting1C ( ) : void
Résultat void

RubyHosting1D() public méthode

public RubyHosting1D ( ) : void
Résultat void

RubyHosting1E() public méthode

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
Résultat void

RubyHosting1F() public méthode

method_missing on main singleton can be invoked directly.
public RubyHosting1F ( ) : void
Résultat void

RubyHosting2() public méthode

public RubyHosting2 ( ) : void
Résultat void

RubyHosting3() public méthode

public RubyHosting3 ( ) : void
Résultat void

RubyHosting4() public méthode

public RubyHosting4 ( ) : void
Résultat void

RubyHosting5() public méthode

public RubyHosting5 ( ) : void
Résultat void

RubyHosting_DelegateConversions() public méthode

public RubyHosting_DelegateConversions ( ) : void
Résultat void

RubyHosting_Scopes1() public méthode

public RubyHosting_Scopes1 ( ) : void
Résultat void

RubyHosting_Scopes2() public méthode

public RubyHosting_Scopes2 ( ) : void
Résultat void

RubyHosting_Scopes3() public méthode

public RubyHosting_Scopes3 ( ) : void
Résultat void

RubyProcArgConversion1() public méthode

public RubyProcArgConversion1 ( ) : void
Résultat void

RubyProcArgConversion2() public méthode

public RubyProcArgConversion2 ( ) : void
Résultat void

RubyProcArgConversion3() public méthode

public RubyProcArgConversion3 ( ) : void
Résultat void

RubyProcArgConversion4() public méthode

public RubyProcArgConversion4 ( ) : void
Résultat void

RubyProcs1() public méthode

public RubyProcs1 ( ) : void
Résultat void

RubyProcs2() public méthode

Assigning to a block parameter should not affect yield.
public RubyProcs2 ( ) : void
Résultat void

Scenario_CaseSplatting1() public méthode

public Scenario_CaseSplatting1 ( ) : void
Résultat void

Scenario_ClassVariables1() public méthode

public Scenario_ClassVariables1 ( ) : void
Résultat void

Scenario_ClassVariables2() public méthode

public Scenario_ClassVariables2 ( ) : void
Résultat void

Scenario_ClassVariables_Singletons() public méthode

public Scenario_ClassVariables_Singletons ( ) : void
Résultat void

Scenario_Globals1() public méthode

public Scenario_Globals1 ( ) : void
Résultat void

Scenario_MainSingleton() public méthode

public Scenario_MainSingleton ( ) : void
Résultat void

Scenario_ParserLogging() public méthode

public Scenario_ParserLogging ( ) : void
Résultat void

Scenario_RubyArgSplatting1() public méthode

public Scenario_RubyArgSplatting1 ( ) : void
Résultat void

Scenario_RubyArgSplatting2() public méthode

public Scenario_RubyArgSplatting2 ( ) : void
Résultat void

Scenario_RubyArgSplatting3() public méthode

public Scenario_RubyArgSplatting3 ( ) : void
Résultat void

Scenario_RubyArgSplatting4() public méthode

Splat anything that's IList (including arrays and values passed via out parameters).
public Scenario_RubyArgSplatting4 ( ) : void
Résultat void

Scenario_RubyArgSplatting5() public méthode

public Scenario_RubyArgSplatting5 ( ) : void
Résultat void

Scenario_RubyArgSplatting6() public méthode

public Scenario_RubyArgSplatting6 ( ) : void
Résultat void

Scenario_RubyBlockArgs3() public méthode

RHS is list, LHS is not simple, but contains splatting.
public Scenario_RubyBlockArgs3 ( ) : void
Résultat void

Scenario_RubyBlockArgs4A() public méthode

!L(1,-) && R(0,*), empty array to splat.
public Scenario_RubyBlockArgs4A ( ) : void
Résultat void

Scenario_RubyBlockArgs4B() public méthode

Anonymous unsplat parameters.
public Scenario_RubyBlockArgs4B ( ) : void
Résultat void

Scenario_RubyBlockArgs5() public méthode

public Scenario_RubyBlockArgs5 ( ) : void
Résultat void

Scenario_RubyBlockArgs6() public méthode

public Scenario_RubyBlockArgs6 ( ) : void
Résultat void

Scenario_RubyBlockExpressions1() public méthode

public Scenario_RubyBlockExpressions1 ( ) : void
Résultat void

Scenario_RubyClassVersions1() public méthode

public Scenario_RubyClassVersions1 ( ) : void
Résultat void

Scenario_RubyClassVersions2() public méthode

public Scenario_RubyClassVersions2 ( ) : void
Résultat void

Scenario_RubyClosures1() public méthode

public Scenario_RubyClosures1 ( ) : void
Résultat void

Scenario_RubyConsole1() public méthode

public Scenario_RubyConsole1 ( ) : void
Résultat void

Scenario_RubyInclusions1() public méthode

public Scenario_RubyInclusions1 ( ) : void
Résultat void

Scenario_RubyLocals1() public méthode

public Scenario_RubyLocals1 ( ) : void
Résultat void

Scenario_RubyMath1() public méthode

public Scenario_RubyMath1 ( ) : void
Résultat void

Scenario_RubyMethodMissing1() public méthode

public Scenario_RubyMethodMissing1 ( ) : void
Résultat void

Scenario_RubyMethodMissing2() public méthode

public Scenario_RubyMethodMissing2 ( ) : void
Résultat void

Scenario_RubyParams1() public méthode

public Scenario_RubyParams1 ( ) : void
Résultat void

Scenario_RubyParams2() public méthode

public Scenario_RubyParams2 ( ) : void
Résultat void

Scenario_RubyProcCallArgs1() public méthode

public Scenario_RubyProcCallArgs1 ( ) : void
Résultat void

Scenario_RubyProcCallArgs2A() public méthode

public Scenario_RubyProcCallArgs2A ( ) : void
Résultat void

Scenario_RubyProcCallArgs2B() public méthode

public Scenario_RubyProcCallArgs2B ( ) : void
Résultat void

Scenario_RubyProcCallArgs2C() public méthode

public Scenario_RubyProcCallArgs2C ( ) : void
Résultat void

Scenario_RubyProcCallArgs2D() public méthode

Tests MRI inconsistency in Yield1 vs YieldNoSplat1 when invoked from Call1.
public Scenario_RubyProcCallArgs2D ( ) : void
Résultat void

Scenario_RubyProcYieldArgs1() public méthode

public Scenario_RubyProcYieldArgs1 ( ) : void
Résultat void

Scenario_RubyProcYieldArgs2() public méthode

public Scenario_RubyProcYieldArgs2 ( ) : void
Résultat void

Scenario_RubyProcYieldArgs3() public méthode

public Scenario_RubyProcYieldArgs3 ( ) : void
Résultat void

Scenario_RubyProcYieldArgs4() public méthode

public Scenario_RubyProcYieldArgs4 ( ) : void
Résultat void

Scenario_RubyScopeParsing() public méthode

public Scenario_RubyScopeParsing ( ) : void
Résultat void

Scenario_RubyScopes1() public méthode

Tests that class lexical scopes are applied to method definitions.
public Scenario_RubyScopes1 ( ) : void
Résultat void

Scenario_RubyScopes2A() public méthode

Uninitialized local variables.
public Scenario_RubyScopes2A ( ) : void
Résultat void

Scenario_RubyScopes2B() public méthode

Uninitialized local variables in closure.
public Scenario_RubyScopes2B ( ) : void
Résultat void

Scenario_RubyScopes3() public méthode

Tests that variables defined in module/class locals scope are not visible outside.
public Scenario_RubyScopes3 ( ) : void
Résultat void

Scenario_RubyScopes4() public méthode

public Scenario_RubyScopes4 ( ) : void
Résultat void

Scenario_RubyScopes5() public méthode

public Scenario_RubyScopes5 ( ) : void
Résultat void

Scenario_RubyScopes6() public méthode

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
Résultat void

Scenario_RubySingletonConstants1() public méthode

public Scenario_RubySingletonConstants1 ( ) : void
Résultat void

Scenario_RubyThreads1() public méthode

public Scenario_RubyThreads1 ( ) : void
Résultat void

Scenario_Startup() public méthode

public Scenario_Startup ( ) : void
Résultat void

Scenario_UninitializedVars1() public méthode

public Scenario_UninitializedVars1 ( ) : void
Résultat void

Scenario_UninitializedVars2() public méthode

public Scenario_UninitializedVars2 ( ) : void
Résultat void

Scenario_YieldCodeGen() public méthode

public Scenario_YieldCodeGen ( ) : void
Résultat void

SingletonCaching1() public méthode

public SingletonCaching1 ( ) : void
Résultat void

SingletonCaching2A() public méthode

IRubyObjects.
public SingletonCaching2A ( ) : void
Résultat void

SingletonCaching2B() public méthode

Object.
public SingletonCaching2B ( ) : void
Résultat void

SingletonCaching2C() public méthode

CLR types.
public SingletonCaching2C ( ) : void
Résultat void

SingletonMethodDefinitionOnSingletons1() public méthode

public SingletonMethodDefinitionOnSingletons1 ( ) : void
Résultat void

Singletons1A() public méthode

Ruby class.
public Singletons1A ( ) : void
Résultat void

Singletons1B() public méthode

Object.
public Singletons1B ( ) : void
Résultat void

Singletons1C() public méthode

A subclass of a CLR class.
public Singletons1C ( ) : void
Résultat void

Singletons1D() public méthode

A CLR class.
public Singletons1D ( ) : void
Résultat void

Singletons1_Test() public méthode

public Singletons1_Test ( string className, string inherits ) : void
className string
inherits string
Résultat void

Singletons2() public méthode

public Singletons2 ( ) : void
Résultat void

Singletons3() public méthode

public Singletons3 ( ) : void
Résultat void

SplattingProtocol1() public méthode

public SplattingProtocol1 ( ) : void
Résultat void

Strings0() public méthode

public Strings0 ( ) : void
Résultat void

Strings1() public méthode

public Strings1 ( ) : void
Résultat void

Strings2() public méthode

public Strings2 ( ) : void
Résultat void

Strings3() public méthode

public Strings3 ( ) : void
Résultat void

Strings4() public méthode

public Strings4 ( ) : void
Résultat void

Strings5() public méthode

public Strings5 ( ) : void
Résultat void

Strings6() public méthode

public Strings6 ( ) : void
Résultat void

Strings7() public méthode

public Strings7 ( ) : void
Résultat void

Strings8() public méthode

public Strings8 ( ) : void
Résultat void

Strings9() public méthode

public Strings9 ( ) : void
Résultat void

StringsPlus() public méthode

public StringsPlus ( ) : void
Résultat void

SymbolToProc1() public méthode

public SymbolToProc1 ( ) : void
Résultat void

Symbols1() public méthode

public Symbols1 ( ) : void
Résultat void

Test_Reverse() public méthode

public Test_Reverse ( byte b, RubyEncoding e, byte expected ) : void
b byte
e RubyEncoding
expected byte
Résultat void

Tests() public méthode

public Tests ( Driver driver ) : System
driver Driver
Résultat System

ToSConversion1() public méthode

Embedded string does call "to_s" w/o calling "respond_to?" first.
public ToSConversion1 ( ) : void
Résultat void

ToSConversion2() public méthode

public ToSConversion2 ( ) : void
Résultat void

TokenCategorizer2() public méthode

public TokenCategorizer2 ( ) : void
Résultat void

TokenizeIdentifiers1() public méthode

public TokenizeIdentifiers1 ( ) : void
Résultat void

UnqualifiedConstants1() public méthode

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
Résultat void

UnqualifiedConstants2() public méthode

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
Résultat void