Completed
Push — master ( a56798...527387 )
by Aimeos
03:05
created
jobs/tests/Controller/Jobs/Coupon/Import/Csv/Code/StandardTest.php 1 patch
Spacing   +28 added lines, -28 removed lines patch added patch discarded remove patch
@@ -18,95 +18,95 @@
 block discarded – undo
18 18
 
19 19
 	protected function setUp()
20 20
 	{
21
-		\Aimeos\MShop\Factory::setCache( true );
21
+		\Aimeos\MShop\Factory::setCache(true);
22 22
 
23 23
 		$this->context = \TestHelperJobs::getContext();
24 24
 		$this->aimeos = \TestHelperJobs::getAimeos();
25 25
 		$config = $this->context->getConfig();
26 26
 
27
-		$config->set( 'controller/jobs/product/import/csv/skip-lines', 1 );
27
+		$config->set('controller/jobs/product/import/csv/skip-lines', 1);
28 28
 
29
-		$this->object = new \Aimeos\Controller\Jobs\Coupon\Import\Csv\Code\Standard( $this->context, $this->aimeos );
29
+		$this->object = new \Aimeos\Controller\Jobs\Coupon\Import\Csv\Code\Standard($this->context, $this->aimeos);
30 30
 	}
31 31
 
32 32
 
33 33
 	protected function tearDown()
34 34
 	{
35
-		\Aimeos\MShop\Factory::setCache( false );
35
+		\Aimeos\MShop\Factory::setCache(false);
36 36
 		\Aimeos\MShop\Factory::clear();
37 37
 
38
-		unset( $this->object );
38
+		unset($this->object);
39 39
 	}
40 40
 
41 41
 
42 42
 	public function testGetName()
43 43
 	{
44
-		$this->assertEquals( 'Coupon code import CSV', $this->object->getName() );
44
+		$this->assertEquals('Coupon code import CSV', $this->object->getName());
45 45
 	}
46 46
 
47 47
 
48 48
 	public function testGetDescription()
49 49
 	{
50 50
 		$text = 'Imports new and updates existing coupon code from CSV files';
51
-		$this->assertEquals( $text, $this->object->getDescription() );
51
+		$this->assertEquals($text, $this->object->getDescription());
52 52
 	}
53 53
 
54 54
 
55 55
 	public function testRun()
56 56
 	{
57
-		$manager = \Aimeos\MShop\Factory::createManager( $this->context, 'coupon' );
58
-		$coupon = $manager->saveItem( $manager->createItem()->setProvider( 'Example' ) );
57
+		$manager = \Aimeos\MShop\Factory::createManager($this->context, 'coupon');
58
+		$coupon = $manager->saveItem($manager->createItem()->setProvider('Example'));
59 59
 
60 60
 		$dir = 'tmp/import/couponcode/unittest';
61 61
 		$filepath = $dir . '/' . $coupon->getId() . '.csv';
62 62
 
63
-		if( !is_dir( $dir ) && mkdir( 'tmp/import/couponcode/unittest', 0775, true ) === false ) {
64
-			throw new \Exception( sprintf( 'Unable to create directory "%1$s"', $dir ) );
63
+		if (!is_dir($dir) && mkdir('tmp/import/couponcode/unittest', 0775, true) === false) {
64
+			throw new \Exception(sprintf('Unable to create directory "%1$s"', $dir));
65 65
 		}
66 66
 
67 67
 		$content = 'code,count,start,end
68 68
 jobccimport1,3,2000-01-01 00:00:00,
69 69
 jobccimport2,5,,';
70 70
 
71
-		if( file_put_contents( $filepath, $content ) === false ) {
72
-			throw new \Exception( sprintf( 'Unable to create file "%1$s"', $file ) );
71
+		if (file_put_contents($filepath, $content) === false) {
72
+			throw new \Exception(sprintf('Unable to create file "%1$s"', $file));
73 73
 		}
74 74
 
75 75
 		$this->object->run();
76 76
 
77 77
 
78
-		$codeManager = \Aimeos\MShop\Factory::createManager( $this->context, 'coupon/code' );
79
-		$code1 = $codeManager->findItem( 'jobccimport1' );
80
-		$code2 = $codeManager->findItem( 'jobccimport2' );
78
+		$codeManager = \Aimeos\MShop\Factory::createManager($this->context, 'coupon/code');
79
+		$code1 = $codeManager->findItem('jobccimport1');
80
+		$code2 = $codeManager->findItem('jobccimport2');
81 81
 
82
-		$manager->deleteItem( $coupon->getId() );
82
+		$manager->deleteItem($coupon->getId());
83 83
 
84
-		$this->assertEquals( 3, $code1->getCount() );
85
-		$this->assertEquals( '2000-01-01 00:00:00', $code1->getDateStart() );
86
-		$this->assertEquals( null, $code1->getDateEnd() );
84
+		$this->assertEquals(3, $code1->getCount());
85
+		$this->assertEquals('2000-01-01 00:00:00', $code1->getDateStart());
86
+		$this->assertEquals(null, $code1->getDateEnd());
87 87
 
88
-		$this->assertEquals( 5, $code2->getCount() );
89
-		$this->assertEquals( null, $code2->getDateStart() );
90
-		$this->assertEquals( null, $code2->getDateEnd() );
88
+		$this->assertEquals(5, $code2->getCount());
89
+		$this->assertEquals(null, $code2->getDateStart());
90
+		$this->assertEquals(null, $code2->getDateEnd());
91 91
 	}
92 92
 
93 93
 
94 94
 	public function testRunException()
95 95
 	{
96
-		$manager = \Aimeos\MShop\Factory::createManager( $this->context, 'coupon' );
96
+		$manager = \Aimeos\MShop\Factory::createManager($this->context, 'coupon');
97 97
 
98 98
 		$dir = 'tmp/import/couponcode/unittest';
99 99
 		$filepath = $dir . '/0.csv';
100 100
 
101
-		if( !is_dir( $dir ) && mkdir( 'tmp/import/couponcode/unittest', 0775, true ) === false ) {
102
-			throw new \Exception( sprintf( 'Unable to create directory "%1$s"', $dir ) );
101
+		if (!is_dir($dir) && mkdir('tmp/import/couponcode/unittest', 0775, true) === false) {
102
+			throw new \Exception(sprintf('Unable to create directory "%1$s"', $dir));
103 103
 		}
104 104
 
105 105
 		$content = 'code,count,start,end
106 106
 jobccimport1,,,';
107 107
 
108
-		if( file_put_contents( $filepath, $content ) === false ) {
109
-			throw new \Exception( sprintf( 'Unable to create file "%1$s"', $file ) );
108
+		if (file_put_contents($filepath, $content) === false) {
109
+			throw new \Exception(sprintf('Unable to create file "%1$s"', $file));
110 110
 		}
111 111
 
112 112
 		$this->object->run();
Please login to merge, or discard this patch.
controller/jobs/src/Controller/Jobs/Coupon/Import/Csv/Code/Standard.php 1 patch
Spacing   +47 added lines, -47 removed lines patch added patch discarded remove patch
@@ -28,7 +28,7 @@  discard block
 block discarded – undo
28 28
 	 */
29 29
 	public function getName()
30 30
 	{
31
-		return $this->getContext()->getI18n()->dt( 'controller/jobs', 'Coupon code import CSV' );
31
+		return $this->getContext()->getI18n()->dt('controller/jobs', 'Coupon code import CSV');
32 32
 	}
33 33
 
34 34
 
@@ -39,7 +39,7 @@  discard block
 block discarded – undo
39 39
 	 */
40 40
 	public function getDescription()
41 41
 	{
42
-		return $this->getContext()->getI18n()->dt( 'controller/jobs', 'Imports new and updates existing coupon code from CSV files' );
42
+		return $this->getContext()->getI18n()->dt('controller/jobs', 'Imports new and updates existing coupon code from CSV files');
43 43
 	}
44 44
 
45 45
 
@@ -71,7 +71,7 @@  discard block
 block discarded – undo
71 71
 		 * @see controller/jobs/coupon/import/csv/code/skip-lines
72 72
 		 * @see controller/jobs/coupon/import/csv/code/max-size
73 73
 		 */
74
-		$mappings = $config->get( 'controller/jobs/coupon/import/csv/code/mapping', $mappings );
74
+		$mappings = $config->get('controller/jobs/coupon/import/csv/code/mapping', $mappings);
75 75
 
76 76
 
77 77
 		/** controller/jobs/coupon/import/csv/code/max-size
@@ -90,7 +90,7 @@  discard block
 block discarded – undo
90 90
 		 * @see controller/jobs/coupon/import/csv/code/skip-lines
91 91
 		 * @see controller/jobs/coupon/import/csv/code/mapping
92 92
 		 */
93
-		$maxcnt = (int) $config->get( 'controller/jobs/coupon/import/csv/code/max-size', 1000 );
93
+		$maxcnt = (int) $config->get('controller/jobs/coupon/import/csv/code/max-size', 1000);
94 94
 
95 95
 
96 96
 		/** controller/jobs/coupon/import/csv/code/skip-lines
@@ -108,64 +108,64 @@  discard block
 block discarded – undo
108 108
 		 * @see controller/jobs/coupon/import/csv/code/mapping
109 109
 		 * @see controller/jobs/coupon/import/csv/code/max-size
110 110
 		 */
111
-		$skiplines = (int) $config->get( 'controller/jobs/coupon/import/csv/code/skip-lines', 0 );
111
+		$skiplines = (int) $config->get('controller/jobs/coupon/import/csv/code/skip-lines', 0);
112 112
 
113 113
 
114 114
 		try
115 115
 		{
116
-			$processor = $this->getProcessors( $mappings );
117
-			$codePos = $this->getCodePosition( $mappings['code'] );
118
-			$fs = $context->getFileSystemManager()->get( 'fs-import' );
116
+			$processor = $this->getProcessors($mappings);
117
+			$codePos = $this->getCodePosition($mappings['code']);
118
+			$fs = $context->getFileSystemManager()->get('fs-import');
119 119
 			$dir = 'couponcode/' . $context->getLocale()->getSite()->getCode();
120 120
 
121
-			if( $fs->isDir( $dir ) === false ) {
121
+			if ($fs->isDir($dir) === false) {
122 122
 				return;
123 123
 			}
124 124
 
125
-			foreach( $fs->scan( $dir ) as $filename )
125
+			foreach ($fs->scan($dir) as $filename)
126 126
 			{
127
-				if( $filename == '.' || $filename == '..' ) {
127
+				if ($filename == '.' || $filename == '..') {
128 128
 					continue;
129 129
 				}
130 130
 
131
-				list( $couponId, ) = explode( '.', $filename );
132
-				$container = $this->getContainer( $fs->readf( $dir . '/' . $filename ) );
131
+				list($couponId,) = explode('.', $filename);
132
+				$container = $this->getContainer($fs->readf($dir . '/' . $filename));
133 133
 
134
-				$msg = sprintf( 'Started coupon import from "%1$s" (%2$s)', $filename, __CLASS__ );
135
-				$logger->log( $msg, \Aimeos\MW\Logger\Base::NOTICE );
134
+				$msg = sprintf('Started coupon import from "%1$s" (%2$s)', $filename, __CLASS__);
135
+				$logger->log($msg, \Aimeos\MW\Logger\Base::NOTICE);
136 136
 
137
-				foreach( $container as $content )
137
+				foreach ($container as $content)
138 138
 				{
139
-					for( $i = 0; $i < $skiplines; $i++ ) {
139
+					for ($i = 0; $i < $skiplines; $i++) {
140 140
 						$content->next();
141 141
 					}
142 142
 
143
-					while( ( $data = $this->getData( $content, $maxcnt, $codePos ) ) !== [] )
143
+					while (($data = $this->getData($content, $maxcnt, $codePos)) !== [])
144 144
 					{
145
-						$items = $this->getCouponCodeItems( array_keys( $data ) );
146
-						$errcnt = $this->import( $items, $data, $couponId, $processor );
147
-						$chunkcnt = count( $data );
145
+						$items = $this->getCouponCodeItems(array_keys($data));
146
+						$errcnt = $this->import($items, $data, $couponId, $processor);
147
+						$chunkcnt = count($data);
148 148
 
149 149
 						$msg = 'Imported coupon lines from "%1$s": %2$d/%3$d (%4$s)';
150
-						$logger->log( sprintf( $msg, $filename, $chunkcnt - $errcnt, $chunkcnt, __CLASS__ ), \Aimeos\MW\Logger\Base::NOTICE );
150
+						$logger->log(sprintf($msg, $filename, $chunkcnt - $errcnt, $chunkcnt, __CLASS__), \Aimeos\MW\Logger\Base::NOTICE);
151 151
 
152 152
 						$errors += $errcnt;
153 153
 						$total += $chunkcnt;
154
-						unset( $items, $data );
154
+						unset($items, $data);
155 155
 					}
156 156
 				}
157 157
 
158 158
 				$container->close();
159
-				$fs->rm( $dir . '/' . $filename );
159
+				$fs->rm($dir . '/' . $filename);
160 160
 
161 161
 				$msg = 'Finished coupon import: %1$d successful, %2$s errors, %3$s total (%4$s)';
162
-				$logger->log( sprintf( $msg, $total - $errors, $errors, $total, __CLASS__ ), \Aimeos\MW\Logger\Base::NOTICE );
162
+				$logger->log(sprintf($msg, $total - $errors, $errors, $total, __CLASS__), \Aimeos\MW\Logger\Base::NOTICE);
163 163
 			}
164 164
 		}
165
-		catch( \Exception $e )
165
+		catch (\Exception $e)
166 166
 		{
167
-			$logger->log( 'Coupon import error: ' . $e->getMessage() );
168
-			$logger->log( $e->getTraceAsString() );
167
+			$logger->log('Coupon import error: ' . $e->getMessage());
168
+			$logger->log($e->getTraceAsString());
169 169
 
170 170
 			throw $e;
171 171
 		}
@@ -179,16 +179,16 @@  discard block
 block discarded – undo
179 179
 	 * @return integer Position of the "coupon.code" column
180 180
 	 * @throws \Aimeos\Controller\Jobs\Exception If no mapping for "coupon.code.code" is found
181 181
 	 */
182
-	protected function getCodePosition( array $mapping )
182
+	protected function getCodePosition(array $mapping)
183 183
 	{
184
-		foreach( $mapping as $pos => $key )
184
+		foreach ($mapping as $pos => $key)
185 185
 		{
186
-			if( $key === 'coupon.code.code' ) {
186
+			if ($key === 'coupon.code.code') {
187 187
 				return $pos;
188 188
 			}
189 189
 		}
190 190
 
191
-		throw new \Aimeos\Controller\Jobs\Exception( sprintf( 'No "coupon.code.code" column in CSV mapping found' ) );
191
+		throw new \Aimeos\Controller\Jobs\Exception(sprintf('No "coupon.code.code" column in CSV mapping found'));
192 192
 	}
193 193
 
194 194
 
@@ -198,7 +198,7 @@  discard block
 block discarded – undo
198 198
 	 * @param string $filepath Path to the container file
199 199
 	 * @return \Aimeos\MW\Container\Iface Container object
200 200
 	 */
201
-	protected function getContainer( $filepath )
201
+	protected function getContainer($filepath)
202 202
 	{
203 203
 		$config = $this->getContext()->getConfig();
204 204
 
@@ -222,7 +222,7 @@  discard block
 block discarded – undo
222 222
 		 * @see controller/jobs/coupon/import/csv/code/container/content
223 223
 		 * @see controller/jobs/coupon/import/csv/code/container/options
224 224
 		 */
225
-		$container = $config->get( 'controller/jobs/coupon/import/csv/code/container/type', 'File' );
225
+		$container = $config->get('controller/jobs/coupon/import/csv/code/container/type', 'File');
226 226
 
227 227
 		/** controller/jobs/coupon/import/csv/code/container/content
228 228
 		 * Name of the content type inside the container to read the data from
@@ -242,7 +242,7 @@  discard block
 block discarded – undo
242 242
 		 * @see controller/jobs/coupon/import/csv/code/container/type
243 243
 		 * @see controller/jobs/coupon/import/csv/code/container/options
244 244
 		 */
245
-		$content = $config->get( 'controller/jobs/coupon/import/csv/code/container/content', 'CSV' );
245
+		$content = $config->get('controller/jobs/coupon/import/csv/code/container/content', 'CSV');
246 246
 
247 247
 		/** controller/jobs/coupon/import/csv/code/container/options
248 248
 		 * List of file container options for the coupon import files
@@ -259,9 +259,9 @@  discard block
 block discarded – undo
259 259
 		 * @see controller/jobs/coupon/import/csv/code/container/content
260 260
 		 * @see controller/jobs/coupon/import/csv/code/container/type
261 261
 		 */
262
-		$options = $config->get( 'controller/jobs/coupon/import/csv/code/container/options', [] );
262
+		$options = $config->get('controller/jobs/coupon/import/csv/code/container/options', []);
263 263
 
264
-		return \Aimeos\MW\Container\Factory::getContainer( $filepath, $container, $content, $options );
264
+		return \Aimeos\MW\Container\Factory::getContainer($filepath, $container, $content, $options);
265 265
 	}
266 266
 
267 267
 
@@ -275,36 +275,36 @@  discard block
 block discarded – undo
275 275
 	 * @return integer Number of coupons that couldn't be imported
276 276
 	 * @throws \Aimeos\Controller\Jobs\Exception
277 277
 	 */
278
-	protected function import( array $items, array $data, $couponId,
279
-		\Aimeos\Controller\Common\Coupon\Import\Csv\Processor\Iface $processor )
278
+	protected function import(array $items, array $data, $couponId,
279
+		\Aimeos\Controller\Common\Coupon\Import\Csv\Processor\Iface $processor)
280 280
 	{
281 281
 		$errors = 0;
282 282
 		$context = $this->getContext();
283
-		$manager = \Aimeos\MShop\Factory::createManager( $context, 'coupon/code' );
283
+		$manager = \Aimeos\MShop\Factory::createManager($context, 'coupon/code');
284 284
 
285
-		foreach( $data as $code => $list )
285
+		foreach ($data as $code => $list)
286 286
 		{
287 287
 			$manager->begin();
288 288
 
289 289
 			try
290 290
 			{
291
-				if( isset( $items[$code] ) ) {
291
+				if (isset($items[$code])) {
292 292
 					$item = $items[$code];
293 293
 				} else {
294 294
 					$item = $manager->createItem();
295 295
 				}
296 296
 
297
-				$item->setParentId( $couponId );
298
-				$list = $processor->process( $item, $list );
297
+				$item->setParentId($couponId);
298
+				$list = $processor->process($item, $list);
299 299
 
300 300
 				$manager->commit();
301 301
 			}
302
-			catch( \Exception $e )
302
+			catch (\Exception $e)
303 303
 			{
304 304
 				$manager->rollback();
305 305
 
306
-				$msg = sprintf( 'Unable to import coupon with code "%1$s": %2$s', $code, $e->getMessage() );
307
-				$context->getLogger()->log( $msg );
306
+				$msg = sprintf('Unable to import coupon with code "%1$s": %2$s', $code, $e->getMessage());
307
+				$context->getLogger()->log($msg);
308 308
 
309 309
 				$errors++;
310 310
 			}
Please login to merge, or discard this patch.