Ejemplo n.º 1
0
            public TestCaseContext()
            {
                Options    = AssetsOptions.Default;
                Descriptor = new AssetDescriptor
                {
                    Key       = "d",
                    AssetPath = "root/d",
                    AssetType = AssetType.Text
                };
                Locale                 = Defaults.Locale;
                AssetBytes             = new byte[] { 0x01, 0x02, 0x03 };
                AssetDataStringEncoded = "AssetDataStringEncoded";
                AssetDataBase64Encoded = "AssetDataBase64Encoded";

                OptionsService         = Mock.Of <IOptions <AssetsOptions> >();
                Logger                 = Mock.Of <ILogger <AssetsManager> >();
                AssetDescriptorsCache  = Mock.Of <IAssetDescriptorsCache>();
                StringEncoder          = Mock.Of <IStringEncoder>();
                Base64Encoder          = Mock.Of <IBase64Encoder>();
                TextAssetDataProcessor = Mock.Of <ITextAssetDataProcessor>();
                DataService            = Mock.Of <IAssetManagerDataService>();

                Mock.Get(OptionsService).Setup(
                    m => m.Value)
                .Returns(Options);

                Mock.Get(AssetDescriptorsCache).Setup(
                    m => m.GetAssetDescriptor(It.IsAny <string>()))
                .Returns(Descriptor);

                Mock.Get(DataService).Setup(
                    m => m.ReadAssetBytesAsync(
                        Options.AssetsDir,
                        It.IsAny <Asset>(),
                        It.IsAny <CancellationToken>()))
                .ReturnsAsync(AssetBytes);

                Mock.Get(TextAssetDataProcessor).Setup(
                    m => m.ProcessData(AssetBytes))
                .Returns(AssetBytes);

                Mock.Get(StringEncoder).Setup(
                    m => m.EncodeToString(AssetBytes))
                .Returns(AssetDataStringEncoded);

                Mock.Get(Base64Encoder).Setup(
                    m => m.Encode(AssetBytes))
                .Returns(AssetDataBase64Encoded);
            }
Ejemplo n.º 2
0
 public AssetsManager(
     IOptions <AssetsOptions> options,
     ILogger <AssetsManager> logger,
     IAssetDescriptorsCache assetDescriptorsCache,
     IStringEncoder stringEncoder,
     IBase64Encoder base64Encoder,
     ITextAssetDataProcessor textAssetDataProcessor,
     IAssetManagerDataService dataService)
 {
     this.options = options.Value ?? AssetsOptions.Default;
     this.logger  = logger;
     this.assetDescriptorsCache  = assetDescriptorsCache;
     this.stringEncoder          = stringEncoder;
     this.base64Encoder          = base64Encoder;
     this.textAssetDataProcessor = textAssetDataProcessor;
     this.dataService            = dataService;
 }